前几天装了mysql数据库,用图形界面工具Navicat 8 for MySql登录时发现,用主机名是localhost的时候可以连接,到那时远程连接的时候会被拒绝,琢磨了半天才把问题解决,现在把我解决的步骤列举在下面,希望能够帮助到遇到同一个问题的人(我的系统是windows):
1.net stop mysql 停用服务
2.修改${mysql_home}/MySQL Server 5.1目录下的my.ini文件
[mysqld]下面添加这句:
skip_grant_tables
3.把你的${mysql_home}/bin目录加入path路径里边
4.net start mysql 启动mysql服务
5:开始授予相应的权限:进入cmd中mysql -uroot -p (输入你设置的密码);进入mysql
如果你想允许所有的用户从从所有的主机连接到mysql服务器,并使用123456作为密码你可以通过这样的命令实现
1
|
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root' @ '%' IDENTIFIED BY '123456' WITH GRANT OPTION ;
|
使用下面的命令实现
1
2
|
mysql> GRANT ALL PRIVILEGES ON *.* TO 'jack' @’192.168.16.11’ IDENTIFIED BY '654321' WITH GRANT OPTION ;
mysql>FLUSH RIVILEGES
|
这样就可以远程连接了