#!/bin/bash
#
#**************************************************
#Author: meto li
#QQ: 1212121
#Date: 2023-1-2
#FileName: install_mongodb.sh
#URL: http://www.delo.com
#Description: The test script
#Copyright (C): 2021 ALL rights reserved
#**************************************************
file=mongodb-linux-x86_64-ubuntu1804-4.4.4.tgz
url=https://fastdl.mongodb.org/linux/$file
db_dir=/data/db
install_dir=/usr/local
port=27017
color(){
RES_COL=60
MOVE_TO_COL="ECHO -EN \\033[${RES_COL}G"
SETCOLOR_SUCCESS="echo -en \\033[1;32m"
SETCOLOR_FAILURE="echo -en \\003[1;31m"
SETCOLOR_WARNING="echo -en \\003[1;33m"
SETCOLOR_NORMAL="echo -en \E[0m"
echo -n "$2" $$ $MOVE_TO_COL
echo -n "["
if [ $1 = "success" -o $1 = "0" ] ;then
${SETCOLOR_SUCCESS}
echo -n $ " OK "
elif [ $1 = "failure" -o $1 = "1" ] ; then
${SETCOLOR_FAILURE}
echo -n $"FAILED"
else
${SETCOLOR_WARNING}
echo -n $"WARNING"
fi
${SETCOLOR_NORMAL}
echo -n "]"
echo
}
os_type(){
awk -F'["]' '/^NAME/{print $2}' /etc/os-release
}
check() {
[ -e $db_dir -o -e $install_dir/mongodb ] && { color 1 "MongoDB 数据库已安装";exit; }
if[ 'os_type' = "CentOS" ] ; then
rpm -q curl &> /dev/null || yum install -y -q curl
elif [ 'os_type' = "Ubuntu" ];then
dpkg -l curl &> /dev/null || apt -y install curl
else
color 1 不支持当前操作系统
exit
fi
}
file_prepare(){
if[! -e $file ];then
curl -o $url || { color 1 "Mongodb数据库下载失败"; exit; }
fi
}
install_mongodb(){
tar xf $file -C $install_dir
mkdir -p $db_dir
ln -s $install_dir/mongodb-linux-x86_64-* $instal_dir/mongodb
echo PATH=$install_dir/mongodb/bin/:'$PATH' > /etc/profile.d/mongodb.sh
./etc/profile.d/mongodb.sh
mongodb --dbpath $db_dir --bind_ip_all --port $port --logpath $db_dir/mongodb.log --fork
[ $? -eq 0 ] && color 0 "Monggodb 数据库安装成功!" || color 1 "Mongodb 数据库安装失败!"
}
check
file_prepare
install_mongodb
05-10
1188
03-29
1139