Linux中安装MongoDB(Centos7)

MongoDB安装

rpm安装

参考官方文档:http://docs.mongoing.com/manual-zh/tutorial/install-mongodb-enterprise-on-red-hat.html

配置MongoDB Enterprise的yum 源文件:

[root@localhost ~]# vim /etc/yum.repos.d/mongodb.repo
[mongodb-enterprise]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/3.4/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc

安装:

[root@localhost ~]# yum install -y mongodb-enterprise

启动:

    [root@localhost ~]# systemctl start mongod
    [root@localhost ~]# systemctl enable mongod

源码安装:

下载软件包:[root@localhost ~]# wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel70-3.4.7.tgz
    解压:[root@localhost ~]# tar xf mongodb-linux-x86_64-rhel70-3.4.7.tgz -C /usr/local/
    创建数据目录:[root@localhost ~]# mkdir -p /data/db
    启动:
        [root@localhost ~]# cd /usr/local/
        [root@localhost local]# ln -sv mongodb-linux-x86_64-rhel70-3.4.7/ mongodb
        "mongodb" -> "mongodb-linux-x86_64-rhel70-3.4.7/"
        [root@localhost local]# echo "export PATH=$PATH:/usr/local/mongodb/bin" > /etc/profile.d/mongo.sh
        [root@localhost local]# source /etc/profile.d/mongo.sh
        
        [root@localhost ~]# mongod --dbpath /data/db/ &
        mongod 启动数据库进程 
            --dbpath 指定数据库的目录 
            --port 指定数据库的端口,默认是27017 
            --bind_ip 绑定IP 
            --directoryperdb为每个db创建一个独立子目录 
            --logpath指定日志存放目录
源码安装 -- 服务脚本:

1、创建配置文件mongod.conf
   [root@localhost ~]# vim /usr/local/mongodb/bin/mongod.conf
	systemLog:
			 destination: file  #以文件形式输出日志文件,输入file之前,需要空格
			 path: /usr/local/mongodb/log/mongodb.log #表示存储日志文件    
			 logAppend: true    #日志是追加模式,false是覆盖模式
	storage:
			 dbPath: /usr/local/mongodb/data    #表示存储mongodb数据库文件目录    
	processManagement:
			 fork: true    #作为后台服务运行
	#net:
	#         bindIP: 127.0.0.1
	#         port: 27017
	#security:
	#         authorization:enabled
2、按配置文件设置创建日志和数据文件存放目录:
[root@localhost ~]# mkdir -p /usr/local/mongodb/{data,log}

3、配置mongodb.service文件
[root@localhost ~]# vim /usr/lib/systemd/system/mongodb.service
[Unit]
Description=mongodb service daemon
After=network.target
 
[Service]
Type=forking
ExecStart=/usr/local/mongodb/bin/mongod -f /usr/local/mongodb/bin/mongod.conf
ExecStop=/usr/local/mongodb/bin/mongod --shutdown -f /usr/local/mongodb/bin/mongod.conf
PrivateTmp=true
 
[Install]
WantedBy=multi-user.target
保存mongodb.service文件后,需要输入命令进行重新加载.
[root@localhost ~]# systemctl daemon-reload
 
测试服务脚本:
注意:测试之前先将之前用命令启动服务停止。
[root@localhost ~]# kill `pidof mongod`
[root@localhost ~]# systemctl start mongodb
[root@localhost ~]# systemctl enable mongodb

[root@localhost ~]# lsof -i tcp:27017
COMMAND   PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
mongod  11621 root    7u  IPv4  47543      0t0  TCP *:27017 (LISTEN)

启动服务:

systemctl start mongod
systemctl enable mongod

验证测试:

查看端口:ss -lnupt | grep :27017
查看进程:ps -ef | grep mongod
反查端口:lsof -i tcp:27017
服务状态:systemctl status mongod

配置文件讲解:

# 数据库文件位置
dbpath=/var/lib/mongodb

#日志文件的路径
logpath=/var/log/mongodb/mongodb.log

# 是否追加方式写入日志,默认True
logappend=true

# 设置绑定ip
bind_ip = 127.0.0.1
# 设置端口
port = 27017

# 是否以守护进程方式运行,默认false
fork = true

# 启用日志文件,默认启用
journal=true
# 启用定期记录CPU利用率和 I/O 等待,默认false
#cpu = true

# 是否以安全认证方式运行,默认是不认证的非安全方式
#noauth = true
#auth = true

# 详细记录输出,默认false
#verbose = true

#用于开发驱动程序时验证客户端请求
#objcheck = true

# # 启用数据库配额管理,默认false
#quota = true

# 设置oplog日志记录等级,默认0
#   0=off (default)
#   1=W
#   2=R
#   3=both
#   7=W+some reads
#oplog = 0
# 是否打开动态调试项,默认false
#nocursors = true

# 忽略查询提示,默认false
#nohints = true

# 禁用http界面,默认为localhost:28017
#nohttpinterface = true

# 关闭服务器端脚本,这将极大的限制功能,默认false
#noscripting = true

# 关闭扫描表,任何查询将会是扫描失败
#notablescan = true

# 关闭数据文件预分配
#noprealloc = true

# 为新数据库指定.ns文件的大小,单位:MB
# nssize = <size>

# 用于Mongo监控服务器的Accout token。
#mms-token = <token>

# Mongo监控服务器的服务器名称。
#mms-name = <server-name>

# Mongo监控服务器的Ping间隔时间,即心跳
#mms-interval = <seconds>

# Replication Options

# 设置主从复制参数
#slave = true # 设置从节点
#source = master.example.com # 指定从节点的主节点
# Slave only: 指定要复制的单个数据库
#only = master.example.com
# or
#master = true # 设置主节点
#source = slave.example.com 

# 设置副本集的名字,所有的实例指定相同的名字属于一个副本集
replSet = name

#pairwith = <server:port>
# 仲裁服务器地址
#arbiter = <server:port>

# 默认为false,用于从实例设置。是否自动重新同步
#autoresync = true

# 指定的复制操作日志(OPLOG)的最大大小
#oplogSize = <MB>

# 限制复制操作的内存使用
#opIdMem = <bytes>

# 设置ssl认证
# Enable SSL on normal ports
#sslOnNormalPorts = true

# SSL Key file and password
#sslPEMKeyFile = /etc/ssl/mongodb.pem
#sslPEMKeyPassword = pass

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

元气满满的热码式

感谢您的支持!我会继续努力发布

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值