Java MySql连接无法正常运行

时间:2019-06-16 22:49:54

标签: java mysql sql javadb

从SQL数据库安装mysql-connector-java-8.0.16.jar后,尽管尽我最大的努力来使我的代码正常工作,但我仍然遇到一个拒绝用户访问的错误。这是特殊的,因为在我的网站上可以使用相同的用户凭据,因此该用户具有访问数据库的正确权限。怎么了我使用了错误的导入吗?

有问题的进口

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

相关代码为:

package real;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class myConnection 
{
    public int returnOperation() 
    {
         try
            {
                String host = "jdbc:mysql://website.com/database";
                String username = "user";
                String password = "password";
                Connection con = DriverManager.getConnection(host, username, password);
            }
            catch(SQLException e)
            {
                System.out.println("There is an error with the SQL database: " + e.getMessage());
            }
        return 0;
    }
}

我一直收到的错误是:

There is an error with the SQL database: Access denied for user 'USER'@'IP ADDRESS' (using password: YES)

2 个答案:

答案 0 :(得分:1)

好消息看起来您网络中的一切都还可以。您的错误是专门的配置。

关于配置,我的第一个假设是您仅允许本地连接(来自本地主机)。

您的问题仅仅是身份验证。尝试在本地与该用户连接,如果成功,那么您确实需要告诉mysql允许从一个IP或任何IP到服务器与该用户连接。

GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

或者您可以在服务器内部尝试该应用程序,看看是否成功。

答案 1 :(得分:1)

如上所述。

 GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
 FLUSH PRIVILEGES;

并且由于您是初学者,因此可以转到phpmyadmin中的 sql标签