Centos 7 Mongodbのインストールとshellスクリプトの構成
4141 ワード
shellスクリプト
#!/bin/bash
echo "**************************************"
echo "***** *****"
echo "*** Mongodb ***"
echo "***** *****"
echo "**************************************"
echo "=====> Mongodb:"
wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.6.3.tgz
if [ $? -eq 0 ]; then
echo "=====> !"
echo "=====> !"
tar -zxvf mongodb-linux-x86_64-3.6.3.tgz
echo "=====> !"
mkdir /usr/local/mongodb && mv mongodb-linux-x86_64-3.6.3/* /usr/local/mongodb/ && cd /usr/local/mongodb && mkdir data && touch logs && cd bin
echo "=====> !"
./mongod --dbpath=/usr/local/mongodb/data --logpath=/usr/local/mongodb/logs --logappend --port=27017 --fork
if [ $? -eq 0 ]; then
echo "=====> ";
touch mongodb.conf
echo "=====> mongodb"
echo "dbpath=/usr/local/mongodb/data" >> mongodb.conf
echo "logpath=/usr/local/mongodb/logs" >> mongodb.conf
echo "logappend=true" >> mongodb.conf
echo "port=27017" >> mongodb.conf
echo "fork=true" >> mongodb.conf
echo "bind_ip=0.0.0.0" >> mongodb.conf
echo "=====> Mongodb "
touch /lib/systemd/system/mongodb.service
echo "[Unit]" >> /lib/systemd/system/mongodb.service
echo "Description=mongodb" >> /lib/systemd/system/mongodb.service
echo "After=network.target remote-fs.target nss-lookup.target" >> /lib/systemd/system/mongodb.service
echo "[Service]" >> /lib/systemd/system/mongodb.service
echo "Type=forking" >> /lib/systemd/system/mongodb.service
echo "ExecStart=/usr/local/mongodb/bin/mongod --config /usr/local/mongodb/bin/mongodb.conf" >>/lib/systemd/system/mongodb.service
echo "ExecReload=/bin/kill -s HUP $MAINPID" >> /lib/systemd/system/mongodb.service
echo "ExecStop=/usr/local/mongodb/bin/mongod --shutdown --config /usr/local/mongodb/bin/mongodb.conf" >> /lib/systemd/system/mongodb.service
echo "PrivateTmp=true" >> /lib/systemd/system/mongodb.service
echo "[Install]" >> /lib/systemd/system/mongodb.service
echo "WantedBy=multi-user.target" >> /lib/systemd/system/mongodb.service
echo "=====> Mongodb !";
systemctl daemon-reload
systemctl enable mongodb.service
sed -i '/^PATH/ i\MONGODB_HOME\=\/usr\/local\/mongodb' /etc/profile
sed -i '/^PATH/ s/$/\:\$MONGODB_HOME\/bin/' /etc/profile
sed -i '/export/ s/$/\ MONGODB_HOME/' /etc/profile
source /etc/profile
else
echo "=====> !";
exit;
fi
else
echo "=====> , !"
exit
fi
echo "===> mongodb<===";
mongo
スクリプトの実行
# root
vim mongodb.sh #
chmod +x mongodb.sh #
./mongodb.sh #
linuxの/etc/profileに保存されているのはLinuxの環境変数で、私の環境変数はこのようなものです
unset i
unset -f pathmunge
JAVA_HOME=/usr/lib/jvm/java
# shell
MONGODB_HOME=/usr/local/mongodb
CLASSPATH=.:/lib/dt.jar:/lib/tools.jar
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/bin:$MONGODB_HOME/bin
export JAVA_HOME CLASSPATH PATH MONGODB_HOME
ソフトウェアのインストールに環境変数を合わせる必要がある場合は、このファイルを整理し、通常はMongodbのインストールのような設定しか必要ありません.
MONGODB_HOME=/usr/local/mongodb # PATH
:$MONGODB_HOME/bin # PATH
MONGODB_HOME # export
ヒント
Mongodbでは、構成を直接インストールし、POSTにサービスを追加し、最後にCentosの環境変数にクライアントを追加できます.PS:shellのシナリオはやはり比較的にlowのを書いて、軽く噴き出して、ははは!