MongoDB增量备份
Posted jingjimanbu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MongoDB增量备份相关的知识,希望对你有一定的参考价值。
MongoDB的增量备份是通过Oplog来实现的。
在MongoDB复制集中,在主节点上的所有的对数据库的操作,都会在System -> local->Collections->oplog.rs 中记录下来。
增量备份可以通过对表中的相应时间中的操作记录进行备份,然后对备份的BSON文件进行恢复。
备份脚本
rem ******MongoDB backup start******** @echo off echo wscript.echo DateDiff("s", "01/01/1970 00:00:00", Date())>sjc.vbs for /f %%i in (‘cscript sjc.vbs /nologo‘) do set startDate=%%i set /a "startDate=%startDate%-28800" echo %startDate% set /a "endDate=%startDate%+86400" echo %endDate% set "Ymd=%date:~0,4%%date:~5,2%%date:~8,2%0%time:~1,1%%time:~3,2%%time:~6,2%" md E:mongodbBackupackup_%Ymd% "C:Program FilesMongoDBServer4.0inmongodump.exe" --host=localhost --port=27017 --authenticationDatabase=admin -d local -c oplog.rs --query "{"ts":{$gte:Timestamp(%startDate%, 1),$lt:Timestamp(%endDate%, 1)},ns:/^spark-demo/}" -o E:mongodbBackupackup_%Ymd% @echo on rem ******MongoDB backup end********
恢复脚本
"C:Program FilesMongoDBServer4.0inmongorestore.exe" --host=127.0.0.1 --port=27017 --oplogReplay --authenticationDatabase=admin E:mongodbBackupackup_20190917072132
以上是关于MongoDB增量备份的主要内容,如果未能解决你的问题,请参考以下文章