使用Naicat Premium远程连接的mysql上面创建了一个新数据库和新的用户后,给该用户添加这个新数据库权限时出现:access denied for user ‘root’@’%’ to database xxxx的提示。
错误的原因是root用户在远程连接的MYSQL上面,没有这个新数据库的授权。在本地使用mysql应该不存在这个问题。
解决方法,执行授权:
grant all PRIVILEGES on xxxx.* to root@’%’ identified by ‘password’ with grant option;
xxxx为创建的数据库,password为root的密码。请按实际要求进行更改。
如果你想允许用户root从ip为192.168.1.3的主机连接到mysql服务器,并使用root作为密码
运行命令:mysql>GRANT ALL PRIVILEGES ON . TO ‘root’@‘192.168.1.3’ IDENTIFIED BY ‘root’ WITH GRANT OPTION;
上面的命令创建一个可以从任意机器以root登录的超级账号,口令是root。
这样,就可以使用方便的图形工具(navicat for mysql)进行登录和操作,包括修改root的口令。