下面我将详细介绍阿里云ECS云服务器(linux系统)安装mysql后远程连接不了(踩坑)的完整攻略。
1. 确认MySQL是否允许远程连接
在阿里云ECS云服务器(linux系统)上安装MySQL之后,一般情况下默认是不允许远程连接的。因此,第一步需要确认MySQL是否允许远程连接。
1.1 修改MySQL配置文件
使用vim
编辑MySQL的配置文件/etc/mysql/mysql.conf.d/mysqld.cnf
:
sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf
修改以下两行,注释掉并将localhost
改为0.0.0.0
:
# bind-address = localhost
bind-address = 0.0.0.0
1.2 重启MySQL服务
修改配置完成后,需要重启MySQL服务才能使修改生效:
sudo service mysql restart
2. 修改MySQL用户允许远程连接
默认情况下,MySQL只允许本机登录用户进行连接。因此,需要修改MySQL用户的连接权限。
2.1 使用root用户登录MySQL
使用root用户登录MySQL:
sudo mysql -u root -p
2.2 修改用户连接权限
使用以下语句修改用户名为user
的连接权限,并设置密码为password
:
GRANT ALL PRIVILEGES ON *.* TO 'user'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
运行以上语句成功后,使用以下语句刷新MySQL的配置文件:
FLUSH PRIVILEGES;
示例1:使用命令行连接MySQL
现在可以使用user
用户名和password
密码进行远程连接MySQL了。可以使用以下命令连接MySQL:
mysql -h [服务器IP地址] -u user -p
其中[服务器IP地址]
为阿里云ECS云服务器的公网IP地址。
示例2:使用MySQL Workbench连接MySQL
MySQL Workbench是一款常用的MySQL数据库管理客户端工具。使用以下步骤连接MySQL:
- 打开MySQL Workbench,并点击
New Connection
创建新连接。 - 输入连接名称,并填写以下信息:
- Connection Method:Standard TCP/IP over SSH
- SSH Hostname: ECS服务器公共IP地址
- SSH Username: ECS服务器用户名
- SSH Password: ECS服务器登录密码
- MySQL Hostname: 127.0.0.1
- MySQL Port: 3306
- Username: MySQL用户名
- Password: MySQL密码
- 点击
Test Connection
测试连接是否成功。 - 点击
OK
保存连接信息。
现在,使用MySQL Workbench连接阿里云ECS云服务器上的MySQL数据库就可以愉快地工作啦!
注意:使用MySQL Workbench连接MySQL需要开启阿里云ECS云服务器的SSH服务,可以在ECS实例的安全组配置中开放SSH服务端口。