腾讯云轻量化服务器安装MySQL?

在腾讯云轻量应用服务器(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)

  1. 更新系统包

    yum update -y
  2. 安装 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
  3. 启动并设置开机自启

    systemctl start mysqld
    systemctl enable mysqld
  4. 获取临时密码并修改 root 密码
    MySQL 8.0 安装后会自动生成一个临时密码。

    # 查看日志中的临时密码
    grep 'temporary password' /var/log/mysqld.log

    记下那串字符,然后执行:

    mysql_secure_installation

    按提示操作:

    • 输入临时密码
    • 设置新密码(需包含大小写、数字、符号,长度>8)
    • 移除匿名用户?Y
    • 禁止 root 远程登录?N(这里选 N,因为我们要远程连)
    • 移除 test 库?Y
    • 刷新权限?Y
  5. 创建远程访问账号(关键步骤)
    登录 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)

  1. 安装

    sudo apt update
    sudo apt install mysql-server -y
  2. 启动服务

    sudo systemctl start mysql
    sudo systemctl enable mysql
  3. 配置远程访问
    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

    保存退出。

  4. 重启 MySQL

    sudo systemctl restart mysql
  5. 设置 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:

  1. 下载 MySQL Installer (Community Edition)。
  2. 安装时选择 Server only 即可,节省资源。
  3. 在安装配置阶段,务必勾选 "Allow remote connections"。
  4. 设置好 root 密码。
  5. 重要:去 Windows 防火墙 -> 高级设置 -> 入站规则 -> 新建规则 -> 端口 -> TCP 3306 -> 允许连接。
  6. 同样需要在腾讯云控制台的安全组里放行 3306。

四、避坑与优化建议(大神经验)

  1. 内存不足问题
    轻量服务器最低配置通常是 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 生效。

  2. 时区问题
    云服务器默认时区可能是 UTC,导致你查出来的时间比北京时间慢 8 小时。

    • 在 MySQL 中执行:
      SET time_zone = '+8:00';
    • 永久修改:在 my.cnf 中添加 default-time-zone = '+8:00'。
  3. 不要直接用 Root 远程连接
    虽然上面教了你怎么开 root 远程,但出于安全考虑,建议创建一个专用的业务账号(如 app_user),只授予特定数据库的权限,然后用这个账号连接。

  4. 备份!备份!备份!
    轻量服务器磁盘空间有限,定期将数据导出到 COS(腾讯云对象存储)或使用脚本自动备份。不要依赖单点故障。

  5. 连接测试
    安装完毕后,在你自己的电脑上使用 Navicat、DBeaver 或命令行测试连接:

    mysql -h <你的公网IP> -P 3306 -u your_user -p

    如果成功,说明整个链路打通。


总结:
腾讯云轻量服务器装 MySQL,70% 的工作在安全组和防火墙配置,20% 在修改默认绑定地址和权限,10% 才是真正的安装命令。只要搞定了网络和权限,剩下的就是标准操作。

未经允许不得转载:云知道CLOUD » 腾讯云轻量化服务器安装MySQL?