mongodb安装与启动

最近开始学习mongodb,今天对安装与启动做下整理

1、下载mongodb

进入mongodb的官网,选择了社区版本下载地址:https://www.mongodb.com/try/download/community,然后选择相应的操作系统,如我的就是这个:

 

 

压缩包下载成功后,上传到服务器上,我的是上传到/usr/local/software目录下

我先解压并移动下新的目录下:/usr/local/mongod4下面

tar -zxvf mongodb-linux-x86_64-rhel70-4.4.4.tgz

mv mongodb-linux-x86_64-rhel70-4.4.4 /usr/local/mongod4

2、下面说下启动方式:

为了将数据库的数据放到指定文件夹下,日志放到指定文件夹下,故我创建了两个目录,创建了mongo.log日志文件,还给这两个文件夹做了授权

mkdir /usr/local/mongod4/data
mkdir /usr/local/mongod4/logs
touch /usr/local/mongod4/logs/mongo.log

chmod -R 777 /usr/local/mongod4/data/
chmod -R 777 /usr/local/mongod4/logs/

启动方式有几种:

  • -dbpath: 数据文件存放地址
  • --logpath: 日志文件存放地址(注意这个是文件不是地址)
  • -fork: 后台启动(需要配合--logpath或者--syslog使用)
  • --auth: 是否要进行用户认证

一、前台启动:

/usr/local/mongod4/bin/mongod --dbpath=/usr/local/mongodb4/data --logpath=/usr/local/mongodb4/logs/mongo.log

二、后台启动:

/usr/local/mongod4/bin/mongod --dbpath=/usr/local/mongod4/data/ --logpath=/usr/local/mongod4/logs/mongo.log --fork --logappend

三、配置文件启动:

创建目录并写配置文件

mkidr /usr/local/mongod4/conf
touch /usr/local/mongod4/conf/mongodb.conf
vim /usr/local/mongod4/conf/mongodb.conf

配置文件内容以下:

dbpath=/usr/local/mongod4/data/   #数据目录
logpath=/usr/local/mongod4/logs/mongo.log   #日志文件
logappend=true   
#bind_ip_all=true  
bind_ip=192.168.31.75 #绑定指定IP
port=27017 fork=true #后台启动

 配置文件写好后,再通过命令进行启动:

/usr/local/mongod4/bin/mongod --config /usr/local/mongod4/conf/mongodb.conf 
/usr/local/mongod4/bin/mongod -f /usr/local/mongod4/conf/mongodb.conf

经过启动后,我们可以使用命令查看进程是否启动成功:

ps -ef |grep mongo

 

 出现以上就表示启动mongodb成功了

为了到处都可以使用mongo的命令,设置环境变量:vim /etc/profile,加入以下内容

export MONGODB_HOME=/usr/local/mongod4
export PATH=${MONGODB_HOME}/bin:$PATH

然后再重加载配置文件:source /etc/profile,就可以在任何路径使用mongo的命令了,如下图所示:

关闭数据库 

若是在前台启动,使用ctrl+c就可以关闭数据库

若是使用后台启用或配置文件启用,可以先找到进程Id,然后再关闭或者使用以下命令进行关闭:

1、进入数据库进行关闭

 

 即:

mongo
use admin
db.shutdownServer()

要注意的是,以上命令只允许在本地,或是一个经过认证的客户端

 

2、如果这是一个主从式的复制集群,在1.9.1版本后将按下面的步骤来关闭

检查从Mongodb的数据更新时间
如果所有的从Mongodb和主的时间差都超过10,这个时候不会关闭mongodb

(在这种情况下面,我们可以通过配置timeoutSecs的方式来让从Mongodb完成数据的更新)
如果其中有一个从Mongodb与主服务时间差在10秒内,那么主服务器将会关闭,并且等待从Mongodb更新完成并关闭。
3、如果没有up-to-date 从Mongodb且你想强制关闭服务,可以通过添加force:true;命令如下:
> db.adminCommand({shutdown : 1, force : true})
> //or
> db.shutdownServer({force : true})

4、指定特定超时时间的关闭服务器,命令同上,另外加上一个timeoutsec:参数

> db.adminCommand(shutdown : 1, force : true, timeoutsec : 5)
> //or
> db.shutdownServer({force : true, timeoutsec : 5})

将数据库自启动:

 

 

 

posted @ 2021-03-16 16:09  aaron616  阅读(753)  评论(0编辑  收藏  举报