腾讯云Lighthouse轻量应用服务器接入TDSQL-C云原生数据库

0、引言

看到阿里云的广告,发现云数据库首购如此便宜,再看看腾讯云,居然也有类似活动,果断下单一年。

腾讯云热门云产品首单特惠秒杀,1核2G云服务器首年38元,1核1G云数据库首年9.9元
在配置过程中,原本以为按照文档走就没问题,结果完全连不上数据库,遂发起工单,在腾讯云客服的帮助下完成了配置。

1、重置root密码

https://console.cloud.tencent.com/cynosdb选择TDSQL-C集群,点击点击账号管理中root账号的重置密码

注意:宝塔默认随机生成的root密码只有小写字母+数字,不满足腾讯云要求,建议设置TDSQL-C的密码后将宝塔面板内的root密码设定为一致,方便后续连接!

2、新建云联网

轻量应用服务器的网络与云服务器、云数据库有网络隔离,因此需要使用云联网来进行通信。

2.1、查看内网IP

https://console.cloud.tencent.com/lighthouse/中选择指定实例,查看轻量应用服务器内网IP。

例如:我的轻量应用服务器内网IP是10.0.x.x。

在云原生数据库集群列表中查看数据库内网IP。

例如:我的云原生数据库内网IP是172.17.x.x。

提示:可能集群列表中不会显示公网访问地址,我这里是开启了又关闭了,所以会显示一行。

注意:请记住内网IP,在后续会使用!

2.2、新建云联网

https://console.cloud.tencent.com/vpc/ccn/新建指定区域的云联网。
如果服务器和数据库在同一地域,服务质量可不选,且有5Gbps免费带宽。
此处关联实例选择TDSQL-C的VPC。

2.3、关联云联网

https://console.cloud.tencent.com/lighthouse/ccn/对应地域关联云联网,并在https://console.cloud.tencent.com/vpc/ccn同意申请即可将轻量应用服务器和云原生数据库的网络关联。
注意:关联后要查看路由表,确认全部为有效

2.4、检查连通性

在服务器内安装Telnet。
以CentOS为例,执行:

Bash
1
yum install telnet

安装完成后,使用:

Bash
1
telnet 172.17.x.x 3306

可以测试服务器可否连接到数据库。
提示:记得把IP和端口替换为实际数据。

成功示例:

失败示例:

2.5、错误排查

如果按照上述步骤,可以测试成功,请忽略此部分。

如果无法连通,请删除云联网,重新按照上文流程配置。

若仍无法连通,请在服务器上执行:

Bash
1
iptables -nvL

Bash
1
route -n

常见问题:IP段冲突

联系上文可以发现,数据库的IP段和本地Docker的IP段发生了冲突,都处于172.17.x.x/16,因此需要修改Docker的配置。

/etc/docker/daemon.json
中添加:
json
1
    "bip": "172.20.0.1/16"

例如,添加完成后,完整配置文件为:

此处内容需要评论回复(自动审核)或加入 QQ 技术交流群(立即获得内容)后方可阅读。赞助(二维码在文章下方)后联系作者可一次性解锁所有(包括之后的新文章)。

注意:请检查是否符合JSON语法。
添加完成后在宝塔中保存或手动重启Docker即可。推荐使用宝塔Linux面板,保存配置后会自动重启Docker和容器。

宝塔服务器面板,一键全能部署及管理,送你3188元礼包,点我领取https://www.bt.cn/?invite_code=MV93cm1wcGQ=

若检查完此问题仍无法连接,请在腾讯云提交工单或申请在线支持

3、数据迁移

腾讯云提供了在线管理,但是对移动端很不友好,并且需要登录腾讯云账号。这里推荐使用phpMyAdmin。
注意:在执行下面的步骤前,请先登录服务器,将每个数据库单独导出为.sql或.csv格式,可以使用phpMyAdmin。

3.1、使用在线工具

访问https://dms.cloud.tencent.com/#/login,选择对应实例,输入前面设置的root账号密码即可登录。

3.1.1、导入数据

选择库管理,

点击新建数据库。

选择导入导出,点击导入。

选择刚刚创建的数据库,上传对应的.sql文件即可导入。

3.1.2、创建用户

回到云原生数据库的集群管理,

在账号管理中新建账号。

账号和密码同旧数据库的配置即可。
注意:主机名请填写上文查看的服务器内网IP,如果填写外网IP会被拒绝连接!

3.1.3、分配权限

新创建的账号默认没有任何权限。因此,我们要分配对应权限。
回到账号管理,选择刚刚创建的账号,点击修改权限。

选择对象级特权,选择对应数据库,开启全部权限即可。

3.2、使用phpMyAdmin

安装部分可在宝塔面板中一键完成,因此只需进行连接操作。
将phpMyAdmin下,配置文件

/www/server/phpmyadmin/phpmyadmin_.../config.inc.php
约第32行
此处内容需要评论回复(自动审核)或加入 QQ 技术交流群(立即获得内容)后方可阅读。赞助(二维码在文章下方)后联系作者可一次性解锁所有(包括之后的新文章)。

即可使用对应的账号密码登录phpMyAdmin管理数据库。

phpMyAdmin相信大家并不陌生,因此使用此方法的导入导出、权限分配不再赘述。

4、结语

虽然接入云数据库后,网站似乎快了一些,站库分离也更安全,服务器负载也没那么高了;但是,不能使用宝塔面板管理数据库始终有些别扭。我尝试修改宝塔面板文件,但是找不到方法让宝塔的数据库页面连接到云数据库。

腾讯云Lighthouse轻量应用服务器接入TDSQL-C云原生数据库

https://blog.tsinbei.com/tw/archives/157/

文章作者
Hsukqi Lee
发布于

2022-02-07

修改于

2022-07-28

许可协议

CC BY-NC-ND 4.0

评论

昵称
邮箱
网址
暂无