拒绝用户的Java JDBC访问
我正在尝试从java应用程序连接MySQL,它一直在说: java.sql.SQLException:用户“vincent”@“x.x.x.x”的访问被拒绝 (使用密码:是) 我已经在phpmyadmin中进行了检查,vincent可以从任何主机连接,并且我还有一个python脚本,它可以使用相同的用户名/密码进行连接,没有任何问题 有什么问题 多谢各位拒绝用户的Java JDBC访问,java,mysql,jdbc,Java,Mysql,Jdbc,我正在尝试从java应用程序连接MySQL,它一直在说: java.sql.SQLException:用户“vincent”@“x.x.x.x”的访问被拒绝 (使用密码:是) 我已经在phpmyadmin中进行了检查,vincent可以从任何主机连接,并且我还有一个python脚本,它可以使用相同的用户名/密码进行连接,没有任何问题 有什么问题 多谢各位 注意。在获取连接对象时,您必须指定用户ID和密码: Connection cn=DriverManager.getConnection("pr
注意。在获取连接对象时,您必须指定
用户ID
和密码:
Connection cn=DriverManager.getConnection("protocol","userid","password");
尝试从mysql中的任何计算机向用户授予所有权限:
grant all on db_name.* to ‘vincent’@'%';
其中db_name是您的数据库名称…以下是我授予权限的方式:
create database foobar;
create user foobar identified by 'foobar';
grant all on foobar.* to 'foobar'@'%' identified by 'foobar';
grant all on foobar.* to 'foobar'@'localhost' identified by 'foobar';
您还需要用户的主机。使用此选项
GRANT ALL PRIVILEGES ON db_base.* TO db_user @'%' IDENTIFIED BY 'db_passwd';
您必须在db上授予用户访问权限。是的,如果您正在使用用户定义的存储过程和函数,那么也可以使用
GRANT SELECT ON mysql.proc TO 'db_user'@'%';
您是否可以使用mysql
命令行工具从您试图运行Java应用程序的主机连接到x.x.x.x?