首先在本地使用root登陆数据库
mysql -uroot
登陆后使用以下命令查看当前的用户情况:
use mysql;
select host, user from user;
以下是显示样例:
mysql> use mysql;
mysql> select host,user from user;
+—————+——————+
| host | user |
+—————+——————+
| ubuntuserv | root |
| localhost | debian-sys-maint |
| localhost | root |
+—————+——————+
3 rows in set (0.00 sec)
说明:ubuntuserv是Mysql服务器的主机名,此时只需执行以下语句将ubuntuserv修改成%即可:
update user set host=’%’ where user=’root’ and host=’ubuntuserv’;
flush privileges;
使改后,root用户就可以同时远程和本地登陆了。
还可以用以下语句,达到相同的效果:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'USERNAME'@'%' IDENTIFIED BY 'PASSWORD' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
注意,IDENTIFIED BY 'PASSWORD'部分不可缺少,否则会达不到效果。