1.导出:
导出数据可以使用命令:
代码语言:javascript复制mongoexport -h dbhost -d dbname -c collectionName -o output
参数说明:
-h 数据库地址
-d 指明使用的库
-c 指明要导出的集合
-o 指明要导出的文件名
举个例子:
代码语言:javascript复制mongoexport -h 127.0.0.1:27017 -d xxx -c xxx -o C:xxxxDesktop/test.json
导出成功后是这样的的一个json
2.导入:
导入数据可以使用命令:
代码语言:javascript复制mongoimport -h dbhost -d dbname -c collectionname output
参数说明:
-h 数据库地址
-d 指明使用的库
-c 指明要导入的集合
举例:(帮刚才导出的数据从数据库删除掉,再通过这个命令导入)
ongoimport -h 127.0.0.1:27017 -d xx -c xx C:xxxxDesktop/test.json
然后通过robo3T就可以看到刚才导入的数据了
补充:如果我们的mongo设置了用户权限,按照上面的命令是无法正常操作的
需要加两个参数:-u "userName" -p "password" 即可
完整实例:
代码语言:javascript复制mongoexport -h 127.0.0.1:27017 -d xxx -c xxx -o C:xxxxDesktop/test.json -u "userName" -p "password"
3.备份
如果想要对整个数据库进行备份需要用:mongodump
# 语法:
代码语言:javascript复制mongodump -h "数据库所在ip地址" -d "数据库名称" -o "保存文件的目录" -u xxx -p xxx
参数说明:
-h: MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
-d: 需要备份的数据库实例,例如:test
-o: 备份的数据存放位置,例如:/home/mongodump/,当然该目录需要提前建立,这个目录里面存放该数据库实例的备份数据。
例:
# 将本地数据库familyTv的数据保存到当前目录下
mongodump.exe -h 127.0.0.1:27017 -d familyTv -o ./
4.数据恢复
数据恢复:mongorestore
# 语法:
代码语言:javascript复制mongorestore -h "数据库所在ip" -d "要保存数据的数据库名称" --dir "存放数据的目录"
参数或名:
-h: MongoDB所在服务器地址
-d: 需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
--dir: 备份数据所在位置,例如:/home/mongodump/
--drop: 恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用!
# 例:
mongorestore -h 127.0.0.1 -d familyTv --dir familyTv