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安全错误
数据库的锁怎样保障安全
新华互联网科技学院
互联网扶贫科技
互联网下的科技发展
互联网科技资迅
重庆互联网络科技
互联网 卓越科技
互联网科技的英文
南京欣网互联网科技
上游互联网科技
长亮科技 互联网金融
智腾互联网科技有限公司
中国航天科技大学国际工业互联网
互联网科技人工智能实验室
深圳市罗太互联网科技有限公司
卓翼科技产业互联网合作
互联网金融科技名词解释
互联网营销推广黑科技
扫呗互联网科技有限公司
普陀区互联网教育科技管理办法
科技互联网专业务虚会材料
互联网加科技
互联网科技开发公司
唐信互联网科技
美国互联网前沿科技
广西拼得多互联网科技有限公司
科技与互联网的利与弊
科技类公司包括互联网吗
中国科技创新与世界互联网大会
互联网科技大赛获奖感言
西安左小互联网科技有限公司