版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xiaobao5214/article/details/83655548
登陆mysql数据库
[root@hadoop1 data]# mysql -uroot -p123456
查看user表
mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| hadoop1 | root | |
| 127.0.0.1 | root | |
| ::1 | root | |
| localhost | | |
| hadoop1 | | |
+-----------+------+-------------------------------------------+
6 rows in set (0.00 sec)
实现远程连接(授权法)
mysql> grant all privileges on *.* to root@'%' identified by "123456";
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
实现远程连接(改表法) 中途会报错ERROR 1062,不用理会
mysql> use mysql
Database changed
mysql> update user set host = '%' where user = 'root';
ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
权限修改完成后再次查看user表 ,root用户的 host 由localhost变成%,此时就可以在远端就可以通过root用户访问Mysql.
mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host | user | password |
+-----------+------+-------------------------------------------+
| % | root | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 |
| hadoop1 | root | |
| 127.0.0.1 | root | |
| ::1 | root | |
| localhost | | |
| hadoop1 | | |
+-----------+------+-------------------------------------------+
6 rows in set (0.00 sec)
注:需要在cent os主机上关闭防火墙或者将 mysql的端口3306修改为开放端口 ,参考我的其他文章