迁移mm_wiki数据实践记录

发布时间 2023-03-24 12:26:59作者: nuccch

写在前面

虽然我的随笔大部分都是记录在静态博客站点和博客园平台的,但是有一些临时的想法还是使用了wiki来记录。
经过多次试用和对比之后,最终选择了mm-wiki来作为自托管的wiki系统。
mm-wiki安装便捷,使用也非常简单,越来越觉得对这个wiki系统的依赖更强了,
虽然mm-wiki的文档全部都是以文件的形式保存到磁盘的,但是元数据需要使用MySQL保存。
为了避免云服务器突然故障或者MySQL出问题,所以定期将元数据和文档进行备份才比较妥当。
如下是备份mm-wiki元数据和文档之后迁移到新环境的详细操作步骤。

数据备份

1.备份数据库
使用mysqldump程序导出数据库完整数据(包含表结构和数据):

mysqldump -u [数据库用户名] -p [要备份的数据库名称] > [备份文件的保存路径]

例如:

[root@VM-24-10-centos ~]# mysqldump -u root -p mm_wiki > mm_wiki_bak.sql

2.备份文档数据
由于mm-wiki是以markdown格式保存所有wiki文档的,所以直接打包数据目录即可。
例如:

[root@VM-24-10-centos data]# tar cvf mm-wiki-data_bak.tar.gz mm-wiki-data

安装mmkiwi

为了将数据迁移到新的环境,需要在新主机上先安装mmwiki,详细安装步骤参考官方文档
需要注意的是:为了避免在迁移之后需要修改参数,最好将新环境的文档数据目录和数据库名称与旧环境保持一致。
如果不一致,可能需要手动修改相应的配置参数。

mm-wiki的安装是通过一个向导页面完成的,非常简单。
安装完毕之后看到如下提示即表明已经完成安装:

启动命令: ./mm-wiki --conf conf/mm-wiki.conf
访问地址:http://127.0.0.1:9898 # 端口是在向导页面设定的

数据恢复

mm-wiki的数据恢复过程包含2个步骤。
第一步:将备份的数据库导入新的数据库。
执行命令:mysql -u用户名 -p 数据库名 < 数据库名.sql
例如:$ mysql -uroot -p mm_wiki < /home/zhangsan/mm_wiki_bak.sql

第二步:将备份的wiki文档数据文件解压到新系统的数据目录。
执行命令:tar xvf mm-wiki-data_bak.tar.gz -C /home/zhangsan/mm_wiki_data/

完成上述2个步骤之后,启动新环境的mm-wiki,使用设置的管理员用户名登录即可看到之前的数据了。

执行如下命令启动:

./mm-wiki --conf conf/mm-wiki.conf

如果希望启动到后台,可以执行:

nohup ./mm-wiki --conf conf/mm-wiki.conf > /dev/null 2>&1 &

【参考】
mysql数据库导出数据(命令)