mongoDB整个文件夹拷贝备份还原的坑
2024-08-23 05:21:52
现网有一个mongoDB数据库需要搬迁到新服务器,开发那边的要求是先搬迁现在的数据库过去,然后剩下的以后他们用程序同步。
数据库大楷20G左右,现网是主备仲裁的,停掉备点,拷贝了全部文件。
新服务器也是主备仲裁模式,数据还原后,显示OTHER,查看不了数据库,用rc.conf()查看,是以前的节点配置。也改不了,提示不是主。
接着将本地配置文件中的副本集取消,单点启动,用三方工具删除local数据库(副本集的信息全在里面),然后修改配置文件为副本集,重新启动,初始化副本集,完成。#每次我们都是用的use admin 其实配置信息是在local
后来还是有问题,发现数据库不能写入,怀疑是lock文件的问题,然后有把local文件删除了。基本能用了,但是折腾了这么久还是不敢保证数据没有问题,我们还用count统计了条数,后来备点又发现数据不一致,后来还是放弃了。
总结了一下,如果要整个文件拷贝的话,其实顺序应该是这样:
1、老数据库将副本集踢出去,然后再停服务,拷贝。
2、新服务器不要着急用初始化副本集,数据拷贝完成后在启动,初始化副本集。
最好还是用mongodb自带的备份还原最好了,我们最后也选择的这个,其实速度还可以。很快就备份还原了,注意一点就是不要等个数据库系统备份,最好每个数据库单独备份,成功率高些。不用的库也可以不用了。
最新文章
- Python Virtualenv运行Django环境配置
- iOS---数据本地化
- [ javascript html Dom image 对象事件加载方式 ] 对象事件加载方式
- Java设计模式(Design Patterns In Java)读书摘要——第1章 绪论
- JVM垃圾回收机制总结(4) :新一代的垃圾回收算法
- JMS - QueueBrowser
- ASP.NET如何使用JSON
- 重温delphi之:如何将Bitmap位图与base64字符串相互转换
- Radmin远程控制软件
- ORA-00913错误:PL/SQL: ORA-00913: too many values
- @Controller注解
- MyBatis(一):配置并使用
- Linux 操作之基础命令
- JS数组添加删除
- ETL数据采集方法
- Day17总结
- 正确清理binlog日志
- MyCat读写分离、分库分表
- 自己编写的Shell
- Linux文件管理常用命令用法总结
热门文章
- [火星补锅] 水题大战Vol.2 T2 &;&; luogu P3623 [APIO2008]免费道路 题解
- 手把手教你学Dapr - 3. 使用Dapr运行第一个.Net程序
- JS控制文本框禁止输入特殊字符
- candy leetcode C++
- 国产新芯片连不上J-Link?芯海CS32L010系列芯片JLink配置方法
- cesium制作自己的骑行轨迹
- CSS学习(三)特指度和层叠
- 端口被占用(启动tomcat时 错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 1099的解决办法)
- js判断是否是同一域名
- Mysql - 如何存储 10位、13位的 unix 时间戳?