腾讯云轻量服务器和云数据库互通

轻量服务器物美价廉,除了备份麻烦,所以在自建数据库这方面我掂量了好久,最后还是决定买单独的数据库服务。程序崩了没关系,数据没了问题就大了。正好腾讯云有活动,云数据库 1c1g 一年 59,还能续费一年。这比直接买划算多了。

但是,轻量应用服务器默认情况下内网不与云服务器 CVM、云数据库等其他处于私有网络 VPC 中的腾讯云资源内网互通,要想互通,就需要通过关联云联网实现。

这里有篇详细的文章:《如何通过云联网实现轻量服务器访问云数据库 MySQL》

因为文章介绍已经比较详细了,这里只简述一下:

  • 轻量云控制台打开内网互联。
    • 点击“关联云联网”,然后按照指引创建,并同意轻量服务器的关联请求。
    • 云联网管理界面“新增实例”,将数据库所在的网络添加进去。
    • 然后,数据库安全组里放开 3306 的访问。

    按照上面文档的操作,到这里基本就可以了。但是,我什么时候顺利过?等等,有时候还是顺利的,只不过比较少见而已。

    我在如上操作后,telnet 一直报错:telnet: Unable to connect to remote host: No route to host。

    为什么呢?因为我的轻量服务器(10.0.xx.xx/xx)和云数据库(172.17.xx.xx/xx)内网网段不同,所以我访问数据库内网 IP–172.17.xx.xx 怎么也不会成功。

    怎么办呢?改数据库内网。

    先创建一个私有网络,网段设成和轻量服务器差不多(这里可能有点要求,但我不清楚什么要求,因为我创建后就是有效的)。

    然后修改数据库绑定的网络。

    接着,云联网里把刚刚创建的网络添加进去,原来 172 网段的就可以解关联了。

    这样一通操作,轻量服务器和云数据库就打通了。