mysql权限问题_mysql 1449 : The user specified as a definer ('root'@'%') does not exist 解决方法

来源:互联网 发布:java 高性能网络框架 编辑:程序博客网 时间:2024/04/28 07:41

今天在本地的时候不知怎么的,修改本地数据库内数据的时候忽然弹出个错误:


The user specified as a definer ('root'@'%') does not exist 

权限问题

解决办法:

授权给root所有sql权限

mysql> grant all privileges on *.* to root@"%" identified by ".";
Query OK, 0 rows affected (0.00 sec)

然后再刷新
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)


注:第一条sql中后面identified by是输入新密码替换以前的密码但是有的时候会报错:

Error : Your password does not satisfy the current policy requirements

意思是你的密码不符合安全标准,即不符合当前的mysql密码策略。

执行下列sql查看当前mysql策略


mysql>show variables like 'validate_password%';

mysql策略详解地址 :http://www.cnblogs.com/mylanguage/p/5642899.html


把密码设置成符合当前安全策略等级就行了,或者降低策略等级

修改后可以使用下面这个sql查看新增的权限  (user:'root'@'%';)

mysql>SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

查看权限详情网址 http://www.cnblogs.com/walter371/p/4113196.html





阅读全文
0 0