Я пытался подключиться к удаленному postgresql через код JAVA, но получаю эту ошибку
org.postgresql.util.PSQLException: в соединении отказано. Убедитесь, что имя хоста и порт указаны правильно, а постмастер принимает соединения TCP/IP. в
Но я могу получить доступ к удаленной базе данных postgres через терминал снаружи. Пожалуйста, помогите мне в приведенном ниже коде.
Я внес все необходимые изменения в файлы postgres conf и pg_hba.
1) postgresql.conf
==> change to localhost='*'
2) pg_hba.conf
==> add below lines at end of the line
host all all 0.0.0.0/0 md5
host all all ::/0 md5
import java.sql.DriverManager;
import java.sql.Connection;
import java.sql.SQLException;
public class JDBCExample {
public static void main(String[] argv) {
System.out.println("-------- PostgreSQL "
+ "JDBC Connection Testing ------------");
try {
Class.forName("org.postgresql.Driver");
} catch (ClassNotFoundException e) {
System.out.println("Where is your PostgreSQL JDBC Driver? "
+ "Include in your library path!");
e.printStackTrace();
return;
}
System.out.println("PostgreSQL JDBC Driver Registered!");
Connection connection = null;
try {
connection = DriverManager.getConnection(
"jdbc:postgresql://X.X.X.X:5432/mydb", "myuser",
"mypassword");
} catch (SQLException e) {
System.out.println("Connection Failed! Check output console");
e.printStackTrace();
return;
}
if (connection != null) {
System.out.println("You made it, take control your database now!");
} else {
System.out.println("Failed to make connection!");
}
}
}