Java MySql连接无法正常运行
在从SQL数据库安装mysql-connector-java-8.0.16.jar之后,尽管我尽了最大努力让代码正常工作,但我还是遇到了一个错误:拒绝用户访问。这很奇怪,因为相同的用户凭据在我的站点上工作,因此有问题的用户具有访问数据库的正确权限。可能有什么问题。我是否使用了错误的导入 有问题的进口:Java MySql连接无法正常运行,java,mysql,sql,javadb,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
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;
}
}
问题代码是:
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)
好消息是,您的网络中的一切都正常。您的错误特别是配置错误 关于配置,我的第一个假设是您只允许本地连接(来自本地主机) 您的问题只是身份验证。尝试在本地连接该用户,如果成功,那么您确实需要告诉mysql允许该用户从IP或任何IP连接到服务器
GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
或者,您可以在服务器内尝试应用程序,看看是否成功。好消息是,您的网络中的一切都正常。您的错误特别是配置错误 关于配置,我的第一个假设是您只允许本地连接(来自本地主机) 您的问题只是身份验证。尝试在本地连接该用户,如果成功,那么您确实需要告诉mysql允许该用户从IP或任何IP连接到服务器
GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
或者您可以在服务器内尝试应用程序,看看是否成功。如上所述
GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
由于您是初学者,您可以访问phpmyadmin中的sql选项卡,如上所述
GRANT ALL PRIVILEGES ON database.* TO 'user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
由于您是初学者,您可以通过进入phpmyadmin中的sql选项卡在phpmyadmin中我将如何实现这一点我将在何处输入抱歉,我是MySql新手。谢谢如果您有phpMyadmin,您应该能够看到localhost服务器,然后是它下面的所有表。在右边的窗格中,您应该会看到一个标签,上面写着“SQL”,您应该可以在那里发布我之前与您共享的内容。别忘了更改命令以满足您的需要。在PhpMyAdmin中我该如何做?在何处键入?抱歉,我是MySql新手。谢谢如果您有phpMyadmin,您应该能够看到localhost服务器,然后是它下面的所有表。在右边的窗格中,您应该会看到一个标签,上面写着“SQL”,您应该可以在那里发布我之前与您共享的内容。不要忘记更改命令以满足您的需要。MySQL使用三条信息对数据库用户进行身份验证:用户名、密码和源IP。您有用户名和密码,但该用户可能无权从您连接的IP进行连接。使用
@“%
为您的用户授予所有特权应允许该用户从任何IP连接。MySQL使用三条信息对数据库用户进行身份验证:用户名、密码和源IP。您有用户名和密码,但该用户可能无权从您连接的IP进行连接。使用@%
为您的用户授予所有特权应允许该用户从任何IP连接。