阿里云ECS云服务器(linux系统)安装mysql后远程连接不了(踩坑)

  • Post category:Linux

下面我将详细介绍阿里云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:

  1. 打开MySQL Workbench,并点击New Connection创建新连接。
  2. 输入连接名称,并填写以下信息:
  3. Connection Method:Standard TCP/IP over SSH
  4. SSH Hostname: ECS服务器公共IP地址
  5. SSH Username: ECS服务器用户名
  6. SSH Password: ECS服务器登录密码
  7. MySQL Hostname: 127.0.0.1
  8. MySQL Port: 3306
  9. Username: MySQL用户名
  10. Password: MySQL密码
  11. 点击Test Connection测试连接是否成功。
  12. 点击OK保存连接信息。

现在,使用MySQL Workbench连接阿里云ECS云服务器上的MySQL数据库就可以愉快地工作啦!

注意:使用MySQL Workbench连接MySQL需要开启阿里云ECS云服务器的SSH服务,可以在ECS实例的安全组配置中开放SSH服务端口。