问题描述:
用root用户给其他用户授权报错1044 access denied for user root
原因分析:
默认的root 在非本地权限中的grant_priv(赋权权限)是关闭的。
用root用户在本地的机器上(安装mysql的那台机器)是能赋权的。其他IP赋权是默认不允许的。可能为了安全性考虑
那我们使用工具远程(如navicat)创建用户就会出现1044 代码。通过重新更新权限就能解决这个问题。
解决方案:
- 使用
with grant option
参数
grant all on dbname.* to 'ip'@'%' identified by 'pwd' with grant option;
执行完后需重启数据库
- 直接
mysql -uroot -p
进入MySQL执行授权不就完了