mysql连接时权限问题 用户问题

启动工程时会连接mysql数据库,此时报错:

ERROR 1044 (42000): Access denied for user 'pay'@'localhost' to database 'paydb‘。

检查有无该用户,若没有则创建。

命令:CREATE USER 'username'@'host' IDENTIFIED BY 'password'; 

例子: CREATE USER 'dog'@'localhost' IDENTIFIED BY '123456'; 
CREATE USER 'pig'@'192.168.1.101_' IDENDIFIED BY '123456';

创建后重新启动工程,还是报这个错误,原因是没有给创建的用户赋权限。

查询用户权限:

select * from mysql.user;

赋权限:

命令:GRANT privileges ON databasename.tablename TO 'username'@'host' 

例子: GRANT SELECT, INSERT ON test.user TO 'pig'@'%'; 
GRANT ALL ON *.* TO 'pig'@'%'; 

UPDATE mysql.user SET Grant_priv='Y', Super_priv='Y' WHERE User='pay';
FLUSH PRIVILEGES;

再次启动又报错误:SELECT command denied to user 'root'@'localhost' for table "xxx"

没有赋值select的权限。

解决方法:将所需权限都赋给。

GRANT SELECT,INSERT,UPDATE,delete,CREATE,drop on paydb to pay@'localhost' IDENTIFIED by '123';

原文地址:https://www.cnblogs.com/Anidot/p/6765776.html