在腾讯云轻量应用服务器上怎么安装MySQL数据库?

在腾讯云轻量应用服务器(Lighthouse)上安装 MySQL,最推荐且最稳妥的方式是直接使用腾讯云提供的“一键应用”镜像。这种方式不仅自动化程度高,而且已经预配置好了安全组和防火墙规则,避免了手动安装时常见的端口不通问题。

当然,如果你需要更定制化的环境(比如特定版本或配合其他中间件),也可以选择在纯净版系统上手动安装。下面我将分别介绍这两种主流方法。

方法一:使用“一键应用”镜像(推荐新手和快速部署)

这是最简单、出错率最低的方法。腾讯云官方维护了大量经过测试的应用镜像,其中包含 LNMP(Linux + Nginx + MySQL + PHP)、LAMP 等组合。

  1. 重装系统/创建实例时选择镜像

    • 如果你还没有创建服务器,在购买页面选择“镜像”时,切换到“应用镜像”标签页。
    • 搜索并选择 “LNMP” 或 “WordPress” 等相关镜像。这些镜像通常默认安装了 MySQL 5.7 或 8.0(具体取决于当前版本)。
    • 创建完成后,登录控制台,进入该实例的详情页,点击“应用”标签,你可以看到已安装的应用列表,包括 MySQL 的状态、版本以及默认的数据库信息。
  2. 对已有服务器重装为应用镜像

    • 如果你的服务器已经是纯净 Linux 系统,想快速获得 MySQL 环境,可以在控制台找到该实例,选择“更多” -> “重装系统”。
    • 同样选择“应用镜像”中的 LNMP 或类似选项。
    • 注意:重装会清空硬盘数据,请务必提前备份重要文件。
  3. 获取初始密码

    • 安装完成后,腾讯云会在“应用”详情页提供 MySQL 的初始 root 密码。请务必记录此密码,后续连接数据库需要使用。
  4. 配置安全组

    • 即使使用了应用镜像,为了从外部(如本地 Navicat、DBeaver)连接数据库,你仍需配置防火墙。
    • 进入腾讯云控制台,找到该实例的“防火墙”设置。
    • 添加一条入站规则:协议选择 TCP,端口范围填写 3306,授权对象填 0.0.0.0/0(或指定你的 IP)。
    • 安全建议:生产环境不建议直接开放 3306 给全网,最好限制为你的固定 IP。

方法二:在纯净 Linux 系统上手动安装(适合高级用户)

如果你使用的是 Ubuntu、Debian 或 CentOS 等纯净系统,可以通过命令行手动安装。这里以目前主流的 Ubuntu 22.04 为例(CentOS 命令略有不同,但逻辑一致)。

1. 更新系统并安装 MySQL

# 更新软件包列表
sudo apt update

# 安装 MySQL Server
sudo apt install mysql-server -y

2. 启动并设置开机自启

sudo systemctl start mysql
sudo systemctl enable mysql

3. 验证安装是否成功

mysql --version
systemctl status mysql

4. 运行安全脚本(强烈建议)

MySQL 安装后有一个安全加固脚本,用于设置 root 密码、移除匿名用户、禁止远程 root 登录等。

sudo mysql_secure_installation

按照提示操作:

  • 设置 root 密码(建议使用强密码)。
  • 删除匿名账户(Y)。
  • 禁止 root 远程登录(Y,除非你明确需要远程 root 访问)。
  • 删除 test 数据库(Y)。
  • 重新加载权限表(Y)。

5. 配置远程访问(关键步骤)

默认情况下,MySQL 只允许本地连接。若需从外部连接,需修改配置文件。

  1. 编辑 MySQL 配置文件:
    sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
  2. 找到 bind-address = 127.0.0.1,将其注释掉或改为 0.0.0.0:
    # bind-address = 127.0.0.1
    bind-address = 0.0.0.0
  3. 保存并退出(Ctrl+O, Enter, Ctrl+X)。
  4. 重启 MySQL 服务:
    sudo systemctl restart mysql

6. 创建远程用户并授权

出于安全考虑,不建议直接用 root 账号远程连接。建议创建一个新用户:

sudo mysql -u root -p

进入 MySQL 命令行后,执行以下 SQL(替换为你自己的用户名和密码):

-- 创建新用户
CREATE USER 'myuser'@'%' IDENTIFIED BY 'your_strong_password';

-- 授予所有权限(或按需缩小权限)
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%';

-- 刷新权限
FLUSH PRIVILEGES;

-- 退出
EXIT;

7. 配置腾讯云防火墙

与方法一相同,必须前往腾讯云控制台,为该实例添加防火墙规则,放行 TCP 3306 端口。否则即使 MySQL 配置正确,也无法从外部连接。


常见问题与注意事项

  1. 连接超时?

    • 90% 的原因是腾讯云控制台的“防火墙”未放行 3306 端口。请优先检查此处。
    • 其次是云服务器内部的防火墙(如 ufw 或 firewalld),确保内部也放行了 3306。
  2. 字符集乱码?

    • 建议在 /etc/mysql/mysql.conf.d/mysqld.cnf 中 [mysqld] 段落下添加:
      character-set-server=utf8mb4
      collation-server=utf8mb4_unicode_ci
    • 同时在客户端连接时也指定 utf8mb4。
  3. 性能调优?

    • 轻量应用服务器内存有限(如 2GB 或 4GB),MySQL 默认配置可能占用过多内存。可使用 tuned-adm 或手动调整 innodb_buffer_pool_size(建议设为物理内存的 50%-70%),避免 OOM(内存溢出)。
  4. 备份策略

    • 腾讯云轻量应用服务器支持快照功能。建议定期创建系统盘和数据盘的快照,以防误操作导致数据丢失。
    • 对于核心业务,建议配置 MySQL 主从复制或使用云数据库 MySQL 版(RDS)进行托管,以获得更高的可用性和自动备份能力。

总结来说,追求效率和稳定性选“一键应用”,追求控制和定制化选“手动安装”。无论哪种方式,务必记得配置腾讯云防火墙的安全组规则,这是远程访问成功的关键。

未经允许不得转载:CLOUD云枢 » 在腾讯云轻量应用服务器上怎么安装MySQL数据库?