参考
前言
Mongodb是一种面向文档的数据库,并非关系型数据库(如Mysql等),Mongodb的出现也让前端后端更加的统一,因为它的数据结构非常类似于Javascript中的对象。比如说下面,在Javascript中代表对象,在Mongodb中代表的就是一个文档。
{
a: 1,
b: 2
}
如果我们全栈都是使用的Javascript(Javascript+Nodejs+Mongodb)那么将更加提高我们的便利以及统一性。
如果你之前使用的是Mysql等关系型数据库,那么可能需要对Mongodb数据库的观念要有所改变,在Mongodb中没有行和列,取而代之的是文档。在Mongodb中也没有表的存在,取而代之的是集合。
每一个文档都有一个_id
用于表示这个文档的唯一性,并且Mongodb提供了一个Javascript Shell,我们可以通过Javascript语法来管理操作等方式来控制数据库,这也为我们的全栈更大一步的增加了统一性。
数据库(Database)
在一个数据库中是可以存在多个集合,
集合(Collection)
相当关系型数据库中的表。
文档(Document)
在Javascript中,一个对象的值可以是一个对象、数组、基本值、函数等。当然这也可以用在文档上。比如下面的一个结构,是一个完全合法的文档结构
{
a: {
b: 1
c: [1,2,3]
},
d: 1
}
Mongodb区分类型,也通用区分大小写,比如下面是两个不同的文档
{'a': 1}
{'A': 1}
命名规则
集合
集合使用名称来进行识别,但是集合名应该避免下列的情况:
- 不能是空字符串
- 不能包含(空字符),因为在Mongodb中表示为集合名结束
- 不能以system开头,因为这是系统保留的前缀,比如system.users这个集合保存着数据库的用户信息,而system.namespaces集合保存着数据库中所有集合的信息。
- 避免使用$,因为系统生成的集合当中很多包含有$字符串,所以你应当避免。
数据库
数据库使用名称来进行识别,但是集合名应该避免下列的情况:
- 不能是空字符串
- 不能使用特殊符号 ,/,.,*等符号,尽量使用由字母和数字组成的字符串。
- 数据库名区分大小写
- 数据库名最多为64字节
- 有三个系统的数据库,如admin,local,config。应避免这三个名称当作你的数据库名
启动Mongodb
你可以通过Mongodb官方网站来下载Mongodb,如果你是windows,可能会安装得到一个安装包,安装完成后你就可以直接在CMD命令行通过mongod
来启动Mongodb。如果是*inux系统,下载了Mongodb后得到解压包解压后直接运行当前目录的mongod
就可以启动Mongodb。
这里需要注意的是需要通过参数--dbpath
来指定Mongodb数据库的位置,如果没有指定,那么Mongodb会默认目录/data/db
,windows为c:/data/db
。
默认情况下Mongodb会以27017端口为默认端口,并且给当前端口提供了一个http服务器,你用浏览器打开,它会提示你下图的信息。
如果你需要通过http端口来获取一些Mongodb的状态信息,那么你需要增加一个参数--httpinterface
来打开http接口,这个http一般会比监听的数据库端口大1000。比如27017是数据库默认监听借口,那么http服务的端口为28017。你用浏览器打开这个页面,就会出现如下图
如果你需要一些命令操作,比如列举一些信息,那么你还需要增加--rest
参数。
文完
《Mongodb基础知识》留言数:0