在腾讯云轻量应用服务器(Lighthouse)上部署 MySQL,核心难点不在于“安装”,而在于网络配置和资源管理。
轻量服务器的带宽通常较小(1-5Mbps),且默认安全组只开放了 SSH (22) 和 HTTP/HTTPS (80/443)。如果你直接装完 MySQL 就想远程连数据库,大概率会超时或拒绝连接。
以下是基于实战经验的完整流程,分为 Linux (CentOS/Ubuntu) 和 Windows Server 两种场景。建议优先使用 Linux,性能更稳,资源占用更少。
一、前置检查:安全组与防火墙
这是最容易踩坑的地方。很多新手装好了 MySQL,但本地 Navicat/DBeaver 死活连不上。
1. 腾讯云控制台操作
登录腾讯云控制台 -> 轻量应用服务器 -> 点击你的实例 -> 防火墙(或安全组)。
- 确保添加了一条规则:
- 方向:入方向
- 协议端口:TCP:3306
- 授权对象:
0.0.0.0/0(允许所有 IP,生产环境建议指定你的固定 IP) - 策略:允许
2. 系统内部防火墙
即使云控制台开了,服务器内部的防火墙也可能拦截。
-
CentOS 7+ / RHEL:
# 查看防火墙状态 systemctl status firewalld # 如果运行中,开放 3306 端口 firewall-cmd --zone=public --add-port=3306/tcp --permanent firewall-cmd --reload -
Ubuntu:
Ubuntu 默认可能没有ufw或者默认全开,但为了保险:sudo ufw allow 3306/tcp sudo ufw reload
二、Linux 环境安装指南
方案 A:CentOS 7/8 / AlmaLinux (推荐 YUM/DNF)
-
更新系统包
yum update -y -
安装 MySQL
CentOS 7 默认仓库是 MariaDB,如果你想用原生 MySQL,需要添加官方源。# 下载 MySQL Yum Repository wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm rpm -ivh mysql80-community-release-el7-3.noarch.rpm # 安装 MySQL Server yum install mysql-server -y -
启动并设置开机自启
systemctl start mysqld systemctl enable mysqld -
获取临时密码并修改 root 密码
MySQL 8.0 安装后会自动生成一个临时密码。# 查看日志中的临时密码 grep 'temporary password' /var/log/mysqld.log记下那串字符,然后执行:
mysql_secure_installation按提示操作:
- 输入临时密码
- 设置新密码(需包含大小写、数字、符号,长度>8)
- 移除匿名用户?Y
- 禁止 root 远程登录?N(这里选 N,因为我们要远程连)
- 移除 test 库?Y
- 刷新权限?Y
-
创建远程访问账号(关键步骤)
登录 MySQL:mysql -u root -p执行 SQL:
-- 创建一个新用户,允许任意 IP 连接 CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_strong_password'; -- 赋予所有权限(生产环境建议细化权限) GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT;
方案 B:Ubuntu 20.04/22.04 (推荐 APT)
-
安装
sudo apt update sudo apt install mysql-server -y -
启动服务
sudo systemctl start mysql sudo systemctl enable mysql -
配置远程访问
Ubuntu 安装的 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 -
设置 Root 远程权限
sudo mysql在 MySQL 命令行中:
USE mysql; UPDATE user SET host='%' WHERE user='root'; FLUSH PRIVILEGES; EXIT;注意:MySQL 8.0 之后推荐使用
ALTER USER语法,如果上面报错,请用:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_new_password'; FLUSH PRIVILEGES;
三、Windows Server 环境安装
如果你必须用 Windows:
- 下载 MySQL Installer (Community Edition)。
- 安装时选择 Server only 即可,节省资源。
- 在安装配置阶段,务必勾选 "Allow remote connections"。
- 设置好 root 密码。
- 重要:去 Windows 防火墙 -> 高级设置 -> 入站规则 -> 新建规则 -> 端口 -> TCP 3306 -> 允许连接。
- 同样需要在腾讯云控制台的安全组里放行 3306。
四、避坑与优化建议(大神经验)
-
内存不足问题
轻量服务器最低配置通常是 1核 1G 或 2核 2G。MySQL 默认配置对内存要求较高,小内存机器容易 OOM(内存溢出)导致崩溃。- 解决方案:安装完成后,修改
/etc/my.cnf或/etc/mysql/my.cnf。[mysqld] innodb_buffer_pool_size = 128M # 根据总内存调整,1G 内存设 128M-256M 即可 max_connections = 50 # 默认 151,轻量机没必要这么多重启 MySQL 生效。
- 解决方案:安装完成后,修改
-
时区问题
云服务器默认时区可能是 UTC,导致你查出来的时间比北京时间慢 8 小时。- 在 MySQL 中执行:
SET time_zone = '+8:00'; - 永久修改:在
my.cnf中添加default-time-zone = '+8:00'。
- 在 MySQL 中执行:
-
不要直接用 Root 远程连接
虽然上面教了你怎么开 root 远程,但出于安全考虑,建议创建一个专用的业务账号(如app_user),只授予特定数据库的权限,然后用这个账号连接。 -
备份!备份!备份!
轻量服务器磁盘空间有限,定期将数据导出到 COS(腾讯云对象存储)或使用脚本自动备份。不要依赖单点故障。 -
连接测试
安装完毕后,在你自己的电脑上使用 Navicat、DBeaver 或命令行测试连接:mysql -h <你的公网IP> -P 3306 -u your_user -p如果成功,说明整个链路打通。
总结:
腾讯云轻量服务器装 MySQL,70% 的工作在安全组和防火墙配置,20% 在修改默认绑定地址和权限,10% 才是真正的安装命令。只要搞定了网络和权限,剩下的就是标准操作。
云知道CLOUD