Java连接到MySQL数据库错误

时间:2014-08-08 03:19:20

标签: java mysql database

我在连接数据库时遇到了一些麻烦。我连接到我网站上的同一个数据库并且它可以工作,所以我知道它可能与我的Java代码中的数据库路径有关。

Connection con = DriverManager.getConnection("jdbc:mysql://ultraboodog.com:3306/ultraboo_lr", "ultraboo_root", "password");

我不知道为什么它不起作用,我收到了这个错误:

java.sql.SQLException: Access denied for user 'ultraboo_root'@'S010650465d6c5d19.ss.shawcable.net' (using password: YES)

非常感谢任何帮助:)

编辑: 我也使用mysql-connector-java插件连接到数据库,它由Oracle制作。

2 个答案:

答案 0 :(得分:0)

MySQL访问权限由用户名,源地址和密码决定。大多数托管服务限制允许用户连接的位置,但允许您在其面板中添加位置(如cPanel)。

如果服务器完全由您控制并且您可以直接访问MySQL,则GRANT documentation for MySQL会显示如何执行此操作,例如:

CREATE USER 'jeffrey'@'localhost' IDENTIFIED BY 'mypass';

“localhost”部分可以是主机名,IP地址或通配符,例如%.example.com或192.168.1。%。在您从有线电视提供商处连接的情况下,如果您的IP地址相当稳定,最安全的方法是添加您的确切IP地址,当它发生变化时(希望很少),您可以更新MySQL权限以匹配。 / p>

允许SQL访问Internet的安全隐患是您不应轻易考虑的事情。

答案 1 :(得分:0)

java.sql.SQLException: Access denied for user 'ultraboo_root'@'S010650465d6c5d19.ss.shawcable.net' (using password: YES)

正如您所提到的,问题在于与数据库本身建立连接。声明

尝试这样的事情:

conn = DriverManager.getConnection("jdbc:mysql://localhost/?user=root&password=rootpassword"); 
s = conn.createStatement();
int result = s.executeUpdate("CREATE DATABASE databasename");