一、MongoDB简介
1.MongoDB介绍
- MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。
- MongoDB 将数据存储为一个文档,数据结构由键值(Key->Value)对组成。
- MongoDB 文档类似于 JSON 对象,字段值可以包含其他文档,数组及文档数组。
2.MongoDB支持的数据类型
MongoDB文档存储是使用BSON类型,是二进制序列化的形式,类如JSON,同样支持内嵌各种类型
MongoDB 常用的几种数据类型:
- ✓ String:字符串
- ✓ Integer:整型数值
- ✓ Boolean: 布尔值
- ✓ Array: 数组
- ✓ Timestamp: 时间戳
- ✓ Object: 对象,内嵌文档
- ✓ Null: 空值
- ✓ Date: 日期时间
- ✓ Object ID:对象ID
- ✓ Binary Data:二进制数据
- ✓ Code: 代码类型
- ✓ Regular expression: 正则表达式
3.MongoDB应用场景
MongoDB 的应用已经渗透到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、视频直播等, 常用的应用场景有:
- 游戏场景:使用 MongoDB 存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储,方便查询、更新;
- 物流场景:使用 MongoDB 存储订单信息,订单状态在运送过程中会不断更新,以 MongoDB 内嵌数组的形式来存储,一次查询就能将订单所有的变更读取出来;
- 社交场景:使用 MongoDB 存储存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引实现附近的人、地点等功能;
- 物联网场景:使用 MongoDB 存储所有接入的智能设备信息,以及设备汇报的日志信息,并对这些信息进行多维度的分析;
- 视频直播:使用 MongoDB 存储用户信息、礼物信息等;
二、Windows安装mongoDB
1.下载安装包
MongoDB 提供了可用于 32 位和 64 位系统的预编译二进制包,可以从MongoDB官网下载安装, MongoDB 预编译二进制包下载地址:
https://www.mongodb.com/download-center/community
2.cmd命令行启动MongoDB
① 启动MongoDB
<mongodb安装目录>\bin\mongod --dbpath d:\data\db # cmd命令行启动
② 将MongoDB加入到Windows本地服务
mongod.exe --logpath d:\data\log\mongod.log --logappend--dbpath d:\data\db --serviceName MongoDB --install
此时在Windows--运行窗口输入services.msc即可查看到MongoDB服务:
3.常用命令
# cmd命令行MongoDB的常用命令 net start MongoDB # 启动MongoDB net stop MongoDB # 停用MongoDB <mong安装目录>\bin\mongod.exe --remove# 移除MongoDB
4.通过配置文件启动MongoDB
① 编辑mongodb.cfg配置文件
# mongod.cfg# for documentation of all options, see:# http://docs.mongodb.org/manual/reference/configuration-options/# Where and how to store data.storage: dbPath: D:\data\db journal: enabled: true# engine:# mmapv1:# wiredTiger:# where to write logging data.systemLog: destination: file logAppend: true path: D:\data\log\mongod.log # network interfacesnet: port: 27017 bindIp: 127.0.0.1
② 将MongoDB安装目录下bin目录添加到环境变量(一般重启电脑后生效,可以在命令行任意目录使用mongod命令)
③ 命令行进入配置文件所在目录,通过配置文件启动MongoDB服务:
mongod.exe --config mongod.cfg
5.连接MongoDB
mongo.exe # cmd命令行连接mongodb
连接成功后如下图所示:
三、Linux安装MongoDB
1.下载安装包
从MongoDB官网下载安装,MongoDB 预编译二进制包下载地址:
https://www.mongodb.com/download-center/community
2.解压压缩包
tar -zxvf mongodb-linux-x86_64-4.4.0.tgz mv-r mongodb-linux-x86_64-4.4.0 /usr/local/mongodb
3.配置环境变量
vi /etc/profile # 添加下面两行内容exportMONGODB_HOME=/usr/local/mongodb exportPATH=$PATH:$MONGODB_HOME/bin source /etc/profile # 编辑完、保存后重新加载配置文件
4.创建数据目录和日志文件
cd /usr/local/mongodb sudomkdir-p data/db sudochmod-r777 data/db sudomkdir logs cd logs touch mongodb.log
5.创建配置文件mongodb.conf
systemLog: destination: file path: /usr/local/mongodb/logs/mongodb.log logAppend: trueprocessManagement: fork: truenet: bindIp: 0.0.0.0 port: 27017setParameter: enableLocalhostAuthBypass: falsestorage: dbPath: /data/mongodb journal: enabled: true wiredTiger: engineConfig: cacheSizeGB: 4
6.启动MongoDB
cd /usr/local/mongodb/bin ./mongod -f mongodb.conf
7.连接MongoDB
mongo --port27017# 指定端口连接,默认host为127.0.0.1mongo --host192.168.1.123 --port27017# 指定host和端口连接mongo 192.168.1.123:27017 # 指定host和端口连接,同上
附:mongodb一键安装脚本:
# author @jigang.chen# MongoDB installecho"MongoDB install action...">>mongodb_install.log cd /home if [ -f mongodb-linux-x86_64-4.0.18.tgz ] then`tar -xzf mongodb-linux-x86_64-4.0.18.tgz`if [ -d mongodb-linux-x86_64-4.0.18 ] thenecho"unpackage success!"`mv mongodb-linux-x86_64-4.0.18 /usr/local/mongodb``mkdir -p /data/mongodb``mkdir /usr/local/mongodb/logs``touch /usr/local/mongodb/logs/mongodb.log`elseecho"unpackage failed"fielseecho"mongo file not exists"fiecho"config environment">>mogodb_install.log echo"export MONGODB_HOME=/usr/local/mongodb">>/etc/profile echo"export PATH=\$PATH:\$MONGODB_HOME\"/bin\"">>/etc/profile chmod-R777 /data/mongodb source /etc/profile echo"======mongodb install success !======">>mongodb_install.log
四、MacOS安装MongoDB
1.下载安装包
Mac系统的MongoDB的安装方式有brew和.tgz(与Linux安装方式类似)两种,本次是以.tgz包为例进行安装,所以需要先下载mongodb.tgz包。
下载地址:
https://www.mongodb.com/try/download/community
官方安装文档:
https://www.mongodb.com/docs/manual/tutorial/install-mongodb-on-os-x/
2.创建日志及数据目录
cd mongodb mkdir data # 创建数据存放目录 mkdir logs # 创建日志目录 cd logs touch mongodb.log # 创建MongoDB日志输出文件
记住,一定先创建数据存放目录、日志目录及文件,否则在启动时会报各种错,如下图:
3.创建MongoDB配置文件
cd mongodb/bin vi mongodb.conf # 在bin目录下创建MongoDB配置文件
配置文件内容如下:
配置文件释义:
dbpath=/mongodb/data # 数据存放路径logpath=/mongodb/logs/mongodb.log # 日志存放路径logappend=true# 采用追加模式写入日志,默认fork=true# 是否后台启动port=27017# MongoDB端口号,默认27017,也可以改成其他journal=true# 启用日志文件,默认quiet=false# 过滤掉无用的日志信息,true表示过滤,false为调试模式,不过滤
4.配置环境变量
# 在.zprofile添加如下两行MONGODB_HOME=/mongodb exportPATH=$PATH:$MONGODB_HOME/bin source /xxx/.zprofile # 重新加载配置文件,使生效
5.启动MongoDB
.tgz的安装的启动方式有两种,一种是命令行启动,一种是指定配置文件启动
① 命令行指定日志、数据路径启动
mongod --logpath /mongodb/logs/mongodb.log --dbpath /mongodb/data --fork
② 指定配置文件启动
mongod -f mongodb.conf
启动成功后如下图所示:
6.客户端连接数据库
mongo # 不带任何参数,默认以27017端口进行连接 mongo -port27017# 指定连接端口,若服务端配置的是其他端口,则客户端连接时需指定端口号
连接成功后如图所示:
测试数据库能否正常使用,可以看到数据库连接使用正常: