问题背景:
当远程用root用户登陆mysql时,我想为新创建的test用户赋予权限,却一直报错,错误代码1044。刚开始以为命令敲错了,但反复确认,命令没有敲错。查看root用户的权限,才恍然大悟,原来mysql默认root远程登陆没有开启赋予用户权限的权限。
解决方法:
第一步查看root用户的赋予权限
SELECT user,grant_priv FROM mysql.user;
注意:观察 root 对应的 grant_priv 为 N,说明root用户没有开启赋予权限
第二步修改用户权限
UPDATE mysql.user SET grant_priv='Y' WHERE user='root';
第三步刷新权限
FLUSH PRIVILEGES;
第四步再次查看root用户的赋予权限
SELECT user,grant_priv FROM mysql.user;