mongo常用

1、mongo库备份与恢复:
    (1)mongodump与mongorestore

docker exec -i mongo mongodump -h IP:27017 -u watrix -p watrix888    --authenticationDatabase admin --db Darwin-XYY     --archive  -o  dbdirectory
 
docker exec -i mongo   mongorestore  -u  watrix -p watrix888 -h IP:27017  --authenticationDatabase admin -d Darwin-XYY   Darwin-XYY.archive
    (2)mongoexport与mongoimport
mongoexport  --host IP --port number  --username admin --password FbQad6Ad6bV44 --collection eastmoney_lift --db bloom_filter --authenticationDatabase admin --out eastmoney_lift.json

mongoimport  --host IP  --port  number   --username admin --password FbQad6Ad6bV44 --collection eastmoney_lift --db bloom_filter --authenticationDatabase admin --file eastmoney_lift.json
        优缺点:
        备份方面比较:
        1、mongoexport 可以指定集合中的字段,   mongodump最多到集合
        2、mongoexport 可以带导出的过滤条件 -q, mongodump则不可以
        3、mongoexport 可以导出json和csv格式,  mongodump导出的是bson可读性不如前者

        4、mongodump   的速度和压缩率都最好,每秒125M的数据,压缩率达28%
        5、mongodump   更适合全库备份,mongoexport更适合单个集合备份
         
        恢复方面比较:
        1、mongoimport  速度较快,但不保证数据完整导入 。
        2、mongorestore 速度较慢,比mongoimport慢2.5倍左右,但是根据mongodump导出的数据,可以完整导入数据
2、mongo更改密码
    (1)修改密码:
use admin 
db.changeUserPassword('用户名','新密码'); 
db.auth('用户名','新密码');
    (2)密码忘记:
vi /etc/mongod.conf
    注释掉:
    #security
       #authorization: enabled
重启mongo即可。
    (3)创建用户
db.createUser({user:'userName',pwd:'passWord',roles:[{"role":"root","db":"admin"}]});

3、mongo查询语句
db.表名.find({}) 表示查询所有记录
db.getCollection('表名').find({字段名:'值'})
db.表名.find({uid:"12"}) 表示查询uid="12"的记录

db.表名.find({uid:"12"},{"uid":1,"uname":1,"_id":0}) 表示查询表中uid="12"的所有记录,返回字段为uid,uname两个字段"_id"不返回

db.表名.find({$or:[{"name":"sulin"},{"age":{"$gt":10}}]})

db.test.find({$where:function(){return this.age>10}})

查询条件:

$lt,$lte,$gt,$gte,$ne,$in,$nin,$or < <= > >= ≠ 在 不在 或

db.users.find({cid:{"$gt":"12","$lte":"15"}}) 查询表中cid>12 and cid<=15的所有记录


增insert
删remove
改update
 

猜你喜欢

转载自blog.csdn.net/weixin_61299146/article/details/134393007