在腾讯云的轻量应用服务器(Lighthouse)上安装 OpenCloudOS 并部署 MySQL 8.0,通常有两种主要方式:一种是直接使用系统镜像中的预装版(最推荐,省心),另一种是手动安装(适合需要自定义配置的场景)。
OpenCloudOS 基于 CentOS/RHEL 生态,因此使用 yum 或 dnf 包管理器进行安装。以下是详细步骤:
方法一:直接选择预装 MySQL 的镜像(强烈推荐)
这是最简单、最稳定的方法。腾讯云轻量应用服务器提供了一键安装的镜像选项,无需手动配置依赖和初始化密码。
-
重新创建实例(如果当前实例未安装):
- 进入腾讯云控制台 -> 轻量应用服务器。
- 点击“创建”,在镜像选择环节,找到 “应用商店” 标签页。
- 搜索 "MySQL" 或 "数据库”。
- 选择 MySQL 8.0 版本。
- 完成创建后,系统会自动初始化 MySQL 服务,并在控制台首页或发送短信/邮件的方式告知你 root 初始密码。
-
连接与验证:
- 通过 SSH 登录服务器。
- 输入
mysql -u root -p,使用获取到的初始密码登录。 - 登录后建议立即修改密码并设置远程访问权限。
方法二:手动安装 MySQL 8.0(适用于已存在服务器)
如果你已经创建了 OpenCloudOS 实例且不想重装系统,可以通过官方源手动安装。
1. 更新系统并安装依赖
首先确保系统软件包是最新的,并安装必要的工具。
# 更新系统
sudo yum update -y
# 安装 wget 和 vim (如果尚未安装)
sudo yum install -y wget vim net-tools
# 下载 MySQL 官方 YUM 仓库配置
# 注意:OpenCloudOS 兼容 RHEL/CentOS 体系,通常使用 mysql80-community-release-el9.rpm 或 el8.rpm
# 请先确认你的 OpenCloudOS 版本对应的是 EL8 还是 EL9 (大多数轻量服务器默认是 EL8/9)
wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
注:如果你的 OpenCloudOS 是基于 CentOS 7 内核(较少见),请将上述命令中的 el8 改为 el7。如果是较新的 OpenCloudOS v3/v4,通常对应 el8 或 el9。
2. 安装 MySQL 社区版
安装仓库配置后,执行以下命令安装 MySQL Server:
# 安装 MySQL 8.0 服务端
sudo yum install -y mysql-community-server
# 启动 MySQL 服务
sudo systemctl start mysqld
# 设置开机自启
sudo systemctl enable mysqld
# 查看状态
sudo systemctl status mysqld
3. 获取临时密码并安全初始化
MySQL 8.0 首次安装时,会在日志中生成一个临时的 root 密码。
-
查找临时密码:
sudo grep 'temporary password' /var/log/mysqld.log输出类似:
[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: x.y.z... -
登录并修改密码:
# 使用临时密码登录 mysql -u root -p输入刚才查到的临时密码。进入 MySQL 命令行后,必须先修改密码策略,否则无法继续操作。
-- 1. 修改 root 密码 (替换为你自己的强密码) ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPassword123!'; -- 2. 退出并重新登录测试 EXIT; mysql -u root -p # 输入新密码登录成功即表示初始化完成
4. 配置远程访问(允许外部连接)
默认情况下,MySQL 只允许本地 (localhost) 连接。如果需要从其他电脑(如本地终端或另一台服务器)连接,需要授权。
-
再次登录 MySQL:
mysql -u root -p -
执行以下 SQL 语句(将
'%'替换为特定 IP 以提高安全性,或者保留%允许所有 IP):-- 创建用户并授权 (示例:允许任意 IP 连接,用户名 admin,密码 AdminPass123!) CREATE USER 'admin'@'%' IDENTIFIED WITH mysql_native_password BY 'AdminPass123!'; -- 赋予所有权限 GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%'; -- 刷新权限 FLUSH PRIVILEGES; EXIT;
5. 开放防火墙端口
OpenCloudOS 默认可能开启了防火墙,且腾讯云轻量服务器需要在控制台放行端口。
-
系统内部防火墙 (firewalld):
sudo firewall-cmd --zone=public --add-port=3306/tcp --permanent sudo firewall-cmd --reload -
腾讯云控制台安全组(关键步骤):
- 登录腾讯云控制台。
- 进入 轻量应用服务器 详情页。
- 点击左侧 网络与安全 -> 安全组。
- 添加一条规则:
- 协议:TCP
- 端口:3306
- 来源:
0.0.0.0/0(生产环境建议限制为你的固定 IP)。 - 策略:允许。
常见问题排查
-
端口被占用或无法连接:
检查是否安装了 MariaDB 冲突:rpm -qa | grep mariadb # 如果有,卸载它:yum remove mariadb-libs -y然后重新启动 MySQL 服务。
-
密码策略过严:
如果提示密码强度不够,可以在 MySQL 配置文件中调整策略(/etc/my.cnf),在[mysqld]下添加:validate_password.policy = LOW validate_password.length = 6然后重启服务
systemctl restart mysqld。 -
OpenCloudOS 版本差异:
如果上述el8的 RPM 包下载失败,请尝试查询 OpenCloudOS 的具体版本号(cat /etc/opencloudos-release),确认其对应的 RHEL 版本,再选择el7或el9的包。
通过以上步骤,你应该能在 OpenCloudOS 上成功运行 MySQL 8.0。如果是初次搭建且追求稳定,方法一通常是最佳选择。
云服务器