MongoDB学习笔记(三)—— 创建Database、Collection、用户

创建Database

本文中的创建Database、Collection、用户操作都需要先打开并运行Mongo。

首先要先启动MongoDB服务,参考笔记(一)中的方法。接下来,在cmd窗口输入以下命令启动MongoDB客户端。

mongo

输入

1+1

用来验证是否成功,成功会返回结果 2

1. 查看MongoDB的database列表

show dbs

2. 查看当前连接所在的Database

db

3. 使用use 命令创建database

use db_name

use 命令只是向MongoDB注册database,并没有实际的创建。使用show dbs 查看,列表中没有该database。只要没有内容,就不存在,即使为该db创建了用户并登陆了也不行。

扫描二维码关注公众号,回复: 12508043 查看本文章

4. 在当前database中创建collection,并向集合中插入数据

db.foo.insert({_id:1,name:"test"})

此时,MongoDB真正创建database,查看存储数据的folder,发现多了两个.wt文件,一个用于存储数据,一个用于存储index。使用show dbs 查看,列表中存在该database。另外,在db里创建空的collection不插入数据也能真正创建database。

5. 删除当前database

执行删除指令时要十分小心,避免误删。

db.dropDatabase()


创建Collection

1. 首先,选择切换到要创建的database

use db_name

2. 创建collection完整的命令

db.createCollection(name, {capped: <Boolean>, autoIndexId: <Boolean>, size: <number>, max <number>} )

3. 参数介绍

  • name:集合的名字
  • capped:是否启用集合限制,如果开启需要制定一个限制条件,默认为不启用,这个参数没有实际意义
  • autoIndexId:是否使用_id作为索引,默认为使用(true或false)
  • size:限制集合使用空间的大小,默认为没有限制(size的优先级比max要高)
  • max:集合中最大条数限制,默认为没有限制

4. 使用示例

1)创建一个指定名称的集合
创建一个名字为"name"的集合,没有任何的大小,数量限制,使用_id作为默认索引

db.createCollection("name")

2)创建一个限制空间的集合
创建一个名字为name集合,限制它的空间大小为1M,如果超过1M的大小,则会删除最早的记录

db.createCollection("name",{size:1024})

或 db.createCollection("name",{capped:true,size:1024})

3)创建一个限制条数的集合
创建一个名字为name集合,最大条数为1024条,超过1024再插入数据的话会删除最早的一条记录。这里不能使用capped:true,否则会报错

db.createCollection("name",{max:1024})

4)创建一个限制空间和条数的集合

db.createCollection("name",{size:1024,max:1024})

或 db.createCollection("name",{capped:true,size:1024,max:1024})


创建用户

1. 选择数据库test

use test

2. 创建用户

自定义用户名:"root",密码:"123456"

db.createUser({user: "root", pwd: "123456", roles: [{ role: "dbOwner", db: "test" }]})

3. 通过可视化客户端,输入用户名密码连接至数据库test 

猜你喜欢

转载自blog.csdn.net/qq_14997473/article/details/89604249