在腾讯云服务器上部署 MySQL 数据库,通常包括以下几个步骤。以下以 CentOS 7/8 系统为例,介绍如何在腾讯云 CVM(Cloud Virtual Machine)上安装和配置 MySQL。
✅ 一、准备工作
1. 登录到腾讯云服务器
你可以通过 SSH 登录你的腾讯云服务器:
ssh root@你的公网IP
或使用密钥登录:
ssh -i /path/to/private_key root@你的公网IP
✅ 二、安装 MySQL
方法一:使用官方 Yum 源安装 MySQL(推荐)
1. 下载并添加 MySQL 官方 Yum 源
wget https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
sudo rpm -Uvh mysql80-community-release-el7-7.noarch.rpm
注意:如果你是 CentOS 8,请选择对应的版本,或者将
el7改为el8。
2. 安装 MySQL 服务
sudo yum install mysql-server
3. 启动 MySQL 并设置开机自启
sudo systemctl start mysqld
sudo systemctl enable mysqld
✅ 三、初始化 MySQL 安全设置
MySQL 安装完成后,会自动生成一个临时密码,可以通过以下命令查看:
sudo grep 'temporary password' /var/log/mysqld.log
输出示例:
A temporary password is generated for root@localhost: abcdefg12345
然后运行安全初始化脚本:
sudo mysql_secure_installation
根据提示进行操作:
- 输入临时密码
- 设置新密码
- 移除匿名用户
- 禁止 root 远程登录(可选)
- 删除 test 数据库
- 重载权限表
✅ 四、配置远程访问(可选)
如果你希望从本地或其他服务器连接 MySQL,需要做以下配置:
1. 修改 MySQL 配置文件
编辑 /etc/my.cnf 文件:
sudo vi /etc/my.cnf
注释掉 bind-address 或将其改为 0.0.0.0:
# bind-address = 127.0.0.1
bind-address = 0.0.0.0
保存并重启 MySQL:
sudo systemctl restart mysqld
2. 创建允许远程访问的用户
进入 MySQL:
mysql -u root -p
执行以下 SQL 命令:
CREATE USER 'your_username'@'%' IDENTIFIED BY 'your_password';
GRANT ALL PRIVILEGES ON *.* TO 'your_username'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
替换
your_username和your_password为你自己的用户名和密码。
✅ 五、开放防火墙端口
1. 开放 3306 端口(默认 MySQL 端口)
sudo firewall-cmd --permanent --add-port=3306/tcp
sudo firewall-cmd --reload
或者关闭防火墙(不推荐用于生产环境):
sudo systemctl stop firewalld
sudo systemctl disable firewalld
✅ 六、腾讯云安全组配置
前往 腾讯云控制台 -> 云服务器 CVM -> 安全组 -> 编辑入站规则:
添加一条规则允许 TCP 3306 端口,源 IP 可设为 0.0.0.0/0(或指定 IP 范围)。
✅ 七、测试连接
可以使用 Navicat、DBeaver、MySQL Workbench 或者其他客户端工具,通过公网 IP + 用户名密码连接数据库。
✅ 八、其他建议
- 使用
mysqltuner.pl对 MySQL 性能进行调优。 - 定期备份数据。
- 使用 SSL 加密连接(可选)。
- 设置慢查询日志等优化项。
📝 示例:一键安装脚本(适用于 CentOS 7)
#!/bin/bash
# 安装 MySQL 源
rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
# 安装 MySQL 服务
yum install -y mysql-server
# 启动服务
systemctl start mysqld
systemctl enable mysqld
# 获取初始密码
temp_pass=$(grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}')
# 提示设置密码
echo "Initial password is: $temp_pass"
echo "Please run 'sudo mysql_secure_installation' to set up security."
# 开放 3306 端口
firewall-cmd --permanent --add-port=3306/tcp
firewall-cmd --reload
如需使用 Docker 安装 MySQL 或者使用宝塔面板部署,也可以告诉我,我可以提供相应教程。是否需要?
云计算导航