MongoDB语法(备份恢复)

1、数据导出:mongoexport
Mongdb中的mongoexport 工具可以将collection 导出成JSON格式或者CSV格式的文件。可以通过参数指定导出的数据项,也可以根据指定的条件导出数据。
语法:
mongoexport -d dbname -c collectionname -o fiepath --type json/csv -f field
参数说明:
-d: 数据库名
-c: collection名
-o: 输出文件路径
--type: 输出的格式。默认为json
-f: 输出的字段,如果type为CSV,则需要加上 -f "字段名"

实例:
mongoexport -d wcx2020 -c articles -o D:\mongodbBackup\mongosql.json --type json
2、数据导入
语法:
mongoexport -d dbname -c collectionname --file filepath -type json/csv -f field
参数说明:
-d: 数据库名
-c: collection名
--file: 导入文件路径
--type: 输出的格式。默认为json
-f: 导入的字段名

实例:
mongoimport -d wcx2020 -c articles -file D:\mongodbBackup\mongosql.json --type json


3、数据备份(导出所有数据)
语法:
mongodump -h connection -d dbname -o filepath
参数说明:
-h: 连接IP和端口号(默认127.0.0.1:27017
-d: 数据库名
-o: 导出文件路径

实例:
mongodump -h 127.0.0.1 -d wcx2020 -o D:\mongodbBackup\

4、数据恢复
语法:
mongorestore -h connection -d dbname --dir filepath
参数说明:
-h: 连接IP和端口号(默认127.0.0.1:27017)
-d: 数据库名
--dir: 备份的数据库的路径

实例:
mongorestore -h 127.0.0.1 -d wcx2020 --dir D:\mongodbBackup

注意事项:
恢复的时候可以加--drop 覆盖原来的数据库(慎用),最好提前备份好当前数据库;同时要更改数据库名,不然恢复会失败。

作者:李牧敲代码
链接:https://www.jianshu.com/p/64105f498201
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
5、恢复所有库
mongorestore /root/sql
https://www.cnblogs.com/my-blogs-for-everone/articles/9749842.html
6、删库
use db
db.dropDatabase()
https://www.runoob.com/mongodb/mongodb-create-database.html
7、mongodb导入json文件
MongoDB导入json格式的文件命令为:mongoimport
在下面的这个例子中,使用mongoimport命令将文件contacts.json中的内容导入user数据库的contacts的数据表中。
mongoimport --db users --collection contacts --file contacts.json
演示过程:
1、切换到MongoDB安装的bin目录,启动服务
./mongod --dbpath /home/test/ --logpath /home/test/log/xushuai.log --fork
2、切换到bin目录下,启动客户端
./mongo
3、开始导入json格式的文件:注意是在bin目录下, 而不是在客户端shell运行mongoimport命令。
./mongoimport --db taobao --collection dress --file /home/test/taobao.json
8、mongo创建用户

# 设置超级管理员
use admin
db.createUser({user: 'admin', pwd: '123456', roles:[{role: 'root',db: 'admin' }]})

use.admin  
db.createUser({
  user: 'admin',  // 用户名
  pwd: '123456',  // 密码
  roles:[{
    role: 'root',  // 角色
    db: 'admin'  // 数据库
  }]
})
show users;
vim /etc/mongo.conf
security:
  authorization: enabled
systemctl restart mongod
# 登陆
// 方式一
mongo
use admin
db.auth('admin', '123456')

// 方式二
mongo admin -u admin -p 123456

# 添加数据库用户
use rcpay  // 跳转到需要添加用户的数据库
db.createUser({
  user: 'ty',  // 用户名
  pwd: 'abcefg',  // 密码
  roles:[{
    role: 'readWrite',  // 角色
    db: 'ty'  // 数据库名
  }]
})
# 常用命令
show users  // 查看当前库下的用户

db.dropUser('testadmin')  // 删除用户

db.updateUser('admin', {pwd: '654321'})  // 修改用户密码

db.auth('admin', '654321')  // 密码认证
# 角色
数据库用户角色:read、readWrite
数据库管理角色:dbAdmin、dbOwner、userAdmin
集群管理角色:clusterAdmin、clusterManager、clusterMonitor、hostManager
备份恢复角色:backup、restore
所有数据库角色: readAnyDatabase、readWriteAnyDatabase、userAdminAnyDatabase、
dbAdminAnyDatabase
超级用户角色:root


9、mongo备份单个集合
mongoexport -h dbhost -d dbname -c collectionname -f collectionKey -o dbdirectory
例:mongoexport -h dbhost -d ABC -c future -o future
-h: MongoDB所在服务器地址
-d: 需要恢复的数据库实例
-c: 需要恢复的集合
-f: 需要导出的字段(省略为所有字段)
-o: 表示导出的文件名
10、单个集合恢复
mongoimport -d dbhost -c collectionname –type csv –headerline –file
-type: 指明要导入的文件格式
-headerline: 批明不导入第一行,因为第一行是列名
-file: 指明要导入的文件路径
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值