簡體   English   中英

如何將Spring Boot Web App連接到Postgresql數據庫

[英]How to connect spring boot web app to postgresql database

我正在一個Spring引導項目上,試圖將服務器連接到PostgreSQL數據庫。 當我使用IDE(在Windows操作系統上)運行該程序時,它可以工作,但是當我創建一個jar文件並在托管我的數據庫的ubuntu服務器虛擬機上運行它時,它不起作用。

org.postgresql.util.PSQLException: Connection to localhost:5432 refused. Check that the hostname and port are correct and that the postmaster is accepting TCP/IP connections.

我已經檢查了防火牆規則,但仍然沒有成功。

Chain INPUT (policy ACCEPT)
target     prot opt source               destination

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination

我做了一些研究,聽說了要修改的postgresql的配置文件,但它仍然無法正常工作,我也不知道問題出在哪里。

在我對postgresql.conf修改的行下面:

listen_addresses = '*'          # what IP address(es) to listen on;
ssl = on

對於pg_hba.conf:

local   all             postgres                                peer
local   all             kapitax                                trust
# TYPE  DATABASE        USER            ADDRESS                 METHOD
#host   all             kapitax        *                       password
#host   all             all             0.0.0.0/0               md5
# "local" is for Unix domain socket connections only
local   all             all             *                       trust
# IPv4 local connections:
host    all             all             *                       password
# IPv6 local connections:
host    all             all             ::1/128                 password
# Allow replication connections from localhost, by a user with the
# replication privilege.
local   replication     all                                     peer
host    replication     all             *                       md5
host    replication     all             ::1/128                 md5

問題可能來自applcation.properties代碼?

spring.datasource.url= jdbc:postgresql://localhost:5432/kapitax
spring.datasource.username=kapitax
spring.datasource.password=kapitax
spring.jpa.hibernate.ddl-auto=create-drop
server.port=8090

#host   all             all             0.0.0.0/0               md5

應該啟用如下:

host   all             all             0.0.0.0/0               md5

使用0.0.0.0/0您將偵聽所有IPv4地址。 更改此配置后,請確保重新加載服務器設置或重新啟動數據庫服務器。 可以在以下答案中找到更詳細的說明: 如何配置PostgreSQL以接受所有傳入的連接

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM