阿里云国际站个人账号阿里云服务器 MySQL 数据库安装配置教程:远程连接、权限设置与连接失败排查
用户搜索这个标题,通常不是想了解 MySQL 是什么,而是已经在阿里云国际站买了服务器,准备部署网站、WordPress、接口服务或测试环境数据库时,卡在了几个具体步骤:服务器怎么买更合适、Linux 还是 Windows 怎么选、为什么本地 Navicat 或 DBeaver 连不上、3306 明明开了还是失败、用户权限授权后依然报错、外网能 ping 但数据库不通。本篇教程按照真实操作顺序,把购买、创建、安装、授权、连接和排障串起来,减少反复试错。
一、用户在操作中最关心的几个决策点
如果你用的是阿里云国际站个人账号,最常见的目标有三类:一是给网站部署独立数据库;二是给测试项目临时搭建 MySQL;三是把本地数据库迁移到云服务器,方便远程访问。真正影响后续是否顺利的,不是安装命令本身,而是前面几个选择。
| 决策项 | 用户常见问题 | 建议 |
| 地域 | 选香港、新加坡还是日本? | 网站用户在哪,就优先选靠近用户的地域;中国大陆访客较多但无需备案时,可先选香港测试延迟 |
| 系统 | Linux 还是 Windows? | 部署 MySQL 优先 Linux,资源占用更低,排查更直接;仅在必须依赖 Windows 组件时才选 Windows |
| 配置 | 2核4G够不够? | 个人站点、测试环境一般 2核4G 起步;有并发写入或多个服务同机运行建议 4核8G |
| 磁盘 | 系统盘 40G 是否够用? | 只跑数据库不建议太小,建议 80G 起,避免 binlog、备份、日志挤满磁盘 |
| 公网访问 | 为什么服务器可登录但数据库连不上? | 通常是安全组、防火墙、MySQL 监听地址、授权主机四个环节之一未配齐 |
二、部署前准备:先确认这些条件,避免做到一半返工
阿里云国际站个人账号 1. 账号与权限
需要已完成阿里云国际站个人账号注册,并能正常创建 ECS 实例。如果账号刚开通,先确认支付方式已绑定,否则实例创建到支付环节会中断。
2. 所需资源
- 一台阿里云 ECS 云服务器
- 一个公网 IP,便于远程管理和数据库测试
- 远程连接工具:Linux 可用 Terminal、Xshell、MobaXterm;Windows 可用系统自带远程桌面
- 数据库连接工具:Navicat、DBeaver、MySQL Workbench 任一即可
3. 推荐前置条件
- 操作系统优先 Ubuntu 22.04 / Rocky Linux 8 / CentOS Stream;如果是老教程提到 CentOS 7,要注意已接近或已经停止维护,不建议新部署
- 提前记录服务器公网 IP、实例密码或密钥对
- 准备一个本地固定出口 IP。如果后续要做更严格安全控制,可以在安全组中只放行你的办公 IP
三、阿里云国际站购买服务器与实例创建步骤
步骤1:创建 ECS 实例
登录阿里云国际站控制台后,进入 ECS 页面,点击创建实例。这里最容易选错的是地域、网络和镜像。
| 参数 | 填写建议 | 注意事项 |
| Region | 香港/新加坡/东京按用户来源选择 | 实例创建后跨地域迁移成本高,尽量一次选对 |
| Zone | 同地域内任一可用区即可 | 单机 MySQL 对可用区差异不敏感,优先库存与价格 |
| Instance Type | 个人测试 2vCPU 4GiB;业务环境 4vCPU 8GiB | MySQL 对内存敏感,不建议 1G/2G 小规格硬跑生产库 |
| Image | Ubuntu 22.04 LTS 或 Rocky Linux 8 | 选 Linux 更便于自动化和性能调优 |
| System Disk | ESSD/SSD,80G 起 | 数据库日志增长快,40G 很容易不够 |
| Public IP | 启用 | 后续远程 SSH 和数据库测试需要 |
| Security Group | 新建或选择已有安全组 | 后面要放行 22、3389、3306、80、443 等端口 |
阿里云国际站个人账号 步骤2:设置登录凭据
Linux 建议优先使用密钥对,Windows 使用密码。若你只是临时测试,也可以给 Linux 设置密码,但上线后建议切换为密钥并禁用密码登录。
步骤3:确认网络
阿里云国际站个人账号 VPC 和交换机按默认新建即可。个人账号初次使用不需要复杂网络拓扑,但要注意:如果你的 MySQL 只给同 VPC 内应用使用,可以不开放公网 3306,而是通过应用服务器私网连接数据库,风险更低。
四、远程连接服务器:Linux 与 Windows 的实际操作
1. Linux 服务器 SSH 连接
实例创建完成后,在本地终端执行:
ssh root@你的公网IP
如果使用非 root 用户,例如 ubuntu:
ssh ubuntu@你的公网IP
首次连接会提示确认主机指纹,输入 yes。若提示超时,先不要急着改密码,先检查安全组 22 端口是否放行。
2. Windows 服务器 RDP 连接
如果你选择的是 Windows Server,在本地按 Win+R 输入 mstsc,填入公网 IP,输入实例密码即可连接。若远程桌面失败,优先检查 3389 端口的安全组规则和系统防火墙。
五、在阿里云服务器上安装 MySQL 并完成初始化
步骤1:更新系统并安装 MySQL
以下示例以 Ubuntu 22.04 为例:
sudo apt update
sudo apt install mysql-server -y
安装完成后检查状态:
sudo systemctl status mysql
如果是 Rocky Linux / CentOS 系:
sudo dnf install mysql-server -y
sudo systemctl enable mysqld
sudo systemctl start mysqld
步骤2:执行安全初始化
执行:
sudo mysql_secure_installation
这里会让你设置 root 密码、删除匿名用户、禁止 root 远程登录、删除测试库。对于公网服务器,建议全部按更严格选项处理。尤其不要直接把 root 开放给外网使用,后续应该单独创建业务账号。
步骤3:验证本机连接
先在服务器本机登录数据库:
mysql -u root -p
如果这里都登录失败,说明问题还停留在 MySQL 服务层,不要先去改安全组。
六、开启 MySQL 远程连接:监听地址、用户授权、权限设置
步骤1:修改监听地址
很多用户已经安装成功,却只能本地连接,原因是 MySQL 默认只监听 127.0.0.1。编辑配置文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
找到:
bind-address = 127.0.0.1
修改为:
bind-address = 0.0.0.0
保存后重启 MySQL:
sudo systemctl restart mysql
如果你的系统路径不同,可先执行 find /etc -name mysqld.cnf 或 grep -R "bind-address" /etc/mysql /etc/ 查找真实配置文件。
步骤2:创建远程连接账号
不要直接使用 root 远程连接,建议新建独立账号。例如创建一个允许任意地址访问的测试账号:
CREATE USER 'dbuser'@'%' IDENTIFIED BY 'StrongPass_2026!';
GRANT ALL PRIVILEGES ON appdb.* TO 'dbuser'@'%';
FLUSH PRIVILEGES;
更稳妥的做法是只允许固定 IP:
CREATE USER 'dbuser'@'你的出口IP' IDENTIFIED BY 'StrongPass_2026!';
GRANT ALL PRIVILEGES ON appdb.* TO 'dbuser'@'你的出口IP';
FLUSH PRIVILEGES;
如果数据库还没创建,可以先执行:
CREATE DATABASE appdb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
步骤3:检查授权是否生效
执行:
阿里云国际站个人账号 SELECT user,host FROM mysql.user;
确认存在你刚创建的用户和对应 host。很多连接失败不是密码错,而是 host 写成 localhost,导致只能本机连。
| 错误配置 | 现象 | 处理方法 |
| 'dbuser'@'localhost' | 本地能连,外部工具失败 | 重新创建或修改为 '%' 或固定公网IP |
| bind-address 仍为 127.0.0.1 | 端口已放行但外部无法建立 TCP 连接 | 改成 0.0.0.0 并重启服务 |
| 未执行 FLUSH PRIVILEGES | 授权后连接行为与预期不一致 | 刷新权限 |
| 直接开放 root 远程 | 安全风险高,易被爆破 | 创建独立低权限账号 |
阿里云国际站个人账号 七、安全组、防火墙与公网 IP:3306 放行不等于一定能连通
步骤1:配置阿里云安全组
进入 ECS 实例详情页,找到安全组,添加入方向规则:
| 端口 | 协议 | 授权对象 | 用途 |
| 22 | TCP | 你的办公IP/0.0.0.0/0 | SSH 登录 |
| 3306 | TCP | 你的办公IP优先 | MySQL 远程连接 |
| 80 | TCP | 0.0.0.0/0 | HTTP 网站访问 |
| 443 | TCP | 0.0.0.0/0 | HTTPS 网站访问 |
如果只是你自己远程管理数据库,不要把 3306 对全网开放,优先写成你的本地公网出口 IP/32。
步骤2:检查系统防火墙
Ubuntu 若启用了 UFW:
sudo ufw allow 3306/tcp
sudo ufw status
CentOS / Rocky 若启用了 firewalld:
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
sudo firewall-cmd --list-ports
步骤3:确认服务监听
阿里云国际站个人账号 在服务器执行:
ss -lntp | grep 3306
阿里云国际站个人账号 正常情况下你应该看到 0.0.0.0:3306 或服务器私网/公网对应监听。如果仍显示 127.0.0.1:3306,说明配置文件未生效。
八、MySQL 远程连接测试与连接失败排查
1. 从本地工具连接的标准填写方式
| 字段 | 填写内容 |
| Host | 阿里云服务器公网 IP |
| Port | 3306 |
| User | dbuser |
| Password | 你设置的密码 |
| Database | appdb,可选 |
如果你使用的是应用程序,不要把 host 写成 localhost;那会让程序尝试连接本机数据库,而不是云服务器。
2. 四层排查法
排查顺序建议固定,否则容易反复改错地方。
- 第一层:服务器是否在线。先 ping 公网 IP,或确认 SSH/RDP 能登录。
- 第二层:端口是否通。用 telnet 公网IP 3306 或 nc -vz 公网IP 3306 测试。
- 第三层:MySQL 是否监听外部地址。用 ss -lntp | grep 3306 查看。
- 第四层:账号是否授权正确。检查 user@host、密码、权限库范围。
3. 常见报错与对应处理
| 报错信息 | 原因 | 处理 |
| Can't connect to MySQL server | 网络不通、端口未放行、服务未启动 | 检查安全组、防火墙、systemctl status mysql |
| Host is not allowed to connect | 账号 host 未授权当前来源 IP | 重建用户为 '%' 或指定来源IP |
| Access denied for user | 密码错误或权限不足 | 重置密码并检查 GRANT 范围 |
| Connection timed out | 3306 被网络层阻断 | 重点检查安全组和本地出口网络限制 |
| Lost connection during handshake | 版本兼容、SSL 或连接参数异常 | 升级客户端,关闭不必要的 SSL 强制项,检查 max_connections 与日志 |
九、不同场景下的配置建议
1. 个人开发者
阿里云国际站个人账号 推荐 2核4G、80G ESSD、Ubuntu 22.04。MySQL 与应用可先部署在同一台机器,安全组 3306 仅对自己 IP 放行。适合练习、测试、轻量站点。
2. 企业用户
推荐 4核8G 起,数据库与 Web 服务分离。应用走私网连接 MySQL,公网不开放 3306。启用定时快照和逻辑备份,避免把数据库直接暴露在公网上。
3. 跨境业务
先在香港、新加坡、东京分别用 curl 和 ping 做基础延迟测试,再选数据库部署地域。不要只看价格,跨境访问高延迟会直接拖慢后台接口。
4. 网站应用
WordPress、Discuz、Laravel 这类应用,数据库字符集统一用 utf8mb4,避免表情符号或多语言内容写入报错。建议单独创建应用数据库和用户,不与测试库混用。
5. 数据库业务
如果数据库是核心业务,不建议长期用自建单机 MySQL 扛生产。至少要启用 binlog、定期全量备份,并将数据盘与系统盘空间分开规划。
十、备份、迁移、重装与后续优化
1. 备份实践
逻辑备份可用:
mysqldump -u root -p --databases appdb > /backup/appdb.sql
再结合阿里云磁盘快照,形成“数据库逻辑备份 + 云盘快照”双层方案。快照适合整机回滚,mysqldump 适合按库恢复。
2. 数据恢复
恢复时执行:
mysql -u root -p appdb < /backup/appdb.sql
如果导入时提示字符集问题,确认导出导入都使用 utf8mb4,并检查目标库默认字符集。
3. 服务器迁移
从本地迁移到阿里云,优先用 mysqldump 导出;从旧云服务器迁移到新 ECS,可先做全量导出,再在业务低峰期增量同步。迁移后先改应用配置,再做 DNS 切换,不要先停旧库。
4. 系统重装前注意事项
重装系统会清空系统盘。如果 MySQL 数据目录在系统盘,重装前必须先导出数据或制作快照。很多用户以为重装只影响系统,不影响数据库,结果直接丢库。
5. 性能与网络优化建议
- 安全优化:禁止 root 远程登录;3306 仅对白名单 IP 放行;定期修改密码;开启 fail2ban 或限制 SSH 登录方式。
- 性能优化:4G 内存以上可适当调大 innodb_buffer_pool_size;数据库与 Web 服务分离;使用 SSD/ESSD;定期清理慢查询。
- 成本优化:测试环境选按量计费,稳定业务选包年包月;避免超大磁盘闲置;不需要公网数据库时关闭 3306 外网开放。
- 稳定性优化:启用自动快照;保留 binlog;监控磁盘空间、CPU、连接数;升级前先备份配置文件和数据库。
如果你当前卡在“服务器已买好但数据库远程连接不上”,按本文的最短排查路径执行即可:先确认 SSH 正常,再检查安全组 3306,再看系统防火墙,再验证 MySQL 监听地址,最后核对 user@host 授权。大部分问题都能在这五步内定位,不需要反复卸载重装 MySQL。

