我在 Ubuntu 16.04 上的 Spring Java 應(yīng)用程序無法從服務(wù)器連接到 postgresql 數(shù)據(jù)庫。但是,數(shù)據(jù)庫肯定存在(見圖1),所以我可以從PGAdmin或其他查詢工具查詢數(shù)據(jù)庫。此外,Spring Java 應(yīng)用程序可以在本地環(huán)境中連接到數(shù)據(jù)庫。有誰知道為什么會出現(xiàn)這個問題以及如何解決?版本信息。- Postgresql:10.4 - Java:9 - Postgresql JDBC 驅(qū)動程序:42.1.4錯誤日志如下:[ERROR][21:14:34][DashboardController.exp():460] Gloal exception Handlerorg.cboard.exception.CBoardException: ERROR:FATAL: database "foodmart2" does not exist at org.cboard.services.DataProviderService.queryAggData(DataProviderService.java:70)at org.cboard.services.DataProviderService$$FastClassBySpringCGLIB$$6fb5206b.invoke(<generated>)at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:721)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)at org.springframework.aop.aspectj.MethodInvocationProceedingJoinPoint.proceed(MethodInvocationProceedingJoinPoint.java:85)at org.cboard.services.role.DataProviderRoleService.query(DataProviderRoleService.java:45)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:498)at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethodWithGivenArgs(AbstractAspectJAdvice.java:629)at org.springframework.aop.aspectj.AbstractAspectJAdvice.invokeAdviceMethod(AbstractAspectJAdvice.java:618)at org.springframework.aop.aspectj.AspectJAroundAdvice.invoke(AspectJAroundAdvice.java:70)at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
2 回答

暮色呼如
TA貢獻(xiàn)1853條經(jīng)驗(yàn) 獲得超9個贊
在這兩種情況下,您都必須連接到不同的 PostgreSQL 集群。
主機(jī)或端口必須不同。
錯誤信息表明用戶和密碼都沒有問題,但該名稱的數(shù)據(jù)庫不存在。

慕蓋茨4494581
TA貢獻(xiàn)1850條經(jīng)驗(yàn) 獲得超11個贊
對不起。這個問題是由于我對應(yīng)用程序結(jié)構(gòu)的了解不夠。
還有一個我不知道的數(shù)據(jù)庫連接點(diǎn)。
最初,應(yīng)用程序是通過 Spring MyBatis 連接到數(shù)據(jù)庫的。但是,還有一個使用JDBC的內(nèi)部連接點(diǎn),我并沒有完全認(rèn)出它。
JDBC url 被定義為 localhost;它應(yīng)該是我的服務(wù)器地址。我更改了JDBC url,問題解決了。
添加回答
舉報
0/150
提交
取消