LeanCLoud关服后迁移评论数据到TiDB

摘要

迁移数据到TiDB

由于LeanCloud决定关闭服务,因此需要把博客的评论数据迁移到新地方。刚好hugo next主题开发者 凡梦星尘 写了教程,于是跟着操作了一下,迁移目标是TiDB数据库。

导出数据

第一步,先登陆waline。去vercel里找到项目,登陆waline管理地址,类似https://comment-component-xxxx-xxxx-projects.vercel.app。

登陆后,点击头像进入设置->“Managment”->“Migration”->“Export”,下载评论数据文件waline.json。

image-20260320114902014

创建TiDB数据库

参考waline上的教程

简单来讲就是:创建账号登陆TiDB Cloud;进入Clouser0,新建数据库和数据表;设置数据库登陆密码,记录下:TIDB_HOST、TIDB_PORT、TIDB_DB、TIDB_USER 和 TIDB_PASSWORD。

下载转换脚本

GitHub地址

根据平台下载对应版本。其中:

waline-data-import-tool-arm64 对应 Linux arm64

waline-data-import-tool-linux 对应 Linux x86_64

waline-data-import-tool-darwin-amd64 对应 macOS Intel

waline-data-import-tool-darwin-arm64 对应 macOS Apple Silicon

waline-data-import-tool.exe.zip 对应 windows

准备就绪,进行转换

首先确认waline-data-import-tool-darwin-arm64和waline.json都在Download目录下。

在Download目录新建一个文件waline-tidb.ini,安装如下格式填写:

1
2
3
4
5
6
7
[tidb]
host=gateway01.xxx.prod.aws.tidbcloud.com
port=4000
user=xxxx.root
password=xxxxx
database=waline
ca=/etc/ssl/cert.pem

打开终端,进入Download目录。执行:./waline-data-import-tool-darwin-arm64 -c waline-tidb.ini -f waline.json

等待数据导入完成即可。

Vercel配置

执行完导入后,数据就在TiDB中了,但是Vercel中的项目用的还是LeanCloud,需要修改环境变量并重新部署。

进入Vercel,选择"setting"->“Environment Varibles”,添加TIDB_HOST、TIDB_PORT、TIDB_DB、TIDB_USER 和 TIDB_PASSWORD四个变量,并且删除LeanCloud相关的LEAN_MASTER_KEY等配置

点击右下角的 redeploy 弹窗。

image-20260320115014740

如果没有弹窗,可以点击"Deployments"选项卡,选择带"current"标签的实例,进行"redeploy"。

image-20260320114850597

等部署完,可以在网站评论一下,然后在TiDB Cloud的 SQL Editor 里执行"select * from wl_Comment order by id desc limit 3;",看看有没有刚才的评论。

image-20260320115212170