MongoDB数据库基础操作

前边的话

  为了保存网站的用户数据和业务数据,平日必要贰个数据库。MongoDB和Node.js特别匹配,因为Mongodb是依照文书档案的非关系型数据库,文书档案是按BSON(JSON的轻量化二进制格式)存款和储蓄的,增加和删除改查等管理数据库的一声令下和JavaScript语法很像。本文将详细介绍MongoDB数据库

 

数据库

  数据库,顾名思义,是数额存款和储蓄的仓库,首要功效有七个

  1、有集体地存放数据

  与在磁盘上本身存放文件分裂,数据库替用户组织了数量的蕴藏格局,用户只供给遵从数据库提供的接口将数据写入,数据便会依照规范的格式被贮存起来

  2、依据不一样的供给开始展览询问

  数据库不仅要能写入数据,还帮衬数据查询,并且能够依据区别的急需开始展览询问。因为存储是有集体的,由此查询上得以更规范化,查询速度也会快诸多

  分歧的数据库的区分正是存放数据的集体分裂,同时提供了不一致品类的查询。用户能够根据本身的须求,选拔合适的数据库

【分类】

  数据库的归类有过八种,根据对SQL语言的辅助,能够分为以下三种:

  1、SQL数据库,比如Oracle、Mysql等

  2、NoSQL数据库,比如Redis、MongoDB等

  随着在规模网络采纳的面世,古板的SQL数据库蒙受了有的统一筹划上的弊病。比如,SQL对表的定义使应用不够利索,横向扩大相比较困难。与局地表征难以满足相比较,反而是SQL数据库的大多特点没有用武之地。比如,在无数气象下,及时存取并不是不可或缺的,也未曾尤其多的业务须求,而这一个额外的特色消耗着SQL数据库的质量

  因而NoSQL数据库应运而生,NoSQL全称是Not Only
SQL,意即”不仅仅是SQL”。但其实,绝大许多NoSQL数据库都扬弃了对SQL语言的援助。与SQL关系型数据库相比较,NoSQL非关系型数据库诸多舍弃了1部分特色。比如,抛弃了实时一致性、对业务的欧洲经济共同体扶助以及多表查询等。听起来缺点诸多,但收益也强烈,NoSQL数据水库蓄水容量易方便、方便扩大,并且有更好的性质

 

概述

  MongoDB是1个开源的NoSQL数据库,在境内被称呼杧果数据库。Linux、Apache、MySQL和PHP组成了丰硕盛名的LAMP架构。现在,有人提出将LAMP中的代表M的MySQL替换为MongoDB

  NoSQL数据库有数不完,为啥要挑选MongoDB呢?

  MongoDB 是三个基于分布式文件存款和储蓄的数据库。由 C++ 语言编写,意在为
WEB
应用提供可扩张的高质量数据存款和储蓄化解方案。MongoDB使用集合(collection)和文档(document)来描述和存储数据,集合(collection)就也正是表,文书档案(document)也就是行,字段约等于列,不像MySQL之类的关系型数据库,表结构是固定的,比如某1行由若干列组成,行行都1致,而MongoDB区别,贰个集合里的多少个文书档案能够有例外的结构,更加灵活1些

  MongoDB有协调很了解的特征,总计起来有以下4条

  1、未有表结构的限制

  传统SQL数据库中,对每张表都急需定义表结构。假诺有新的存款和储蓄要求,往往供给加多新的字段,更改表结构。在局地风貌下,会显得很不方便人民群众,而对于MongoDB,那不再是难点。因为它并没有表结构这几个定义,在运用一张表在此以前,不要求对那张表张开其余初始化操作。MongoDB的那种性子对高效支付和多变的政工需要是很合适的

  二、完全的目录帮忙

  有个别NoSQL数据库,比如redis,它是内部存款和储蓄器数据库,速度比不慢。但是,做为键值数据库,只帮助一种按钮查询的主意。灵活性、使用限制和易用性都面临震慑;再比如hbase,写入速度相当慢。可是,同样查询受限,它只帮衬单索引,二级索引需求团结完成

  而MongoDB扶助单键索引、多键索引、全文索引和地理地点索引。所以MongoDB是效益十二分完美的NoSQL数据库,也被誉为最相仿关周到据库的非关周详据库

  3、优异的多少安全性和造福的范围增添

  MongoDB使用复制集做多别本存款和储蓄,以保证数据的安全性。同时,MongoDB内置的分片手艺能够很有利地开始展览多少规模的恢弘。分片技能是很新颖的叁个风味,它涵盖了全自动数据接口,动态扩大体积和缩容等一多种在别的数据库中供给多量人造操作的做事,同时提供了对数据库的统壹访问入口,不须求在应用层再举办分发,显然滑坡了人工花费

  四、完善的文书档案扶助和驱动援救

 

安装

  首先,在官方网址的下载页面选用适用的MongoDB版本进行下载

图片 1

  然后,一步一步举办安装就能够

图片 2

图片 3

  暗许意况下,安装到C盘的Program Files文件夹下的MongoDB文件夹中

图片 4

图片 5

 

服务器配置

【搭建服务器】

  搭建服务器,必要举办以下多少个步骤

  一、制造data文件夹存款和储蓄数据库的数据文件;创立log文件夹存款和储蓄数据库的日志文件;创制bin文件夹存款和储蓄数据库的可实施文件;创设conf文件夹来储存数据库的配备文件

  二、在windows系统下必要设置环境变量,不然在指令行中会提醒mongod命令不可用

  在环境变量的path中,加多mongod.exe文件的目录

图片 6

  3、接下去,有三种方法运行mongoDB服务,壹种如下所示,设置dppath参数值为自定义的目录路线

mongod --dbpath=D:/app/mongo/data

  由下图来看,mongodb的暗中同意端口是270一七

图片 7

  四、另一种是在conf文件夹下新建mongod.conf文件,在那几个文件中将设置mongodb运行的配备参数

dbpath = data
logpath = log/mongod.log

mongod -f conf/mongod.conf

  那种措施在命令行工具中从未其余提醒,因为记录已经保存到日志文件中,此时mongodb服务业已平常展开

图片 8

【连接服务器】

  在搭建好mongodb服务器之后,需求选拔客户端mongo举办连接,才具开始展览下一步的操作

  因为是运用mongo连接mongodb服务器,所以必要确定保证运转mongodb服务器的命令行工具不被关闭,新开三个命令行工具,并输入mongo
1二7.0.0.1/test,test为数据库的称呼

图片 9

【关闭mongod服务】

  首先切换成admin数据库(use
admin),然后使用db.shutdownServer()命令来关闭服务

图片 10

 

数据库操作

【默认】

  MongoDB 中暗许的数据库为 test,倘使未有开革新的数据库,集合将存放在在
test 数据库中

【查看】

  使用show dbs来查阅数据库

show dbs

图片 11

【创建/切换】

   使用use命令来切换/创设数据库,会发觉创造的数据库并不在数据库的列表中,
要展现它,要求向数据库插入1些数码

use db_name

图片 12

【展现当前数据库】

  使用db命令来显示当前数据库

db

图片 13

【将数据写入集合中】

  使用db.集合名.insert(文书档案)来将文书档案的数目写入集合中,文书档案的格式为JSON。而有所存储在汇集中的数据都以BSON格式。BSON是①连串json的一种二进制情势的蕴藏格式,简称Binary
JSON。

db.collection_name.insert()

图片 14

【查看集合】

  上边的插入操作,会自行创制集合db一_coll1,使用show
collections命令能够查阅当前数据库中的全部集合

图片 15

【删除数据库】

  这将去除当前所选数据库。
若是未有选取其余数据库,那么它将去除暗许的’test‘数据库

db.dropDatabase()

图片 16

 

集聚操作

  集合类似于SQL数据库中的数据表,标记为collection

【查看集合】

   能够动用命令show collections反省制造的成团

  [注意]也得以运用show tables来查看集合

图片 17

【创设集合】

  在插入文书档案时,MongoDB首先检查上限集合capped字段的高低,然后检查max字段

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

  name:集合的名字

  capped:是不是启用集合限制,假使翻开需求制订贰个限制标准,默感觉不启用,这几个参数未有实际意义

  max:集合中最大条数限制,默以为未有限定

  size:限制集合使用空间的深浅,默感到未有界定,size的先期级比max要高

  autoIndexId:是还是不是接纳_id作为目录,默认为使用(true或false)

图片 18

  [注意]向聚集中插入文书档案时,假使集合不设有 ,则会活动创立集合

图片 19

【删除集合】

  MongoDB
的 db.collection_name.drop() 用于从数据库中删除集合。假诺选定的集合成功删除,drop()方法将重临true,不然重返false

图片 20

 

数据导入

  在mongoimport的设置目录下,能够应用如下命令导入数据文件

  使用window自带的CMD,使用反斜杠

mongoimport -h 192.168.1.106:27017 -d db1 -c users --file D:\app\vue\imooc\resource\dumall-users

  使用bash工具时,使用正斜杠

图片 21

  mongoimport的详细命令如下

图片 22

 

闭馆服务

  要是想关闭mongodb服务,能够运用mongo来实现

mongo 192.168.1.105:27017
use admin
db.shutdownServer()

   也得以一向利用mongod来落到实处

mongod --shutdown

 

相关文章