在腾讯云轻量应用服务器(Lighthouse)上关联 MySQL 数据库,通常有以下几种方式,具体取决于你的 MySQL 是部署在哪里:
一、MySQL 部署在同一台轻量服务器上
场景说明:
MySQL 安装在与轻量服务器同一台机器上,比如你通过宝塔面板或者手动安装了 MySQL。
操作步骤:
-
安装 MySQL
- 可以使用宝塔面板一键安装 MySQL。
- 或者使用命令安装(如 Ubuntu/Debian):
sudo apt update sudo apt install mysql-server
-
启动并设置开机自启
sudo systemctl start mysql sudo systemctl enable mysql -
配置 MySQL 用户权限
登录 MySQL 并创建用户和数据库:CREATE DATABASE your_database; CREATE USER 'your_user'@'localhost' IDENTIFIED BY 'your_password'; GRANT ALL PRIVILEGES ON your_database.* TO 'your_user'@'localhost'; FLUSH PRIVILEGES; -
应用连接数据库
在你的应用中使用如下连接信息:- Host:
127.0.0.1或localhost - Port:
3306 - Database:
your_database - Username:
your_user - Password:
your_password
- Host:
二、MySQL 部署在其他服务器(例如腾讯云 CVM 或远程 MySQL)
场景说明:
MySQL 安装在另外一台服务器上(可能是另一台轻量服务器、CVM 或第三方服务器)。
操作步骤:
-
确保 MySQL 允许远程访问
修改 MySQL 配置文件(通常是
/etc/mysql/mysql.conf.d/mysqld.cnf):bind-address = 0.0.0.0 -
重启 MySQL
sudo systemctl restart mysql -
创建允许远程访问的用户
CREATE USER 'remote_user'@'%' IDENTIFIED BY 'password'; GRANT ALL PRIVILEGES ON your_database.* TO 'remote_user'@'%'; FLUSH PRIVILEGES; -
开放防火墙端口(如 UFW 或系统防火墙)
sudo ufw allow 3306 -
在轻量服务器上测试连接
telnet mysql_server_ip 3306 # 或者 mysql -h mysql_server_ip -u remote_user -p -
配置你的应用程序连接远程 MySQL
- Host:
mysql_server_ip - Port:
3306 - User:
remote_user - Password:
password - Database:
your_database
- Host:
三、使用腾讯云数据库 TDSQL-C for MySQL(推荐)
如果你使用的是腾讯云提供的托管数据库服务(TDSQL-C),操作流程如下:
操作步骤:
-
进入腾讯云控制台 -> 数据库 TDSQL-C 创建实例
- 选择地域(建议与轻量服务器相同)
- 设置白名单(添加轻量服务器公网或私网 IP)
-
获取连接地址
- 控制台会提供内网地址(推荐用于同地域访问)和X_X地址
-
在轻量服务器中连接数据库
使用 MySQL 客户端测试连接:mysql -h 内网IP地址 -P 端口 -u 用户名 -p -
应用配置示例
- Host:
TDSQL-C 内网地址 - Port:
对应端口号 - User:
数据库用户名 - Password:
密码 - Database:
数据库名称
- Host:
四、注意事项
| 项目 | 建议 |
|---|---|
| 同地域访问 | 推荐使用内网地址,速度快且免费 |
| 白名单 | 如果使用 TDSQL-C,务必添加轻量服务器的 IP 到白名单 |
| 安全组 | 轻量服务器和 MySQL 所在服务器都要放行 3306 端口 |
| 性能 | 如果并发高,建议用腾讯云 TDSQL-C 替代自建 MySQL |
五、常见问题排查
- 连接超时:检查安全组、防火墙、MySQL 是否监听 0.0.0.0
- 拒绝连接:检查 MySQL 用户是否允许远程登录(
'user'@'%') - 无法解析域名/IP:确认连接地址是否正确(内网 or X_X)
如果你告诉我你使用的操作系统(如 CentOS、Ubuntu)、MySQL 类型(本地、远程、TDSQL-C)以及你使用的开发框架(如 WordPress、Node.js、Spring Boot),我可以给你更具体的配置方法。需要的话请补充详细信息!
ECLOUD博客