目录
1、什么是Mongodb
Mongdb 是一个基于分布式文件存储的数据库。由C++语言编写。在为WEB应用提供可扩展的高性能数据存储解决方案。
2、什么是NoSQL
NoSQL=Not Only Sql 不仅仅是SQL,是一项全新的数据库革命性运动。
3、NoSQL数据分类
1》键值(Key-Value)存储数据库
数据库主要会使用一个哈希表,Key/Value 模型对于IT系统来说的优势是简单、容易部署。代表有Redis。
2》列存储数据库:
这部分数据库通常是用来应对分布式存储的海量数据,键仍然存在。例如:HBase
3》文档型数据库:
比键值数据库的查询效率更高:如CouchDB、MongoDB。
4》图形数据库:
4、MongDB 与关系型数据库对比
SQL术语概念 | MongoDB术语概念 | 说明 |
---|---|---|
database | database | 数据库 |
table | collection | 数据表/集合 |
row | document | 数据记录行/文档 |
column | field | 数据字段/域 |
index | index | 索引 |
table joins | 表连接 Mongodb不支持 | |
primary key | primary key | 主键 MongoDB自动将_id字段设置为主键 |
5、RDBMS 与MongDB对应的术语
RDBMS | MongoDB |
---|---|
数据库 | 数据库 |
表格 | 集合 |
行 | 文档 |
列 | 字段 |
表联合 | 嵌入文档 |
主键 | 主键(MongoDB提供了key 为_id) |
数据库服务和客户端 | |
Mysqld/Oracle | mongod |
Mysql/sqlplus | mongo |
6、数据类型
数据类型 | 描述 |
---|---|
String | 字符串,存储数据常用的数据类型,在MongoDB 中,UTF-8编码的字符串才是合法的 |
Integer | 整形数值,用于存储数值,根据你所采用的服务器 可分为32位 或 64位 |
Boolean | 布尔值 用于存储布尔值(真/假) |
Double | 双精度浮点值,用于存储浮点值 |
Min/Max keys | 将一个值与Bson(二进制的Json)元素的最低值和最高值相对比。 |
Array | 用于将数组或列表或多个值存储为一个键 |
Timestamp | 时间戳。记录文档修改或添加的具体时间 |
Object | 用于内嵌文档 |
Null | 用于创建空值 |
Symbol | 符号,该数据类型基本上等同于字符串类型,但不同的是,它一般用于采用特殊符号类型的语言 |
Date | 日期时间。用UNIX时间格式来存储当前日期或时间。 你可以指定自己的日期时间:创建Date对象,传入年月日信息。 |
Object ID | 对象ID,用于创建文档的ID |
Binary Data | 二进制数据,用于存储二进制数据 |
Code | 代码类型,用于在文档中存储JavaScript代码 |
Regular expression | 正则表达式类型,用于存储正则表达式 |
7、下载、安装
官网下载对应的版本: mongodb-linux-x86_64-rhel70-4.4.1.tgz
#1、解压
tar zxvf mongodb-linux-x86_64-rhel70-4.4.1.tgz
#2、移动到/usr/local 目录
mv mongodb-linux-x86_64-rhel70-4.4.1 /usr/local/mongodb
#3、创建数据存储目录
mkdir -p data/db
#4、创建日志目录及文件
mkdir log
vi mongodb.log
#5、创建配置文件
mkdir etc
vi mongodb.conf
#设置内容
dbpath=/usr/local/mongodb/data/db
logpath=/usr/local/mongodb/log/mongodb.log
port=27017
bind_ip=0.0.0.0
fork=true #后端启动
#启动
./mongod --config /usr/local/mongodb/etc/mongodb.conf
常见的启动参数:
8、设置环境变量
vi /etc/profile
文件末尾添加
export MONGODB_HOME=/usr/local/mongodb
export PATH=${MONGODB_HOME}/bin:$PATH
9、关闭MongoDB
1》使用ctrol+c 关闭
前置启动 可以使用此种关闭方式,这种方式会等待当前进行中的操作完成,所以依然是安全的关闭方式。
2》使用kill命令关闭
此种方法不建议使用,以为会造成数据损坏现象
3》使用MongoDB函数关闭
db.shutdownServer()
db.runCommand("shutdown")
这两种方法需要在admin库中执行,并且都是安全的关闭方式
在MongoDB中提供了两个关闭数据库的函数:
4》使用mongod 命令关闭MongoDB
mongod --shutdown -dbpath 《数据库路径》
也能安全关闭数据库