本地远程连接云服务器的Mysql

1、先设置云服务器上的mysql允许远程访问

编辑文件 /etc/mysql/mysql.conf.d/mysqld.cnf

1
sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf

注释掉bind-address = 127.0.0.1:修改为: bind-address=0.0.0.0

2、再在你的云服务器中连接:

1
mysql -u root -p 

进入后选择你想要连接的database

1
2
3
4
5
6
7
8
9
10
11
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)

3、然后使用“use mysql”命令,选择要使用的数据库(我这里用的是其中的mysql),修改远程连接的基本信息,保存在mysql数据库中,因此使用mysql数据库。

对新用户(如:本地电脑windows,非云服务器本地用户)设置访问权限

1
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

其中的’root’是登录用户名(建议不要改), ‘123456’ 是密码 (你可以自己改)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
mysql> use mysql
Database changed

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> select host,user from user;
+-----------+------------------+
| host | user |
+-----------+------------------+
| % | root |
| localhost | debian-sys-maint |
| localhost | mysql.session |
| localhost | mysql.sys |
| localhost | root |
+-----------+------------------+
5 rows in set (0.00 sec)

重启mysql:

1
sudo /etc/init.d/mysql stop  
1
sudo /etc/init.d/mysql start

4、如果在windows上还是不能连接云服务器,检查一下的云服务器的安全组,看是否开放了端口3306