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非关系项目数据库大多放弃了一些特性。比如,放弃了实时一致性、对事情之总体支持和多表查询等。听起来缺点很多,但收益也强烈,NoSQL数据库简单方便、方便扩展,并且产生重好之习性

 

概述

  MongoDB是一个开源的NoSQL数据库,在国内为誉为芒果数据库。Linux、Apache、MySQL和PHP组成了怪著名的LAMP架构。现在,有人提议将LAMP中的代表M的MySQL替换为MongoDB

  NoSQL数据库来多,为什么要选MongoDB呢?

  MongoDB 是一个因分布式文件存储的数据库。由 C++ 语言编写,旨在为
WEB
应用提供可扩大的胜性能数据存储解决方案。MongoDB使用集合(collection)和文档(document)来描述和存储数据,集合(collection)就相当给表,文档(document)相当给行,字段相当给列,不像MySQL之类的涉及项目数据库,表结构是定点的,比如有同实行由多排列成,行行都如出一辙,而MongoDB不同,一个集合里的基本上独文档可以出差之布局,更灵敏一些

  MongoDB有友好老醒目的特征,总结起来有以下4久

  1、没有说明结构的范围

  传统SQL数据库被,对每张表都用定义表结构。如果产生新的积存需求,往往用续加新的字段,更改表结构。在局部气象下,会显得甚无便宜,而对MongoDB,这不再是题材。因为其并未说明结构是概念,在利用同样张表之前,不需要针对这张表展开任何初始化操作。MongoDB的这种特征对高速支付同变异的事情需是雅适用的

  2、完全的目支持

  有些NoSQL数据库,比如redis,它是内存数据库,速度颇快。但是,做吧键值数据库,只支持一种植按键查询的章程。灵活性、使用限制和易用性都遭震慑;再比如hbase,写副速度特别快。但是,同样查询受限,它只有支持单索引,二级索引需要协调实现

  而MongoDB支持单键索引、多键索引、全文索引和地理位置索引。所以MongoDB是作用非常全面的NoSQL数据库,也吃称作最接近关系数据库的匪关系数据库

  3、良好的数据安全性以及造福之范围壮大

  MongoDB使用复制集做多可本存储,以保证数据的安全性。同时,MongoDB内置的分片技术好好有益于地拓展数据规模的恢弘。分片技术是蛮时髦之一个特点,它含了自动数据接口,动态扩容和缩容等同样多重以另外数据库被需大量人造操作的干活,同时提供了针对性数据库的联看入口,不欲以应用层再拓展分发,显著减少了人工成本

  4、完善之文档支持与叫支持

 

安装

  首先,在官网的下载页面选择适宜的MongoDB版本进行下载

图片 1

  然后,一步一步进行安装即可

图片 2

图片 3

  默认情况下,安装到C盘的Program Files文件夹下的MongoDB文件夹着

图片 4

图片 5

 

服务器配置

【搭建服务器】

  搭建服务器,需要开展以下几单步骤

  1、创建data文件夹存储数据库的数据文件;创建log文件夹存储数据库的日志文件;创建bin文件夹存储数据库的可执行文件;创建conf文件夹来囤积数据库的配置文件

  2、在windows系统下需要设置环境变量,否则在指令行中会提示mongod命令不可用

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

图片 6

  3、接下,有半点种植艺术启动mongoDB服务,一种如下所示,设置dppath参数值为于定义之目录路径

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

  由下图览,mongodb的默认端口是27017

图片 7

  4、另一样种植是在conf文件夹下新建mongod.conf文件,在斯文件中将设置mongodb启动的布参数

dbpath = data
logpath = log/mongod.log

mongod -f conf/mongod.conf

  这种办法在命令行工具被并未其余提示,因为记录曾保存到日志文件被,此时mongodb服务已见怪不怪打开

图片 8

【连接服务器】

  于搭建好mongodb服务器之后,需要采用客户端mongo进行连接,才会拓展下同样步的操作

  因为凡下mongo连接mongodb服务器,所以用确保启动mongodb服务器的命令行工具不被关,新开始一个命令行工具,并输入mongo
127.0.0.1/test,test为数据库的名目

图片 9

【关闭mongod服务】

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

图片 10

 

数据库操作

【默认】

  MongoDB 中默认的数据库也 test,如果没创造新的数据库,集合将存放于
test 数据库中

【查看】

  使用show dbs来查阅数据库

show dbs

图片 11

【创建/切换】

   使用use命令来切换/创建数据库,会意识创建的数据库并无以数据库的列表中,
要显示她,需要往数据库插入一些数据

use db_name

图片 12

【显示当前数据库】

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

db

图片 13

【将数据写入集合中】

  使用db.集合名.insert(文档)来用文档的多少写入集合中,文档的格式为JSON。而具存储于联谊中之数量还是BSON格式。BSON是平等栽类json的平等种植二进制形式之积存格式,简称Binary
JSON。

db.collection_name.insert()

图片 14

【查看集合】

  上面的插操作,会自动创建集合db1_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

 

网站地图xml地图