云服务器部署MySQL需三步:安装、安全配置、远程访问设置;Ubuntu用apt安装,CentOS用dnf或官方Yum;运行mysql_secure_installation加固;改bind-address为0.0.0.0并创建远程用户;开放安全组3306端口,调优字符集与内存参数。

在云服务器上部署 MySQL,核心是安装、安全配置和远程访问设置三步。不同系统操作略有差异,但逻辑一致。
选择系统并安装 MySQL
主流云服务器(如阿里云、腾讯云)推荐使用 Ubuntu 或 CentOS。以 Ubuntu 22.04 为例:
- 更新系统:sudo apt update && sudo apt upgrade -y
- 安装 MySQL 服务:sudo apt install mysql-server -y
- 启动并设为开机自启:sudo systemctl start mysql && sudo systemctl enable mysql
CentOS 8+ 可用 dnf 安装,或直接下载 MySQL 官方 Yum 仓库配置后安装 8.0+ 版本,兼容性和安全性更好。
运行安全初始化脚本
MySQL 安装后默认不设 root 密码,也不禁用匿名用户,必须执行安全加固:
AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。它不是新的编程语言,而是一种使用现有标准的新方法,最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容,不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。《php中级教程之ajax技术》带你快速
- 运行:sudo mysql_secure_installation
- 按提示设置 root 密码强度、删除匿名用户、禁止 root 远程登录(先保持本地)、移除 test 数据库、重载权限表
- 注意:若使用云平台的“密码登录”方式,建议后续创建独立用户而非直接开放 root 远程访问
配置远程访问(关键步骤)
云服务器默认绑定 127.0.0.1,需修改绑定地址并开放端口:
- 编辑配置文件:sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf(Ubuntu)或 /etc/my.cnf(CentOS)
- 找到 bind-address = 127.0.0.1,改为 bind-address = 0.0.0.0(或指定云服务器内网 IP)
- 重启服务:sudo systemctl restart mysql
- 登录 MySQL,创建远程用户(例如用户名 appuser):
CREATE USER 'appuser'@'%' IDENTIFIED BY 'StrongPass123!';
GRANT ALL PRIVILEGES ON *.* TO 'appuser'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES; - 在云平台控制台(如安全组)放行 TCP 3306 端口,仅允许可信 IP 访问更安全
验证连接与基础优化
部署完成后务必测试,避免白屏报错:
- 本地测试:mysql -u appuser -p -h 公网IP
- 检查字符集是否为 utf8mb4:SHOW VARIABLES LIKE 'character_set%';,如非 utf8mb4,可在 my.cnf 的 [mysqld] 段添加:
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci - 内存较小的云服务器(如 1G 内存),建议调低 innodb_buffer_pool_size(例如设为 128M),避免 OOM
不复杂但容易忽略。









