连接到远程mysql数据库的问题

时间:2010-06-08 04:40:08

标签: java mysql

我正在尝试连接到共享服务器上的mysql数据库。我正在使用java应用程序进行连接。连接到localhost db时不会发生问题。

URL = "jdbc:mysql://SHARED HOST IP:3306/DBNAME"; 
USER = "dbUSER"; 
PASS = "dbPASS"; 

Connection conn = DriverManager.getConnection(URL, USER, PASS); 

java.sql.SQLException: Access denied for user 'DBUSER'@'mycomputersIP???' (using password: YES)

奇怪的是,它拒绝使用dbuser @ mycomputersip而不是dbuser @ sharedhostIP

我的无线路由器上是否有设置搞砸了?

4 个答案:

答案 0 :(得分:2)

您的数据库未配置为进行远程访问。基本上它说你的用户位于你的ip没有访问数据库的权限,而不是你位于web服务器的用户。

如果您使用的是共享主机软件包,则需要在管理区域中启用此功能,否则主机可能不支持此功能。某些主机还要求外部可访问的数据库可能不在Web服务器上,因此您的连接字符串也可能会发生变化。

答案 1 :(得分:0)

路由器上没有搞砸任何设置。如果您尝试从mycomputersIP连接(即打开JDBC连接的程序在您的计算机上),则数据库需要向'DBUSER'@'mycomputersIP'授予权限。 (事实上​​,这是授权字符串的那一部分。)

答案 2 :(得分:0)

正如VeeArr所说''DBUSER'@'mycomputersIP ???'是标准的。由于某种原因,您的主机公开您的数据库,但不允许您连接。如果您管理整个数据库或控制面板中有一个选项,phpMyAdmin中有一种方法可以在Privileges下执行此操作。如果没有,那么您需要联系您的主人以获得指导

答案 3 :(得分:-1)

我之前遇到的同样问题,非常简单,您的ISP拒绝访问数据库,

提出授予访问权限的请求,它会起作用。