Shell脚本一键部署MongoDB
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,Shell脚本一键部署MongoDB基本实施思路:安装MongoDB→创建多实例(创建数量可根据需求自定义)→开启所有实例并展示端口#!/bin/bash#自动安装MongoDB##检查MongoDB
千家信息网最后更新 2026年10月31日Shell脚本一键部署MongoDB
Shell脚本一键部署MongoDB
基本实施思路:
安装MongoDB→创建多实例(创建数量可根据需求自定义)→开启所有实例并展示端口
#!/bin/bash#自动安装MongoDB##检查MongoDB是否已安装local="/etc/yum.repos.d/MongoDB.repo"rpm -q mongodb-org &> /dev/nullif [ $? -ne 0 ];then#配置本地YUM源 ls /etc/yum.repos.d/ | grep Mongo &> /dev/null if [ $? -ne 0 ];then touch $local echo "[mongodb-org]" >> $local echo "name=mongodb" >> $local echo "baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/3.6/x86_64/" >> $local echo "gpgcheck=1" >> $local echo "enabled=1" >> $local echo "gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc" >> $local yum list yum install mongodb-org -y else echo "配置本地YUM源配置完成" yum list yum install mongodb-org -y fielse echo "MongoDB已安装~~~~~"fi#反复比对密钥(可能不会一次成功)for ((i=1;i<=10;i++))do rpm -q mongodb-org &> /dev/null if [ $? -ne 0 ];then yum install mongodb-org -y fidone#监听所有网段sed -i "/bindIp/s/127.0.0.1/0.0.0.0/" /etc/mongod.confsystemctl start mongod.service#检测是否启动正常netstat -atnp | grep 27017 &> /dev/nullif [ $? -eq 0 ];then echo "MongoDB服务启动,一号实例建立完成"else echo "启动失败" exit 1fiecho "=========================================================="echo "即将开始创建实例"sleep 5#死循环进行多实例的创建for ((i=2;i>0;i++))do#判断数据目录与日志文件是否存在if [ ! -e /data/mongodb/mongodb$i ] && [ ! -e /data/mongodb/mongod$i.log ];then read -p "是否开始创建第$i个实例(y/n):" create p=`expr $i - 1` case $create in y)#建立数据存放路径 mkdir -p /data/mongodb/mongodb$i#新建多实例对应的日志文件 touch /data/mongodb/mongodb$i.log#日志文件提权 chmod 777 /data/mongodb/mongodb$i.log#复制原配置文件 cp -p /etc/mongod.conf /etc/mongod$i.conf#修改对应的数据文件存放路径&日志文件路径 sed -i "/path/s/\/var\/log\/mongodb\/mongod.log/\/data\/mongodb\/mongodb$i.log/" /etc/mongod$i.conf sed -i "/dbPath/s/\/var\/lib\/mongo/\/data\/mongodb\/mongodb$i/" /etc/mongod$i.conf point=`cat /etc/mongod.conf | grep port | awk '{print $2}'`#更改实例对应的端口号 sed -i "/port/s/27017/`expr $point + $p`/" /etc/mongod$i.conf#启动对应实例 mongod -f /etc/mongod$i.conf netstat -atnp | grep $point &> /dev/null if [ $? -eq 0 ];then echo "$i号实例开启成功" else echo "致命错误" exit 1 fi ;; n) echo "本次共创建$p个实例(包括一号实例)"#展示所有实例端口号 netstat -atnp | grep mongod | awk '{print $4}' | awk -F: '{print $2}' > shili echo "端口号为:" cat shili break ;; *) echo "请输入y/n,别搞些有的没的" esacelse echo "$i号实例已创建" fidonerm -rf shili
实例
文件
日志
口号
数据
路径
配置
成功
脚本
一键
原配
密钥
思路
数量
目录
端口
网段
错误
需求
循环
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
华服互联网科技靠谱吗
新华互联网科技
广州万易互联网科技有限公司
互联网与科技金融数据
广州互联网科技公司
互联网科技小贷
奇士达互联网科技
兼蜜互联网科技
长亮科技 互联网金融
互联网高科技股票
滨湖区互联网智能科技产品供应
蓝色互联网科技
昭通互联网科技选哪家
互联网科技公司有风险吗
速维有品互联网信息科技(苏州)有限公司
互联网金融科技名词解释
从那以后互联网科技有限公司
广州有谷有贝互联网科技有限公司
昆明中奇联合互联网科技
10位科技互联网大佬
上海睿民互联网科技有限公司
西安纸贵互联网科技有限公司
奔汉互联网科技
互联网系的金融科技公司
互联网科技公司实习生
中国互联网公司排名锤子科技
西安小鹰速贷互联网科技有限公司
互联网方面的科技前沿
四川互联网展示科技馆设计
恒生互联网科技趋势