MongoDB简介
MongoDB是一款免费开源的nosql文档型数据库,旨在为web应用提供可扩展的高性能数据存储解决方案。
1.nosql(not noly sql):指的是非关系型数据库,没有固定的存储格式,一般用于大规模数据的存储。
2.优点:数据灵活,高可用,可扩展,低成本。
性能一般优于关系型数据库。例如myRedis每秒的并发量12万个,Oracle每秒并发量只有4000
3.缺点:弱化事务
MongoDB特点
1.存储数据格式为BSON(一种二进制形式的存储格式,类似于JSON)
2.丰富的查询语言(CRUD,数据聚合,全文检索,地理位置查询)
①CURD就是增删改查
②最像关系型数据的nosql产品指的就是MongoDB的查询语言
3.高可用(副本集)
①类似于主从复制
②不同点在于副本集有一定的容错能力,自动选举算法能在副本集的某些节点宕机后,选举出新的老大。
4.水平扩展,支持海量数据存储(分片)
①可以将海量的数据存储到mongoServer当中
5.MongoDB支持各种编程语言:RUBY,PTYHON,JAVA,C++,C#等语言
6.支持完全索引
①MongoDB的所有字段都支持索引
MongoDB中概念解析
mysql术语 | mongoDB术语 | 说明 |
database | database | 数据库 |
table | collection | 集合 |
row | document | 文档,一条记录(BSON格式的数据) |
index | index | 索引 |
primary key | primary key | 主键,mongoDB自动把_id设为主键 |
foregin key | 无 | 无 |
环境搭建(版本3.6.2,只能在64位系统安装)
1.安装
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.2.tgz 下载MongoDB jar包
tar -zxvf mongodb-linux-x86_64-3.6.2.tgz 解压MongoDB jar包
mv mongodb-linux-x86_64-3.6.2 mongodb 将mongodb-linux-x86_64-3.6.2重命名为mongodb
2.目录结构
bin目录下存放的启动服务器,客户端命令,bin目录下有:
3.启动MongoDB服务
① 启动mongo server命令:./mongod --port 27017 --dbpath=/data/db
--port: 指定mongoDB的端口号
--dbpath: 指定mongoDB数据存储的端口号
②查看命令:./mongod -h