db.xxx.stats() 查看表的大小
db.xxx.remove({'endtime':{'$lte':ISODate('2018-10-01')}}) 删除小于等于固定时间的数据。
db.user.update({'name':'zhangsan'},{$set:{'age': 21}},{multi:true})
db.col.update({'title':'MongoDB 教程'},{$set:{'title':'MongoDB'}}) 修改表数据
WriteResult({ "nMatched" : 1, "nUpserted" : 0, "nModified" : 1 }) # 输出信息
查询数据中数组的参数
db.t_group_info.find({"members":{$elemMatch:{"uid":11982}}})
数据备份
mongodump -h dbhost -d dbname -o dbdirectory
mongodump -h ip:port -d admin -o E:MongoDBdata
- -h:
MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017
- -d:
需要备份的数据库实例,例如:test
- -o:
备份的数据存放位置,例如:c:datadump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个test目录,这个目录里面存放该数据库实例的备份数据。
数据恢复
mongorestore -h <hostname><:port> -d dbname <path>
mongorestore -h localhost:27017 -d admin E:MongoDBdataadmin
- --host <:port>, -h <:port>:
MongoDB所在服务器地址,默认为: localhost:27017
- --db , -d :
需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2
- --drop:
恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!
- <path>:
mongorestore 最后的一个参数,设置备份数据所在位置,例如:c:datadump est。
你不能同时指定 <path> 和 --dir 选项,--dir也可以设置备份目录。
- --dir:
指定备份的目录
你不能同时指定 <path> 和 --dir 选项。
从docker-compose导出部分MongoDB日志
docker logs -t --since="2020-11-05T20:02" --until "2020-11-05T20:08" CONTAINER_ID > 11111.log