myql root用户远程访问

虚拟机搭建的lnmp开发环境,mysql在虚拟机正常访问,想在物理机通过数据库管理工具Navicat远程登录,方便建表查询等操作。经网上一查,有答案了。

【以下是转载】http://www.cnblogs.com/hyzhou/archive/2011/12/06/2278236.html

需要手动增加可以远程访问数据库的用户。

方法一、本地登入mysql,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,将"localhost"改为"%"

#mysql -u root -proot
mysql>use mysql;
mysql>update user set host = '%' where user = 'root';
mysql>select host, user from user;
方法二、直接授权(推荐)

  从任何主机上使用root用户,密码:youpassword(你的root密码)连接到mysql服务器:

# mysql -u root -proot 
mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'youpassword' WITH GRANT OPTION;

操作完后切记执行以下命令刷新权限 

FLUSH PRIVILEGES;

可是执行完这些步骤之后,在物理机用Navicat连接还是一直连接不上!

后来才发现Navicat中,除了设置mysql的用户名和密码还要设置远程服务器的用户名和密码。也就是说要设置两个用户名和密码。

 

 

posted @ 2017-07-02 09:33  胡国洪  阅读(227)  评论(0编辑  收藏  举报