奋斗
努力

腾讯轻量服务器OpenCloudOS安装MYSQL8.0?

云计算

在腾讯云的轻量应用服务器(Lighthouse)上安装 OpenCloudOS 并部署 MySQL 8.0,通常有两种主要方式:一种是直接使用系统镜像中的预装版(最推荐,省心),另一种是手动安装(适合需要自定义配置的场景)。

OpenCloudOS 基于 CentOS/RHEL 生态,因此使用 yum 或 dnf 包管理器进行安装。以下是详细步骤:

方法一:直接选择预装 MySQL 的镜像(强烈推荐)

这是最简单、最稳定的方法。腾讯云轻量应用服务器提供了一键安装的镜像选项,无需手动配置依赖和初始化密码。

  1. 重新创建实例(如果当前实例未安装):

    • 进入腾讯云控制台 -> 轻量应用服务器。
    • 点击“创建”,在镜像选择环节,找到 “应用商店” 标签页。
    • 搜索 "MySQL" 或 "数据库”。
    • 选择 MySQL 8.0 版本。
    • 完成创建后,系统会自动初始化 MySQL 服务,并在控制台首页或发送短信/邮件的方式告知你 root 初始密码。
  2. 连接与验证:

    • 通过 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 密码。

  1. 查找临时密码:

    sudo grep 'temporary password' /var/log/mysqld.log

    输出类似:[Note] [MY-010454] [Server] A temporary password is generated for root@localhost: x.y.z...

  2. 登录并修改密码:

    # 使用临时密码登录
    mysql -u root -p

    输入刚才查到的临时密码。进入 MySQL 命令行后,必须先修改密码策略,否则无法继续操作。

    -- 1. 修改 root 密码 (替换为你自己的强密码)
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'YourStrongPassword123!';
    
    -- 2. 退出并重新登录测试
    EXIT;
    mysql -u root -p
    # 输入新密码登录成功即表示初始化完成

4. 配置远程访问(允许外部连接)

默认情况下,MySQL 只允许本地 (localhost) 连接。如果需要从其他电脑(如本地终端或另一台服务器)连接,需要授权。

  1. 再次登录 MySQL:

    mysql -u root -p
  2. 执行以下 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
  • 腾讯云控制台安全组(关键步骤):

    1. 登录腾讯云控制台。
    2. 进入 轻量应用服务器 详情页。
    3. 点击左侧 网络与安全 -> 安全组。
    4. 添加一条规则:
      • 协议:TCP
      • 端口:3306
      • 来源:0.0.0.0/0 (生产环境建议限制为你的固定 IP)。
      • 策略:允许。

常见问题排查

  1. 端口被占用或无法连接:
    检查是否安装了 MariaDB 冲突:

    rpm -qa | grep mariadb
    # 如果有,卸载它:yum remove mariadb-libs -y

    然后重新启动 MySQL 服务。

  2. 密码策略过严:
    如果提示密码强度不够,可以在 MySQL 配置文件中调整策略(/etc/my.cnf),在 [mysqld] 下添加:

    validate_password.policy = LOW
    validate_password.length = 6

    然后重启服务 systemctl restart mysqld。

  3. OpenCloudOS 版本差异:
    如果上述 el8 的 RPM 包下载失败,请尝试查询 OpenCloudOS 的具体版本号(cat /etc/opencloudos-release),确认其对应的 RHEL 版本,再选择 el7 或 el9 的包。

通过以上步骤,你应该能在 OpenCloudOS 上成功运行 MySQL 8.0。如果是初次搭建且追求稳定,方法一通常是最佳选择。

未经允许不得转载:云服务器 » 腾讯轻量服务器OpenCloudOS安装MYSQL8.0?