mongodb使用
1)连接mongodb
mongo --port 10001 //指定port,默认port为27017,这样就连接了本地的mongodb了
mongo --host 192.168.0.11 //连接远程的mongodb
mongo -umyuser -p123456 //使用用户名密码登录
2) 用户管理
用户角色:
#创建用户
use test //切换库,如果没有该库,会自动创建
db.createUser({user:"admin",pwd:"123456",roles:[{role:'dbOwner',db:'userdb'}]})
#查看用户
db.system.users.find() //列出所有用户,需要切换到admin库下(use admin)
show users //查看当前库下所有的用户
db.dropUser('admin') //删除用户,需要切换到admin库
要想使用账号和密码登陆需要先打开用户认证:
3)数据库管理
#查看版本
db.version()
#显示当前的库 db
# 切换/创建库
use userdb //如果库存在就切换,不存在就创建
#此时show dbs 看不到userdb,需要我们创建一个集合
db.createCollection('clo1')
再show dbs就有userdb了。
#查看所有数据库
show dbs
#删除数据库 mydb
use mydb //先切换到该库下,然后再删除
db.dropDatabase()
db.stats() //查看当前库的信息
db.serverStatus() //查看mongodb服务器的状态
4)数据管理
创建集合
db.createCollection("mycol", { capped : true, autoIndexID : true, size : 6142800, max : 10000 } )
语法:db.createCollection(name,options)
name就是集合的名字,options可选,用来配置集合的参数,参数如下
capped true/false (可选)如果为true,则启用封顶集合。封顶集合是固定大小的集合,会自动覆盖最早的条目,当它达到其最大大小。如果指定true,则需要也指定尺寸参数。
autoindexID true/false (可选)如果为true,自动创建索引_id字段的默认值是false。
size (可选)指定最大大小字节封顶集合。如果封顶如果是 true,那么你还需要指定这个字段。单位B
max (可选)指定封顶集合允许在文件的最大数量。
show collections //查看集合
在集合中添加文档
db.Account.insert({AccountID:2,UserName:"123",password:"123456"}) //如果集合不存在,直接插入数据,则mongodb会自动创建集合
db.Account.update({AccountID:2},{"$set":{"Age":20}}) //更新
db.Account.find() //查看所有文档
db.Account.find({AccountID:2}) //根据条件查询删除
db.Account.remove({AccountID:2}) //根据条件删除
db.Account.drop() //要删除整个文档
查看集合的状态
use dbname //先进入对应的库,然后查看集合状态
db.printCollectionStats()
5)数据库性能
db.stats() //查看当前库的信息
db.serverStatus() //查看mongodb服务器的状态