在腾讯云服务器(CVM)上安装 MySQL 是一个常见的操作,适用于搭建网站、数据库服务等场景。以下是基于 Linux 系统(以 CentOS 7 或 Ubuntu 20.04 为例) 在腾讯云服务器上安装 MySQL 的完整步骤。
🌐 前提条件
- 已购买腾讯云 CVM(云服务器),系统为 CentOS 或 Ubuntu。
- 已配置安全组,开放了 SSH(默认22)端口。
- 使用 root 用户或有 sudo 权限的用户登录服务器。
✅ 安装 MySQL(以 CentOS 7 为例)
1. 登录服务器(通过 SSH)
ssh root@你的公网IP
2. 更新系统软件包(可选)
yum update -y
3. 添加 MySQL 官方 Yum 仓库
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
如果你使用的是其他版本的 CentOS,请选择对应的仓库地址:MySQL Yum Repository
4. 安装 MySQL 服务器
yum install mysql-community-server -y
5. 启动 MySQL 服务并设置开机自启
systemctl start mysqld
systemctl enable mysqld
6. 获取临时密码
MySQL 初始安装后会生成一个临时密码,查看方式如下:
grep 'temporary password' /var/log/mysqld.log
输出示例:
A temporary password is generated for root@localhost: abcdefg123!
记录这个密码,稍后用于初始化设置。
7. 运行 MySQL 安全初始化
mysql_secure_installation
按照提示操作:
- 输入临时密码;
- 设置新的 root 密码;
- 移除匿名用户;
- 禁止 root 远程登录(根据需求选择);
- 删除 test 数据库;
- 重载权限表。
8. 登录 MySQL 测试
mysql -u root -p
输入新设置的密码即可进入 MySQL shell。
✅ 安装 MySQL(以 Ubuntu 20.04 为例)
1. 登录服务器
ssh root@你的公网IP
2. 更新软件包索引
apt update
3. 安装 MySQL 服务器
apt install mysql-server -y
4. 启动 MySQL 并设置开机启动
Ubuntu 一般安装完自动启动,也可以手动检查:
systemctl start mysql
systemctl enable mysql
5. 运行安全初始化
mysql_secure_installation
根据提示进行操作,设置 root 密码和相关安全选项。
6. 登录测试
mysql -u root -p
🔐 开放远程访问(可选)
如果你想从本地或其他机器连接到腾讯云上的 MySQL:
1. 修改 MySQL 配置文件
编辑 /etc/my.cnf(CentOS)或 /etc/mysql/mysql.conf.d/mysqld.cnf(Ubuntu)
找到 bind-address 行:
bind-address = 127.0.0.1
改为:
bind-address = 0.0.0.0
保存并退出。
2. 重启 MySQL 服务
systemctl restart mysqld # CentOS
# 或
systemctl restart mysql # Ubuntu
3. 创建远程访问用户(MySQL 内部命令)
CREATE USER 'your_user'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'your_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
4. 腾讯云控制台配置安全组规则
进入 腾讯云控制台 > 云服务器 > 安全组,添加入站规则:
- 协议类型:TCP
- 端口范围:3306
- 源 IP:0.0.0.0/0 (或指定 IP)
- 策略:允许
🧪 验证远程连接(可选)
你可以使用 Navicat、DBeaver、MySQL Workbench 等工具连接腾讯云服务器的 MySQL。
❗注意事项
- 生产环境不要开放
root@%,应创建专用用户。 - 定期备份数据,防止数据丢失。
- 可考虑使用腾讯云数据库 TDSQL 替代自建 MySQL。
如果你告诉我你使用的具体操作系统(如 CentOS 7、Ubuntu 22.04 等),我可以提供更精确的安装脚本。
是否需要我为你写一个完整的自动化安装脚本?
秒懂云