在按照前面文章中方法搭建Mysql数据库之后,发现其他机器还是不能访问,
参考以下文章对权限进行修改之后,发现本地机器中root不能访问了。
http://www.cnblogs.com/ycsfwhh/archive/2012/08/07/2626597.html
后来使用 select host, user, grant_priv from user;
发现grant_priv一列有问题,只有有grant_priv的用户才能对其他用户赋予权限。
修改成以下这样,就好了。
+-------------------------------------------------+------+------------+| host | user | grant_priv |+-------------------------------------------------+------+------------+| % | root | Y || gzns-ecom-baiduhui-201605-m42n02.gzns.baidu.com | root | Y || 127.0.0.1 | root | Y || ::1 | root | Y || localhost | | N || gzns-ecom-baiduhui-201605-m42n02.gzns.baidu.com | | N || localhost | root | N |+-------------------------------------------------+------+------------+
结果发现本机还是连不上:
$ mysql -P8306 -uroot -p123456ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
再查表看到password这一栏:
mysql> select host, user, Password, grant_priv from user;+-------------------------------------------------+------+-------------------------------------------+------------+| host | user | Password | grant_priv |+-------------------------------------------------+------+-------------------------------------------+------------+| % | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | Y || localhost | root | | Y || 127.0.0.1 | root | | Y || ::1 | root | | Y || localhost | | | N || gzns-ecom-baiduhui-201605-m42n02.gzns.baidu.com | | | N || 127.0.0.1 | | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 | N |+-------------------------------------------------+------+-------------------------------------------+------------+7 rows in set (0.00 sec)
发现localhost和root这一栏,没有密码,所以不用密码才能登录:
$ mysql -P8306 -uroot Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 294Server version: 5.5.30-log Source distributionCopyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql>