如何解决psql 授权有效而 jdbc 不是
我正在从 k8s 转发我的 5432
端口,如果我通过 psql
连接,一切正常:
psql "postgres://myuser:mypass@localhost:5432/mydb"
甚至使用 .pgpass
psql -U myuser -h localhost -p 5432 -d mydb
但是当我尝试通过 JDBC 进行连接时:
import java.sql.Connection;
import java.sql.DriverManager;
public class V9
{
public static final String driver = "org.postgresql.Driver";
public static final String url = "jdbc:postgresql://localhost:5432/mydb";
public static final String username = "myuser";
public static final String password = "mypass";
public static void main(String [] args)
{
try
{
Class.forName(driver);
Connection conn = DriverManager.getConnection(url,username,password);
System.out.println(conn.getMetaData().getDatabaseProductName());
}
catch (Exception e)
{
e.printstacktrace();
}
}
}
失败了:
java -cp "./postgresql-42.2.18.jar" foo.java
org.postgresql.util.PsqlException: FATAL: password authentication Failed for user "myuser"
...
结束我什至没有收到
Handling connection for 5432
在kubectl port-forward
。
当它是在 docker 中运行的数据库时(从那里进行端口转发),一切正常。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。