MongoDB 中的基本概念

MongoDB中包含了数据库(database),集合(collection),文档(document) 这几个基本概念,下面我们对这几个概念进行介绍。

数据库(database)

MongoDB中可以创建多个数据库。

显示MongoDB下所有的数据库可以使用以下命令:

show dbs;

执行这条命令的前提是需要进行登录;可以使用一下命令:

use admin;
db.auth('账号','密码');

首先是切换到admin数据库,登录之后才能获取到所有的数据库。

查看所有的数据库结果如下:

admin     0.000GB
config    0.000GB
local     0.000GB

上面展示的三个数据库是我们安装完Mongo数据库之后就自动创建的;下面我们对这三个数据库进行解释:

admin: 此数据库用于管理用户及权限信息。

config: 此数据库在内部使用,当进行分片时,会保存分片的相关信息。

local: 此数据库用于保存本地单台服务器的数据,不能被复制。

另外需要说明的是,切换数据库可以使用下面的命令:

use 数据库;

集合(collection)

集合类似于关系型数据库中的表的概念,集合存在于数据库中,用于存储文档;与关系型数据库中的表不同,集合是没有固定的结构的,所以集合中可以插入不同格式和类型的数据。

如果查看数据库中都有哪些集合存在,可以使用以下命令:

show collections;

执行此命令,需要切换到目标数据库,然后登录之后才能执行。

我们以查看admin数据库下包含哪些集合为例,执行以下命令进行查看:

use admin;
db.auth('用户名','密码');
show collections;

执行命令后,执行的结果如下:

system.users
system.version

由此说明admin数据库下包含了两个集合system.users和system.version

文档(document)

文档相当于关系型数据库中的行数据,是由一组键值对组成的BSON对象;文档中的字段没有任何的约束,相同字段的类型也可以不一致,与关系型数据库有所不同。

例如:

{"number": 10}

{"number": "100"}

虽然number对应的值类型不一致,但是仍然可以存储在同一个集合中。 

查询集合中文档的方式:

db.集合名称.find({});

下面我们以查询MongoDB的版本为例进行查询:

db.system.version.find({});

 运行的结果如下:

{ "_id" : "featureCompatibilityVersion", "version" : "4.4" }
{ "_id" : "authSchema", "currentVersion" : 5 }

总结

MongoDB中可以包含多个数据库,每个数据库下又可以包含多个集合,每个集合下又可以包含多个文档;每个文档是一个由键值对组成的BSON对象。

你可能感兴趣的:(MongoDB,mongodb,数据库,nosql)