MySQL开启远程连接权限

深度链接 / 2023-12-06 21:47:55 / 181

在开发环境时我们希望数据库能够远程连接,进行数据远程管理。

1、登录数据库

[root@wrx ~]# mysql -uroot -p

查看user表

mysql> use mysql;
Database changed
mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------+------+-------------------------------------------+
2 rows in set (0.00 sec)

mysql>

可以看到在user表中已经创建的用户,host字段表示登录的主机,其值可以为IP也可以为主机名。

如果想使用本地IP登录,则只需要将host修改本地IP即可。


2、MySQL实现远程连接(授权法)

如果将表中host的值设置为%,就可以在任何客户端使用root账号密码远程连接到MySQL。

mysql> grant all privileges on *.* to root@'%' indetified by '123456';
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> select host,user,password from user;
+-----------+------+-------------------------------------------+
| host      | user | password                                  |
+-----------+------+-------------------------------------------+
| localhost | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| %         | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
+-----------+------+-------------------------------------------+
3 rows in set (0.00 sec)

3、MySQL实现远程连接(修改user表)

mysql> use mysql;
Database changed
mysql> update user set host = '%' where user = 'root';