写在前面

虽然我的随笔大部分都是记录在静态博客站点和博客园平台的,但是有一些临时的想法还是使用了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数据库导出数据(命令)

迁移mm_wiki数据实践记录的更多相关文章

  1. Oracle数据迁移至HBase操作记录

    Oracle数据迁移至HBase操作记录 @(HBase) 近期需要把Oracle数据库中的十几张表T级别的数据迁移至HBase中,过程中遇到了许多苦难和疑惑,在此记录一下希望能帮到一些有同样需求的兄 ...

  2. EF CodeFirs 代码迁移、数据迁移

    最近悟出来一个道理,在这儿分享给大家:学历代表你的过去,能力代表你的现在,学习代表你的将来. 十年河东十年河西,莫欺少年穷 学无止境,精益求精    标题叫EF CodeFirs 代码迁移.数据迁移. ...

  3. Python 基于Python从mysql表读取千万数据实践

    基于Python 从mysql表读取千万数据实践   by:授客 QQ:1033553122 场景:   有以下两个表,两者都有一个表字段,名为waybill_no,我们需要从tl_waybill_b ...

  4. 大数据实践:ODI 和 Twitter (二)

    大数据实践:ODI和Twitter(二) 在前面的文章中,我们已经使用flume将数据从twitter抓取到Hive中,现在我们来看看ODI(Oracle Data Integrator)如何在HIV ...

  5. Ionic3项目实践记录

    Ionic3首次项目实践记录 标签(空格分隔): Angular Ionic Ionic3踩坑 1. 路由懒加载(lazy load) 如果设置了懒加载,就必须全部懒加载(包括TabsPage),否则 ...

  6. 9-2、大型项目的接口自动化实践记录----递归判断两个json串是否相等

    1.已知json串构成的情况下判断 先构造一下场景,假设已经把各个数据都移除掉不对比的字段 图1 预期.实际结果,复杂接口返回多层嵌套json时,同下 图2 预期.实际结果值为:{child_json ...

  7. 9-1、大型项目的接口自动化实践记录----数据库结果、JSON对比

    上一篇写了如何从DB获取预期.实际结果,这一篇分别对不同情况说下怎么进行对比. PS:这部分在JSON对比中也适用. 1.结果只有一张表,只有一条数据 数据格式:因为返回的是dicts_list的格式 ...

  8. 8、大型项目的接口自动化实践记录----DB分别获取预期结果、实际结果

    上一篇实现数据分离升级版--从DB获取数据,以及对应的请求实现,作为一个case,还缺少了预期结果与实际结果的获取及对比.因为前面的文章已经说过接口返回值的获取及对比,所以这篇不说这块了,这篇说一下D ...

  9. 3、大型项目的接口自动化实践记录----开放API练习

    开始做实际项目前,先拿个网上的简单API练下手 一.API说明: 接口信息 接口名:京东获取单个商品价格 地址:http://p.3.cn/prices/mgets 入参:skuids=J_商品ID& ...

  10. 2、大型项目的接口自动化实践记录--接口测试简介及RequestsLibrary关键字简介

    1.接口测试简介 1)先简单介绍下接口测试,那么什么是接口测试呢? 百科的回答:接口测试是测试系统组件间接口的一种测试.接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点. 看起来有 ...

随机推荐

  1. [转帖]S3FS 简介及部署

    PS:文章一般都会先首发于我的个人Blog上:S3FS 简介及部署 · TonghuaRoot's BloG. ,有需要的小伙伴可以直接订阅我的Blog,获取最新内容. 0x00 前言 S3FS可以把 ...

  2. [转帖]设置LD_LIBRARY_PATH不起作用(失效)

    部分Linux系统设置LD_LIBRARY_PATH变量,并不能生效,此时需要将变量值写入/etc/ld.so.conf文件中,如下所示: include ld.so.conf.d/*.conf in ...

  3. Python学习之四_部分battery的学习

    Python学习之四_部分battery的学习 CentOS升级pip的方法 yum install python3 之后, 一般centos的版本都很低, 有时候很多module 是无法安装的. 一 ...

  4. 【转帖】Linux性能优化(十四)——CPU Cache

    一.CPU Cache 1.CPU Cache简介 CPU Cache是位于CPU与内存之间的临时存储器,容量比内存小但交换速度却比内存要快得多.Cache的出现主要是为了解决CPU运算速度与内存读写 ...

  5. 【转帖】Seccomp、BPF与容器安全

    语音阅读2022-06-30 20:26 本文详细介绍了关于seccomp的相关概念,包括seccomp的发展历史.Seccomp BPF的实现原理已经与seccomp相关的一些工具等.此外,通过实例 ...

  6. [转帖]SPEC2006移入docker后的运行问题

    https://www.cnblogs.com/csxyc/p/7157890.html 实验需要给SPEC2006的benchmark绑定CPUID,于是想到用docker分配CPU资源,写一个简单 ...

  7. rabbitmq rpm包安装以及简单设置用户的方法

    公司有一台性能比较好的power机器. 同事要求安装rabbitmq 今天尝试进行了一下处理 公司里面有网络有相应的源 性能还不错 第一步安装一下依赖的erlang yum install erlan ...

  8. Spring Boot日志框架Slf4j+logback

    一.简介 Slf4j Java的简单日志记录外观(Simple Logging Facade for Java )可作为各种日志记录框架(例如java.util.logging,logback,log ...

  9. apb vnext DynamicCient

    1.在需要的服务客户端(xx.HttpApi.Client)Nuget 引用和模块依赖 引用:VOLO.APB.HTTP.CLENT [dependsOn(typeof(AbpHttpClientMo ...

  10. 强化学习从基础到进阶-常见问题和面试必知必答[6]:演员-评论员算法(advantage actor-critic,A2C),异步A2C、与生成对抗网络的联系等详解

    强化学习从基础到进阶-常见问题和面试必知必答[6]:演员-评论员算法(advantage actor-critic,A2C),异步A2C.与生成对抗网络的联系等详解 1.核心词汇 优势演员-评论员(a ...