vanblog博客数据迁移
编辑
2025-06-12
建站教程
00

目录

数据库表结构分析
方案:完全重置

这个博客的方法是我看数据库数据的,不懂的不要轻易使用,直接用博客系统带的备份方案,直接导出json 和 图片。

数据库表结构分析

VanBlog的数据主要存储在MongoDB中,包含以下重要数据:

需要保留的数据(文章数据):

  • articles - 文章内容
  • drafts - 草稿
  • categories - 分类
  • tags - 标签(如果有的话)
  • customPages - 自定义页面
  • moments - 动态
  • viewers - 浏览量统计
  • visits - 访问记录

需要重新配置的数据(系统配置):

  • metas - 站点信息(包含域名配置)
  • users - 用户信息
  • settings - 系统设置
  • tokens - API令牌

方案:完全重置

  1. 备份文章数据
bash
展开代码
# 导出文章数据 docker-compose exec mongo mongoexport --db vanBlog --collection articles --out /data/db/articles_backup.json docker-compose exec mongo mongoexport --db vanBlog --collection drafts --out /data/db/drafts_backup.json docker-compose exec mongo mongoexport --db vanBlog --collection categories --out /data/db/categories_backup.json docker-compose exec mongo mongoexport --db vanBlog --collection custompages --out /data/db/custompages_backup.json docker-compose exec mongo mongoexport --db vanBlog --collection moments --out /data/db/moments_backup.json

对于我的情况,数据跑到这里来了:~/vanblog/vanblog/data/mongo

移动:

bash
展开代码
cd ~/vanblog/vanblog/data/mongo mkdir ~/vanblog/vanblog_backup cp *_backup.json ~/vanblog/vanblog_backup
  1. 删除数据库

在新的地方部署,然后删除数据库的东西:

bash
展开代码
docker-compose down rm -rf /root/van/data/mongo/*
  1. 重新启动并初始化
bash
展开代码
docker-compose up -d # 访问初始化页面重新配置
  1. 恢复文章数据

把备份json文件给到 /root/van/data/mongo :

bash
展开代码
scp

导入数据:

bash
展开代码
# 导入文章数据 docker-compose exec mongo mongoimport --db vanBlog --collection articles --file /data/db/articles_backup.json docker-compose exec mongo mongoimport --db vanBlog --collection drafts --file /data/db/drafts_backup.json docker-compose exec mongo mongoimport --db vanBlog --collection categories --file /data/db/categories_backup.json docker-compose exec mongo mongoimport --db vanBlog --collection custompages --file /data/db/custompages_backup.json docker-compose exec mongo mongoimport --db vanBlog --collection moments --file /data/db/moments_backup.json
如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:Dong

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC。本作品采用《知识共享署名-非商业性使用 4.0 国际许可协议》进行许可。您可以在非商业用途下自由转载和修改,但必须注明出处并提供原作者链接。 许可协议。转载请注明出处!