前言

  • 模式自由 :可以把不同结构的文档存储在同一个数据库里
  • 面向集合的存储:适合存储 JSON风格文件的形式
  • 完整的索引支持:对任何属性可索引
  • 复制和高可用性:支持服务器之间的数据复制,支持主-从模式及服务器之间的相互复制。复制的主要目的是提供冗余及自动故障转移
  • 自动分片:支持云级别的伸缩性:自动分片功能支持水平的数据库集群,可动态添加额外的机器
  • 丰富的查询:支持丰富的查询表达方式,查询指令使用JSON形式的标记,可轻易查询文档中的内嵌的对象及数组
  • 快速就地更新:查询优化器会分析查询表达式,并生成一个高效的查询计划
  • 高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)

下载

打开mongodb下载地址后选择Community Server,然后选择Linux下载对应的版本安装包即可,但是下拉列表中有很多Linux安装包,Centos选择带RHEL的安装包,这里选择RHEl 7 Linux 64-bit x64版本的安装包即可

https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz

安装

1、切换到usr/local/文件夹下

cd /usr/local/

2、下载MongoDB源码包

wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-4.0.10.tgz

3、解压文件

tar -xzvf mongodb-linux-x86_64-rhel70-4.0.10.tgz

4、将解压后的文件重命名为mongodb

mv mongodb-linux-x86_64-rhel70-4.0.10 mongodb

5、添加mongodb的环境变量

vi /etc/profile

6、在文件末尾插入如下内容

export MONGODB_HOME=/usr/local/mongodb 
export PATH=$PATH:$MONGODB_HOME/bin

7、修改保存后要重启系统配置,执行命令如下

source /etc/profile

配置

1、创建数据库文件存放路径

cd /usr/local/mongodb
mkdir -p data/db
chmod -R 777 data/db

2、创建日志文件

cd /usr/local/mongodb
mkdir logs
cd logs
touch mongodb.log

3、创建启动文件

cd /usr/local/mongodb/bin
touch mongodb.conf

4、编辑启动文件

vi mongodb.conf

5、在文件中插入如下内容

# 设置端口号(默认的端口号是 27017)
port = 27017

# 设置数据文件的存放目录
dbpath = /usr/local/mongodb/data/db

# 设置日志文件的存放目录及其日志文件名
logpath = /usr/local/mongodb/logs/mongodb.log

#使用追加的方式写日志
logappend=true

# 设置为以守护进程的方式运行,即在后台运行
fork = true

#最大同时连接数
maxConns=100
  
#不启用验证
noauth=true

#每次写入会记录一条操作日志(通过journal可以重新构造出写入的数据)
journal=true

#即使宕机,启动时wiredtiger会先将数据恢复到最近一次的checkpoint点,然后重放后续的journal日志来恢复
#存储引擎有mmapv1、wirtiger、mongorocks
storageEngine=wiredTiger

#这样就可以外部访问了
bind_ip=0.0.0.0
port=27017  
dbpath=/usr/local/mongodb/db  
logpath=/usr/local/mongodb/log/mongodb.log  
logappend=true  
fork=true        
maxConns=19000
journal=true  
storageEngine=wiredTiger  
bind_ip = 0.0.0.0

slowms=1000

# 开启身份认证功能
auth = true

参数解释

**参数解释: **
--dbpath 数据库路径(数据文件)
--logpath 日志文件路径
--master 指定为主机器
--slave 指定为从机器
--source 指定主机器的IP地址
--pologSize 指定日志文件大小不超过64M.因为resync是非常操作量大且耗时,最好通过设置一个足够大的oplogSize来避免resync(默认的 oplog大小是空闲磁盘大小的5%)。
--logappend 日志文件末尾添加,即使用追加的方式写日志
--journal 启用日志
--port 启用端口号
--fork 在后台运行
--only 指定只复制哪一个数据库
--slavedelay 指从复制检测的时间间隔
--auth 是否需要验证权限登录(用户名和密码)
--syncdelay 数据写入硬盘的时间(秒),0是不等待,直接写入
--notablescan 不允许表扫描
--maxConns 最大的并发连接数,默认2000
--pidfilepath 指定进程文件,不指定则不产生进程文件
--bind_ip 绑定IP,绑定后只能绑定的IP访问服务

启动

切换到bin目录下

cd /usr/local/mongodb/bin

启动数据库

./mongod --config mongodb.conf

 访问数据库

mongo
posted on 2019-06-06 12:46  23云恋49枫  阅读(645)  评论(0编辑  收藏  举报