文档首页> 互联网资讯> 云服务器MySQL部署与远程安全访问

云服务器MySQL部署与远程安全访问

发布时间:2026-07-27 04:23       

云服务器安装 MySQL

在云服务器上安装 MySQL,是搭建网站、后台系统、数据分析平台以及各类业务应用的常见需求。MySQL 作为成熟稳定的关系型数据库,具备性能优秀、生态完善、部署简单等特点,适合部署在阿里云、腾讯云、华为云、AWS、Azure 等云服务器环境中。下面以 Linux 云服务器为例,介绍 MySQL 的安装、初始化、远程访问配置、安全加固和基础维护方法。

一、安装前准备

在安装 MySQL 之前,需要确认云服务器已经满足以下条件:

  1. 云服务器系统为 Linux,例如 Ubuntu、Debian、CentOS、Rocky Linux 等。
  2. 已经通过 SSH 登录服务器。
  3. 云服务器安全组已开放必要端口,例如 SSH 端口和 MySQL 默认端口 3306
  4. 服务器具备足够的磁盘空间和内存资源。
  5. 建议使用普通用户配合 sudo 权限执行命令。

可以通过以下命令查看系统信息:

cat /etc/os-release

查看 MySQL 是否已经安装:

mysql --version

二、Ubuntu / Debian 系统安装 MySQL

如果云服务器使用的是 Ubuntu 或 Debian 系统,可以直接通过系统包管理器安装 MySQL。

更新软件源:

sudo apt update

安装 MySQL 服务端:

sudo apt install mysql-server -y

安装完成后,MySQL 服务通常会自动启动。可以执行以下命令查看服务状态:

systemctl status mysql

如果服务没有启动,可以使用:

sudo systemctl start mysql
sudo systemctl enable mysql

三、CentOS / Rocky Linux 系统安装 MySQL

如果使用的是 CentOS、Rocky Linux 或类似系统,可以使用系统仓库安装 MariaDB,也可以安装官方 MySQL。这里以安装 MySQL 为例。

首先安装 MySQL 官方仓库:

sudo yum install -y mysql-community-release

如果系统中没有该仓库包,也可以从 MySQL 官方下载对应版本的 repository 包进行安装。

安装 MySQL 服务:

sudo yum install -y mysql-server

启动 MySQL:

sudo systemctl start mysqld
sudo systemctl enable mysqld

查看服务状态:

systemctl status mysqld

四、MySQL 安全初始化

MySQL 安装完成后,建议立即执行安全初始化脚本:

sudo mysql_secure_installation

执行过程中,系统会提示你设置安全策略,例如:

  • 是否启用密码强度检查;
  • 是否删除匿名用户;
  • 是否禁止 root 远程登录;
  • 是否删除测试数据库;
  • 是否重新加载权限表。

一般情况下,建议全部选择安全选项。这样可以有效减少数据库被攻击的风险。

五、登录 MySQL

安装完成后,可以使用以下命令登录 MySQL:

sudo mysql

进入 MySQL 命令行后,可以看到类似提示符:

mysql>

如果想使用密码登录,需要先为 root 用户设置密码。可以执行:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的强密码';
FLUSH PRIVILEGES;

之后可以使用:

mysql -u root -p

六、创建数据库和用户

为了业务安全,不建议直接使用 root 用户连接数据库。更推荐为每个应用单独创建数据库和用户。

例如,创建一个名为 myapp 的数据库:

CREATE DATABASE myapp CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

创建数据库用户:

CREATE USER 'myapp_user'@'localhost' IDENTIFIED BY '你的强密码';

授权用户访问指定数据库:

GRANT ALL PRIVILEGES ON myapp.* TO 'myapp_user'@'localhost';
FLUSH PRIVILEGES;

如果应用需要远程连接 MySQL,可以授权指定 IP 访问:

CREATE USER 'myapp_user'@'%' IDENTIFIED BY '你的强密码';
GRANT ALL PRIVILEGES ON myapp.* TO 'myapp_user'@'%';
FLUSH PRIVILEGES;

其中 % 表示允许来自任意地址的连接,生产环境中不建议随意开放,最好限制为应用服务器的固定 IP。

七、开放云服务器安全组端口

即使 MySQL 已经安装成功,如果云服务器安全组没有开放 3306 端口,外部仍然无法访问。

需要在云服务商控制台中配置安全组规则:

  • 协议:TCP
  • 端口:3306
  • 来源:建议填写应用服务器 IP 或固定公网 IP
  • 不建议对所有 IP 开放

如果服务器内部也启用了防火墙,还需要放行端口。

Ubuntu 使用 UFW:

sudo ufw allow from 应用服务器IP to any port 3306 proto tcp

CentOS 使用 firewalld:

sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload

八、配置 MySQL 监听地址

默认情况下,MySQL 可能只监听本地地址 127.0.0.1。如果需要远程连接,需要修改配置文件。

Ubuntu 系统配置文件通常在:

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

找到以下配置:

bind-address = 127.0.0.1

可以修改为:

bind-address = 0.0.0.0

或者修改为云服务器的内网 IP,安全性更高。

CentOS 系统配置文件通常在:

sudo vi /etc/my.cnf

修改后重启 MySQL:

sudo systemctl restart mysql

或:

sudo systemctl restart mysqld

九、测试远程连接

在应用服务器或本地电脑中测试连接:

mysql -h 云服务器公网IP -P 3306 -u myapp_user -p

如果连接成功,说明 MySQL 安装、用户授权、安全组和防火墙配置均正常。

如果连接失败,可以依次检查:

  1. MySQL 服务是否运行;
  2. 用户是否允许远程登录;
  3. 云服务器安全组是否开放 3306
  4. 服务器防火墙是否拦截;
  5. MySQL 是否监听正确地址;
  6. 密码是否正确。

十、MySQL 基础维护建议

为了保证数据库稳定运行,建议做好以下维护工作:

1. 定期备份数据库

可以使用 mysqldump 备份数据库:

mysqldump -u root -p myapp > myapp_backup.sql

恢复数据库:

mysql -u root -p myapp < myapp_backup.sql

2. 使用强密码

数据库密码应包含大小写字母、数字和特殊字符,避免使用简单密码。

3. 限制远程访问

生产环境不建议将 MySQL 端口对所有公网 IP 开放,最好只允许应用服务器访问。

4. 监控资源占用

关注 CPU、内存、磁盘 I/O、连接数和慢查询日志,及时发现性能问题。

5. 开启慢查询日志

可以在配置文件中开启慢查询日志,用于分析执行较慢的 SQL 语句。

6. 合理分配内存

MySQL 的内存参数需要根据服务器配置调整,避免设置过高导致系统内存不足。

总结

在云服务器上安装 MySQL,主要流程包括:安装 MySQL 服务、启动服务、执行安全初始化、创建数据库和用户、配置远程访问、开放安全组端口以及做好日常维护。相比直接在公网开放数据库,更推荐采用最小权限原则,只允许指定 IP 访问,并配合强密码、定期备份和日志监控,提升数据库安全性与稳定性。按照以上步骤操作,就可以完成云服务器 MySQL 的基础部署。