连接腾讯云轻量服务器与云数据库(如 TencentDB)可以通过以下步骤实现,确保安全可靠的网络通信:
一、准备工作
-
获取数据库信息
- 云数据库实例的 内网/X_X地址、端口(如 MySQL 默认 3306)。
- 数据库的 用户名 和 密码。
- 数据库名(需提前创建)。
-
网络环境配置
- 推荐内网连接(同地域下免费且低延迟):
- 轻量服务器和云数据库需在同一地域(如广州、上海等)。
- 云数据库需配置轻量服务器的 内网IP 到白名单(安全组/防火墙)。
- X_X连接(需公网IP,有安全风险):
- 开启云数据库的X_X访问功能,并配置轻量服务器的 公网IP 到白名单。
- 推荐内网连接(同地域下免费且低延迟):
二、配置步骤
1. 数据库侧配置
- TencentDB 控制台操作:
- 进入 TencentDB 控制台。
- 选择实例 → 安全组 → 添加规则,允许轻量服务器的 内网IP(或公网IP)访问数据库端口(如 3306)。
- 确保数据库账号有远程连接权限(如 MySQL 的
'user'@'%')。
2. 轻量服务器侧配置
-
安装数据库客户端工具(以 MySQL 为例):
# Ubuntu/Debian sudo apt update && sudo apt install mysql-client # CentOS sudo yum install mysql -
测试连接:
mysql -h [数据库地址] -P [端口] -u [用户名] -p输入密码后,若成功进入 MySQL 命令行即表示连接正常。
三、应用代码连接示例
1. Python 示例(使用 pymysql)
import pymysql
conn = pymysql.connect(
host='数据库内网IP或X_X域名',
port=3306,
user='用户名',
password='密码',
database='数据库名'
)
cursor = conn.cursor()
cursor.execute("SELECT VERSION()")
data = cursor.fetchone()
print("Database version:", data)
conn.close()
2. PHP 示例
<?php
$servername = "数据库地址";
$username = "用户名";
$password = "密码";
$dbname = "数据库名";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
四、常见问题排查
-
连接超时
- 检查安全组是否放行端口。
- 确认轻量服务器和数据库在同一地域(内网连接时)。
-
权限拒绝
- 检查数据库账号的 Host 权限(如
%或指定 IP)。 - 确保密码正确,可通过控制台重置密码。
- 检查数据库账号的 Host 权限(如
-
X_X连接不稳定
- 优先使用内网,X_X可能受带宽或防火墙限制。
五、安全建议
- 强制使用内网:同地域下内网通信更安全快速。
- 限制访问IP:仅允许轻量服务器的 IP 访问数据库。
- 启用SSL加密:防止数据明文传输(需在数据库控制台配置)。
通过以上步骤,轻量服务器即可安全连接至腾讯云数据库。如有更复杂需求(如 VPC 网络互通),可参考 腾讯云官方文档。
云服务器