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
如果其中有一个从Mongodb与主服务时间差在10秒内,那么主服务器将会关闭,并且等待从Mongodb更新完成并关闭。
> 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})
将数据库自启动: