mongo库的相关操作经验

操作mongo相关经验:

1.创建数据库用户名

db.createUser(
 {
   user: "bianque",
   pwd: "123456",
   roles: [ { role: "readWrite", db: "bianque" } ]
  }
)
添加权限:
db.auth('bianque','123456'); //用户名,密码

配置远程连接:

   编辑文件:/etc/mongodb.conf

   修改后的内容如下:

    bind_ip = 0.0.0.0

    port = 27017

   重启mogo:

   sudo service mongodb restart

 

2.启动mogod:sudo service mongod start,测试:mongo

3.连接数据库命令:mongo -u 用户名 -p 密码  -h IP:port/数据库名称

mongo -u opsmart_demo -p q1w2e3r4 192.168.6.252/opsmart_demo

连接本地:mongo localhost/opsmart_local

4.备份数据

整个数据库导出:mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径

sudo mongodump -h 192.168.6.219:27017 -u opsmart -p q1w2e3r4 -d opsmart -o ./

恢复数据:

mongorestore -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 --drop 文件存在路径

指定表恢复数据:

mongorestore -h localhost --port 27017 -u dbuser -p pwd -d dbname -c 表名 --drop 表名.bson

备份到本地数据库, 如果没有这个数据库会新建一个:

mongorestore -d opsmart_syy ./opsmart_syy/

5.导出导入数据

导出:
按表格导出,需要先建立一个phytopology_node.dat文件:mongoexport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 -o 文件名

mongoexport -h 118.190.208.205 -u opsmart -p q1w2e3r4 -d opsmart -c phytopology_node -o ./phytopology_node.dat

按表格字段导入:mongoexport -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -c 表名 -f 字段 -q 条件导出 -o 文件名

mongoexport -h 192.168.6.252 -u opsmart_demo -p q1w2e3r4 -d opsmart_demo -c phytopology_version -f _id,version,latest_date,public_date,server_date -o ./phytopology_version.dat

导入:

mongoimport -h 118.190.208.205 -u opsmart -p q1w2e3r4 -d opsmart -c phytopology_link --upsert ./phytopology_link.dat

导入csv格式:

mongoimport -h 10.10.2.149 -p 27017 -d neikong -c dmzd --type csv --headerline --file ./dmzd.csv

5.恢复数据

进入到文件目录中

mongorestore -h localhost:27017 -u opsmart -p q1w2e3r4 -d opsmart --drop ./

6.批量修改

db.getCollection('AppDict').update({},{$set:{app_id:ObjectId("5bfd0dd81e1f2e4890995e43")}},{multi:true,upsert:false})

原文地址:https://www.cnblogs.com/jlj9520/p/7526482.html