介绍
MongoDB是一个基于分布式文件存储的数据库,由C++语言编写,旨在为web应用提供可扩展的高性能数据存储解决方案。
MongoDB是一个介于关系型数据库和非关系型数据库之间的产品,是非关系型数据库当中功能最丰富,最像关系数据库的,它支持的数据结构非常松散,类似json的bson格式,可以储存比较复杂的类型。
MongoDB最大的特点是它支持的查询语言非常强大,其语法有点类似于面向对象的查询语言,几乎可以实现类似于面向对象的查询语言,几乎可以实现类似关系数据库单表查询的绝大部分功能,而且还支持对数据建立索引。
MongoDB与关系型数据库对比
RDBMS与MongoDB对比
MongoDB数据类型(部分)
String: 字符串,必须是utf-8
Boolean:布尔值,true 或者false
Integer:整数 Int32 Int64
Double:双精度浮点值
Array:数组或者列表,多个值存储到一个键
Object:用于内嵌文档
Null:空数据类型
Timestamp:时间戳
Date:日期时间,用UNIX时间格式来存储当前日期的时间,你可以指定自己的日期时间,创建Date对象,传入年月日信息
Symbol:符号,该数据类型基本上等于字符串类型,但不同的是,他一般用于采用特殊符号类型的语言
Min/Max keys:将一个值与BSON元素的最低值和最高值相对比
下载安装
进入mongodb官网(https://www.mongodb.com/try/download/community),下载免费社区版,选择4.2版本,centos7的tar.gz包
yum install -y make
yum install -y gcc-c++
yum install -y libcurl openssl
tar -zxvf mongodb-linux-x86_64-rhel70-4.2.11.tgz
mv mongodb-linux-x86_64-rhel70-4.2.11 /usr/local/mongo
cd /usr/local/mongo
#创建数据目录
mkdir -p data/db
#启动
bin/mongod --dbpath data/db/
27017就是默认端口号
守护进程启动和关闭
启动:
mkdir logs
touch logs/mongodb.log
/usr/local/mongo/bin/mongod --dbpath /usr/local/mongo/data/db/ --logpath /usr/local/mongo/logs/mongodb.log --logappend --fork
关闭:
/usr/local/mongo/bin/mongod --shutdown --dbpath /usr/local/mongo/data/db/
配置启动
上一种方法启动,需要输入大量的启动参数,容易写错,所有mongodb提供了一种配置启动的方法
进入mongodb的安装目录
cd /usr/local/mongo
mkdir conf
cd conf
vi mongodb.conf
dbpath=/usr/local/mongo/data/db/
logpath=/usr/local/mongo/logs/mongodb.log
logappend=true
bind_ip_all=true
port=27017
fork=true
配置文件启动:
/usr/local/mongo/bin/mongod --config /usr/local/mongo/conf/mongodb.conf
客户端连接
/usr/local/mongo/bin/mongo
退出连接:
quit();
指定ip和端口连接mongodb:
/usr/local/mongo/bin/mongo --host 192.168.1.43 --port 27017
mongodb函数关闭
连接到mongodb服务后(localhost连接),切换到admin库,并使用命令关闭服务。
use admin;
db.shutdownServer();
#或者是 db.runCommand("shutdown")