mongodb常用命令

启动mongo:
mongod --dbpath /usr/local/mongodb4.4.10/data --logpath /usr/local/mongodb4.4.10/logs/mongo.log --fork

nohup mongod --dbpath /usr/local/mongodb4.4.10/data --logpath /usr/local/mongodb4.4.10/logs/mongo.log &
--dbpath 设置数据存放目录
--logpath 设置日志存放目录
--fork 在后台运行

客户端连接mongo服务器
mongo
mongo 127.0.0.1:3000

登录远程数据库
mongo ip:port/数据库名 -u 用户名 -p 密码
./mongo 270.327.321.654:27017/mytest -uadmin -p123456

//输入登录密码
db.auth("admin","123456")

关闭mongo服务器(需要先使用mongo连接服务器后执行)
use admin;
db.shutdownServer();

查看当前登录的数据库:
db

查看当前数据库状态
db.stats()

查看当前数据库版本
db.version()

查看 mongod 服务是否启动:
ps aux | grep mongod

//导出数据库
/mongodump //导出所有数据库
/mongodump -h 127.0.0.1 -d students -o c:\bak\
/mongodump -h 127.0.0.1 -uadmin -d mytest -p 123456 //导出mytest数据库

//导入数据库
 //导入mytest库并命名mytest4
/mongorestore -h 127.0.0.1:27017 -d mytest4 /usr/local/dump/mytest/ 
 //导入mytest库并命名mytest5
/mongorestore -h 127.0.0.1:27017 -d mytest5 --dir /usr/local/dump/mytest/

//获取数据集的所有索引
db.数据集.getIndexes()

//新增索引
db.数据集.ensureIndex({"age":1})

显示数据库列表:
show dbs

显示当前数据库中的集合(表)
show collections

切换到指定数据库
use 数据库名

查看集合总数
db.集合名.count()

查看集合中的记录
查询出所有记录
db.集合名.find()

查询某条数据
db.集合名.find({x:1})
db.数据集.find({"username":"xiaoming"}).pretty()

//简单正则查询,username包含a的记录
db.数据集.find({"username":{$regex:'a'}})

//按照username排序查询
db.数据集.find({}).sort({"username":1})

跳过2条后查询出3条数据并按照x排序(sort数字为1表示升序,数字为2表示降序)
db.集合名.find().skip(2).limit(3).sort({x:1})


插入记录:(如果集合不存在则自动创建,数据格式为json。插入数据的时候,
会自动增加一个全局不唯一的_id字段,当然我们也可以自己指定一个值)
    db.集合名.insert({name:'zhangsan'})
    db.集合名.insert({xxx:3,_id:666})


修改记录:
如果有多条语句,只修改第一条,会覆盖原有数据.没有记录不插入
db.集合名.update({"name":"张三"},{"name":"张三丰"});

注意:$set表示局部更新。不使用$set的话,
如果该条数据中存在其他字段例如age、sex等其他字段都会被覆盖掉,
db.集合名.update({"name":"张三"},{$set:{"name":"张三丰"}});

第三个参数表示如果没有这条记录则插入这条记录
db.集合名.update({"name":"张三"},{"name":"张三丰"},true);

第四个参数表示更新所有匹配到的记录,false只修改第一条记录
db.集合名.update({"name":"张三"},{"name":"张三丰"},true,true);

删除所有数据:
db.集合名.remove({})

删除某条数据:
db.集合名.remove({'name':'zhangsan'})
db.集合名.remove({"_id":ObjectId("61b7063d1bfd39427f08aff8")});

删除集合:
db.集合名.drop()

删除数据库(首先使用use选中指定数据库)
db.dropDatabase()

1.新增索引(将age按升序创建索引,降序为-1)
db.集合名.createIndex({"age":1})
2、查看集合索引
db.集合名.getIndexes()
3、查看集合索引大小
db.集合名.totalIndexSize()
4、删除集合所有索引
db.集合名.dropIndexes()
5、删除集合指定索引
db.集合名.dropIndex("索引名称")

//创建mongodb用户并设置权限
db.createUser({
    user:"admin",
    pwd:"123456",
    roles:["readWrite","dbAdmin"]
})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值