1.环境说明
系统:ubuntu 16.04
mysql版本:5.7.22
2.设置方法
登录mysql root用户
mysql -u root -p
输入root密码登录
执行以下语句:
mysql> select user,host from mysql.user;
+------------------+-----------+
| user | host |
+------------------+-----------+
| root | % |
| debian-sys-maint | localhost |
| mysql.session | localhost |
| mysql.sys | localhost |
| root | localhost |
+------------------+-----------+
5 rows in set (0.00 sec)
可以看到在user表中已创建的root用户。host字段表示登录的主机,其值可以用IP,也可用主机名
实现远程连接(授权法)
mysql> use mysql;
Database changed
mysql> grant all privileges on *.* to root@'%' identified by "password";
Query OK, 0 rows affected (0.00 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
这样机器就可以以用户名root密码root远程访问该机器上的MySQL
实现远程连接(改表法)
use mysql;
update user set host = '%' where user = 'root';
这样在远端就可以通过root用户访问MySQL
以上步骤可能在mysql低版本上可行,如果还不能连接,继续下面操作
退出mysql,执行以下命令修改配置文件
vim /etc/mysql/mysql.conf.d/mysqld.cnf
找到bind-address=127.0.0.1,这一行,将其注释掉,即可