在腾讯云轻量应用服务器(Tencent Cloud Lighthouse)上安装 MySQL 8.0 是一个常见的操作。以下是基于 Ubuntu 20.04/22.04 系统的详细步骤,适用于腾讯云轻量服务器。
✅ 一、准备工作
-
登录到你的轻量服务器(使用 SSH)
ssh root@你的服务器公网IP -
更新系统包列表
sudo apt update && sudo apt upgrade -y
✅ 二、安装 MySQL 8.0
方法一:通过官方 APT 源安装(推荐)
-
下载并安装 MySQL 官方 APT 源配置包
wget https://dev.mysql.com/get/mysql-apt-config_0.8.28-1_all.deb sudo dpkg -i mysql-apt-config_0.8.28-1_all.deb在安装过程中会弹出配置界面,选择
MySQL Server & Cluster→ 选择mysql-8.0→ 确认 OK 即可。 -
更新软件包索引
sudo apt update -
安装 MySQL 服务器
sudo apt install -y mysql-server安装过程中不会自动提示设置密码,需要后续通过安全脚本设置。
✅ 三、初始化安全设置
运行 MySQL 自带的安全脚本:
sudo mysql_secure_installation
根据提示进行以下操作:
- 设置 root 用户密码(强烈建议设置强密码)
- 移除匿名用户
- 禁止 root 远程登录
- 删除测试数据库
- 重新加载权限表
注意:MySQL 8.0 默认使用
caching_sha2_password插件认证,部分旧客户端可能不兼容。如需兼容,可手动修改为mysql_native_password(见下方扩展)。
✅ 四、启动并设置开机自启
sudo systemctl start mysql
sudo systemctl enable mysql
检查状态:
sudo systemctl status mysql
✅ 五、(可选)允许远程访问
⚠️ 注意:开放远程访问存在安全风险,请确保防火墙和腾讯云安全组已配置。
-
修改 MySQL 配置文件:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf找到
bind-address,将其改为:bind-address = 0.0.0.0 -
重启 MySQL:
sudo systemctl restart mysql -
登录 MySQL 创建远程用户(示例):
mysql -u root -p -- 创建远程用户(例如用户名为 remote_user,密码为 your_password) CREATE USER 'remote_user'@'%' IDENTIFIED BY 'your_password'; -- 授予所有权限(生产环境请按需授权) GRANT ALL PRIVILEGES ON *.* TO 'remote_user'@'%' WITH GRANT OPTION; -- 刷新权限 FLUSH PRIVILEGES;
✅ 六、配置腾讯云安全组
进入 腾讯云控制台 → 轻量应用服务器 → 防火墙 → 添加规则
添加入站规则:
- 协议类型:TCP
- 端口:3306
- 源 IP:按需填写(如
0.0.0.0/0表示任意 IP,建议限制特定 IP)
建议不要长期对全网开放 3306 端口,可用跳板机或 SSH 隧道替代。
✅ 七、连接测试
你可以使用本地数据库工具(如 Navicat、DBeaver)通过公网 IP 和端口 3306 连接。
✅ 扩展:解决旧客户端连接问题(可选)
如果遇到 Authentication plugin 'caching_sha2_password' cannot be loaded 错误,可修改用户认证方式:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
FLUSH PRIVILEGES;
✅ 常见问题排查
| 问题 | 解决方法 |
|---|---|
| 启动失败 | 查看日志:sudo tail -f /var/log/mysql/error.log |
| 无法远程连接 | 检查 bind-address、防火墙、安全组、用户权限 |
| 忘记 root 密码 | 进入安全模式重置 |
✅ 总结
你已经成功在腾讯云轻量服务器上安装并配置了 MySQL 8.0!关键点包括:
- 使用官方源安装最新版
- 运行
mysql_secure_installation提高安全性 - 正确配置安全组和绑定地址
- 创建专用用户而非直接使用 root 远程登录
如有具体操作系统版本(如 CentOS),可提供我为你定制 CentOS 安装方案。
CLOUD技术博