#!/bin/sh
# chkconfig: 2345 93 18
# Edit by Sky
# description:MongoDB(MongoDB-1.8.1)
#mongodb 家目录
MONGODB_HOME=/data1/PRG/mongodb
#mongodb 启动命令
MONGODB_BIN=$MONGODB_HOME/bin/mongod
#mongodb 监听端口
MONGODB_PORT="5506"
#mongodb 日志文件
MONGODB_LOGPATH=$MONGODB_HOME/log/mogodb.log
#mongodb 日志级别 -v -vv -vvv -vvvv -vvvvv
MONGODB_LOG_LEVEL="-vvvvv"
#mongodb 日志追加模式 不启用则该参数为空
MONGODB_LOGAPPAND="--logappend"
#mongodb 守护进程模式运行 同时要设置logpath 不启用则该参数为空
MONGODB_DEAMON="--fork"
#mongodb PID文件
MONGODB_PID=$MONGODB_HOME/log/mogodb.pid
#mongodb 数据文件
MONGODB_DBPATH=$MONGODB_HOME/data
#mongodb maxConns
MONGODB_maxConns="2000"
#mongodb 连接登录限制 不启用则该参数为空
MONGODB_AUTH="--auth"
#MONGODB_AUTH=""
#mongodb 定期显示cpu的利用率和iowait 不启用则该参数为空
MONGODB_CPU="--cpu"
#mongodb 数据同步到disk的时间间隔 默认为60
MONGODB_SYNCDELAY="60"
#mongodb 角色 single-单机 || sets Replica set集群模式 || master ms模式 || slaver ms 模式
MONGODB_ROLE="single"
#mongodb 其它配置参数按需增加
MONGODB_OTHER_PARM="--directoryperdb"
#sets/ms oplogSize 配置 为了能使从库能支持超2小时的停机时间大少应设置为>=6G
MONGODB_oplogSize="6144"
#----------------Replica set
#sets 角色的时候设置
MONGODB_replSet="online"
#sets 额外配置
SETS_OTHER_PARA="--rest"
#--------------------------
#----------------Master - Slaver
#本机所属的角色 master slave 该属性暂不使用
MONGODB_MS_ROLE="slave"
#中间为M代表为应用到Master的配置 S代表slave的配置
MONGODB_M_oplogSize=$MONGODB_oplogSize
#指定Master机器地址和端口
MONGODB_S_SOURCE="127.0.0.1:5506"
#指定同步数据的时间间隔
MONGODB_S_slavedelay="3"
#Slave的额外配置 例如--only online 无则为空
MONGODB_S_PARM=""
#------------------------------
#打开文件数
SYSTEM_MAXFD=65535
#mongodb 用户
MONGODB_USER="mongodb"
#mongodb 用户组
MONGODB_GROUP="mongodb"
#mongodb 名字
MONGODB_NAME="mongodb"
. /etc/rc.d/init.d/functions
if [ ! -f $VARNISH_SBIN ]
then
echo "$MONGODB_NAME startup: $MONGODB_BIN not exists! "
exit
fi
start() {
ulimit -HSn $SYSTEM_MAXFD
ret=1
if [[ "$MONGODB_ROLE" == "single" ]] ; then
su $MONGODB_USER -c "$MONGODB_BIN $MONGODB_DEAMON --port $MONGODB_PORT --logpath $MONGODB_LOGPATH $MONGODB_LOG_LEVEL $MONGODB_LOGAPPAND --pidfilepath $MONGODB_PID --dbpath $MONGODB_DBPATH --maxConns $MONGODB_maxConns $MONGODB_AUTH $MONGODB_CPU --syncdelay $MONGODB_SYNCDELAY $MONGODB_OTHER_PARM > /dev/null 2>&1 "
ret=$?
elif [[ "$MONGODB_ROLE" == "sets" ]] ; then
echo "Replica set Starting"
su $MONGODB_USER -c "$MONGODB_BIN --replSet $MONGODB_replSet $MONGODB_DEAMON --port $MONGODB_PORT --logpath $MONGODB_LOGPATH $MONGODB_LOG_LEVEL $MONGODB_LOGAPPAND --pidfilepath $MONGODB_PID --dbpath $MONGODB_DBPATH --maxConns $MONGODB_maxConns $MONGODB_AUTH $MONGODB_CPU --syncdelay $MONGODB_SYNCDELAY --oplogSize $MONGODB_oplogSize $MONGODB_OTHER_PARM $SETS_OTHER_PARA > /dev/null 2>&1 "
ret=$?
elif [[ "$MONGODB_ROLE" == "master" ]] ; then
echo "Masteri Starting"
su $MONGODB_USER -c "$MONGODB_BIN $MONGODB_DEAMON --port $MONGODB_PORT --master --logpath $MONGODB_LOGPATH $MONGODB_LOG_LEVEL $MONGODB_LOGAPPAND --pidfilepath $MONGODB_PID --dbpath $MONGODB_DBPATH --maxConns $MONGODB_maxConns $MONGODB_AUTH $MONGODB_CPU --syncdelay $MONGODB_SYNCDELAY --oplogSize $MONGODB_M_oplogSize $MONGODB_OTHER_PARM > /dev/null 2>&1"
ret=$?
elif [[ "$MONGODB_ROLE" == "slave" ]] ; then
su $MONGODB_USER -c "$MONGODB_BIN $MONGODB_DEAMON --port $MONGODB_PORT --slave --source $MONGODB_S_SOURCE --slavedelay $MONGODB_S_slavedelay --logpath $MONGODB_LOGPATH $MONGODB_LOG_LEVEL $MONGODB_LOGAPPAND --pidfilepath $MONGODB_PID --dbpath $MONGODB_DBPATH --maxConns $MONGODB_maxConns $MONGODB_AUTH $MONGODB_CPU --syncdelay $MONGODB_SYNCDELAY $MONGODB_S_PARM $MONGODB_OTHER_PARM > /dev/null 2>&1"
ret=$?
else
echo "Mongodb role Wrong"
fi
if [ $ret -eq 0 ]; then
action $"Starting $MONGODB_NAME: " /bin/true
else
action $"Starting $MONGODB_NAME: " /bin/false
fi
}
stop() {
kill -2 `cat $MONGODB_PID`
ret=$?
if [ $ret -eq 0 ]; then
action $"Stopping $MONGODB_NAME: " /bin/true
else
action $"Stopping $MONGODB_NAME: " /bin/false
fi
}
restart() {
stop
start
}
init() {
echo "MongoDB init ......"
LOGPATH_DIR=$(dirname $MONGODB_LOGPATH)
if [[ -e $LOGPATH_DIR ]] ; then
echo "$MONGODB_LOGPATH 中 $LOGPATH_DIR 已存在,跳过"
else
echo "创建 $MONGODB_LOGPATH 中的 $LOGPATH_DIR"
mkdir -p $LOGPATH_DIR
/bin/chown -R $MONGODB_USER:$MONGODB_GROUP $LOGPATH_DIR
fi
PID_DIR=$(dirname $MONGODB_PID)
if [[ -e $PID_DIR ]] ; then
echo "$MONGODB_PID 中 $PID_DIR 已存在,跳过"
else
echo "创建 $MONGODB_PID 中 $PID_DIR"
mkdir -p $PID_DIR
/bin/chown -R $MONGODB_USER:$MONGODB_GROUP $PID_DIR
fi
if [[ -e $MONGODB_DBPATH ]] ; then
echo "$MONGODB_DBPATH 已存在,跳过"
else
echo "是否自动创建$MONGODB_DBPATH(y|n)"
read answer
if [[ $answer == "y" ]] ; then
mkdir -p $MONGODB_DBPATH
/bin/chown -R $MONGODB_USER:$MONGODB_GROUP $MONGODB_DBPATH
fi
fi
echo "MongoDB init finished"
}
case "$1" in
start)
start
;;
stop)
stop
;;
init)
init
;;
*)
echo $"Usage: $0 {start|stop|init}"
exit 1
esac
分享到:
相关推荐
NULL 博文链接:https://simba.iteye.com/blog/609524
mongodb集群部署脚本,包括mongos启动、mongodb config启动,mongodb分片启动,mongodb副本集仲部署等脚本
上传Linux服务器,解压使用,上传Linux服务器,解压使用! 内包含一键自动化启动脚本
压缩包中的Mongo版本是4.0,此工具功能为一键启动、关闭、进入命令行操作,在安装完成后即可直接使用,...MongoDB是64位的安装包,一键启动器是JDK1.8下开发,下载为压缩包,里面有安装包、启动器、安装及启动教程。
这是使用Docker容器配置,部署和运行MongoDB的主要脚本。 这里,我们有几个功能可以简化部署过程中的某些操作,如下所示: setup_kernel() :根据MongoDB最佳实践设置一些内核参数 checknodes() :检查...
主要介绍了Linux下的mongodb服务监视脚本(启动服务),需要的朋友可以参考下
mongodb_cluster_shell mongodb集群部署脚本
win 上的MongoDB启动bat脚本。必须提前配置好MongoDB的服务。使用时,需要使用管理员权限运行(对服务操作的权限)
mongodb版本号3.2,需手动开启http服务,启动时使用命令 ./mongod --httpinterface 新增 修改 删除 查询 排序 分页 可查看: https://blog.csdn.net/m0_37132783/article/details/96992439
4.4.5 MongoDB + 1.4.3 Robot 3T连接工具,官网下载,配置已初始化好,包含一键添加服务、一键启动、关闭等脚本。使用方便,亲测好用。配套文章:https://blog.csdn.net/qq_33204709/article/details/115905659
mogodb 安装非常简单,直接解压就可以了. 1. 下载 MongoDB 官网上下载 mongodb-Linux-x86_64-ubuntu1604-3.2.8.tgz 2. 解压 解压命令: tar -zxvf mongodb-linux-x86_64-ubuntu1604-3.2.8....1. 启动脚本
文档包含以下几部分:1、mongodb在linux下的安装步骤;2、mongodb的基本配置;3、mongodb的启动、关闭脚本;4、mongodb的php扩展安装。
该文件为centos7环境下,mongoDB3.4一键部署配置脚本。下载该文件,拖到服务器上,$ sh mongo.sh 执行该脚本就能自动化下载、安装、配置防火墙、远程访问、开机自启动等。
977.2.4 尾部游标 987.3 GridFS:存储文件 997.3.1 开始使用GridFS:mongofiles 997.3.2 通过MongoDB驱动程序操作GridFS1007.3.3 内部原理 1007.4 服务器端脚本 1017.4.1 dbeval 1017.4.2 存储...
977.2.4 尾部游标 987.3 GridFS:储存文件 997.3.1 开始使用GridFS:mongofiles 997.3.2 通过MongoDB 驱动程序操作GridFS 1007.3.3 内部原理 1007.4 服务器端脚本 1017.4.1 db.eval 1017.4.2 存储...
主要介绍了Ubuntu系统中安装MongoDB及其启动命令mongod的教程,包括设置MongoDB开机启动的脚本示例,非常推荐,需要的朋友可以参考下
studio3T无限试用,mongodb图形化管理工具,运行脚本就可以试用30天,到期后再运行,可以无限试用,脚本可以放到自启动里面,这样就可以自动运行
使用启动脚本创建mongodb数据库apiVersion : kubedb....
毕业设计,基于Vue+NodeJS+Express+MongoDb开发的个人家庭财务系统,内含NodeJS完整源代码,数据库脚本 基于Vue_Express_Mongodb个人家庭财务系统设计毕业源码案例设计 开发软件: VsCode 开发语言: javascript ...