中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Cacti節點數據庫自動同步腳本

發布時間:2020-07-04 15:05:31 來源:網絡 閱讀:553 作者:babyfenei 欄目:數據庫

因公司CA平臺較多,每次添加或修改數據都需要在好幾個CA上進行操作,同時因公司每臺CA上都部署有自動導出腳本,如果手動給每臺CA服務器添加或修改數據的話會造成圖形ID不一致,從而導致自動導出的圖形不一致等問題。所以做次腳本。部署在主CA上。并添加crontab計劃任務。每日凌晨自動同步所有節點數據庫,使所有節點數據一致。

一、首先編輯腳本

touch /root/back.sh
chmod +x /root/back.sh
vi /root/back.sh

二、插入一下腳本內容,具體參數根據實際情況修改,節點可根據自己需求進行增刪。

#!/bin/bash  
#Cacti節點數據庫自動同步腳本
#By:Fenei QQ:407603129
#2016年5月12日
#轉載請注明出處
#http://babyfenei.blog.51cto.com/443861/1772494
  
st=$(date +%s)  
USER="root"   
PASSWORD="mysql數據庫密碼" 
DATABASE="cacti"   
MAIL="告警郵件收件箱"
#mail     
BACKUP_DIR=/root/data_backup/
CANAME=cacti.sql
#備份文件存儲路徑   
LOGFILE=/root/data_backup/data_backup.log
#日志文件路徑  
   
DATE=`date +%Y%m%d-%H%M`
#用日期格式作為文件名  
DUMPFILE=$DATE.sql   
ARCHIVE=$DATE.sql.tar.gz   
OPTIONS="-u$USER -p$PASSWORD $DATABASE --ignore-table=cacti.settings" 
#排除settings表
  
#判斷備份文件存儲目錄是否存在,否則創建該目錄   
if [ ! -d $BACKUP_DIR ]   
then  
    mkdir -p "$BACKUP_DIR"  
fi    
  
#開始備份之前,將備份信息頭寫入日記文件   
echo "    ">> $LOGFILE   
echo "--------------------" >> $LOGFILE   
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $LOGFILE   
echo "-------------------" >> $LOGFILE    
  
#切換至備份目錄   
cd $BACKUP_DIR   
mysqldump $OPTIONS > $DUMPFILE
#判斷數據庫備份是否成功   
if [[ $? == 0 ]]  
then   
    tar czvf $ARCHIVE $DUMPFILE >> $LOGFILE 2>&1   
    echo "[$ARCHIVE] Backup Successful!" >> $LOGFILE   
    rm -f $DUMPFILE 
        #刪除原始備份文件,只需保留備份壓縮包  
    # 把壓縮包文件備份到其他機器上。  
 else   
    echo "Database Backup Fail!" >> $LOGFILE   
#備份失敗后向管理者發送郵件提醒   
mail -s "database:$DATABASE Daily Backup Fail!" $MAIL   
fi   
echo "Backup Process Done"  
# 備份文件為cacti.sql并遠程備份到節點服務器 
cd $BACKUP_DIR
mysqldump $OPTIONS > $BACKUP_DIR$CANAME  

###############聯通CA同步#################
scp -P 17121 $BACKUP_DIR$CANAME root@聯通IP:/tmp/ >> $LOGFILE  2>&1
if [[ $? == 0 ]]
	then
		echo "scp is down"
		ssh -t -p 17121 root@聯通IP "mysql -uroot -p聯通數據庫密碼 cacti </tmp/cacti.sql"
		# -p 17121 為ssh端口 沒有的話可以刪掉
		ssh -t -p 17121 root@聯通IP "rm -f /tmp/cacti.sql"
		echo "shell is down!"
	else
		mail -s "聯通CA數據庫同步出錯!" $MAIL 
fi
###############聯通CA同步###############
###############電信CA同步###############
scp -P 17121 $BACKUP_DIR$CANAME root@1.82.190.139:/tmp/ >> $LOGFILE  2>&1
if [[ $? == 0 ]]
	then
		echo "scp is down"
		ssh -t -p 17121 root@電信IP "mysql -uroot -p電信數據庫密碼 cacti </tmp/cacti.sql"
		ssh -t -p 17121 root@電信IP "rm -f /tmp/cacti.sql"
		echo "shell is down!"
	else
		mail -s "電信CA數據庫同步出錯!" $MAIL 
fi
###############電信CA同步###############
##############雙線CA-備同步#############
scp  $BACKUP_DIR$CANAME root@雙線IP :/tmp/ >> $LOGFILE  2>&1
if [[ $? == 0 ]]
	then
		echo "scp is down"
		ssh -t  root@雙線IP  "mysql -uroot -p雙線數據庫密碼 cacti </tmp/cacti.sql"
		ssh -t  root@雙線IP  "rm -f /tmp/cacti.sql"
		echo "shell is down!"
	else
		mail -s "雙線CA-備數據庫同步出錯!" $MAIL
fi
###############雙線CA-備同步############
rm -f $BACKUP_DIR$CANAME
#刪除3天以上的備份文件  
#Cleaning  
find $BACKUP_DIR  -type f -mtime +30 -name "*.tar.gz" -exec rm -f {} \;

三、備份和遠程恢復需要對所有節點服務器做SSH免密碼登錄,具體可參考http://lhflinux.blog.51cto.com/1961662/526122

四、編輯ctontab 

vi /etc/cron.d/backup
#插入如下內容
01 00  * * * root /root/back.sh > /dev/null 2>&1
#退出編輯狀態,重啟crond服務
service crond restart


向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

鄂伦春自治旗| 若尔盖县| 曲靖市| 定南县| 桦甸市| 东港市| 阿瓦提县| 吐鲁番市| 奉新县| 彭泽县| 皋兰县| 武乡县| 乐山市| 徐汇区| 延安市| 湖口县| 新乡县| 台南市| 诏安县| 洱源县| 鄯善县| 呼伦贝尔市| 昭通市| 探索| 土默特左旗| 株洲市| 舞钢市| 京山县| 始兴县| 广丰县| 定南县| 台中市| 天柱县| 永丰县| 罗城| 洛宁县| 建昌县| 简阳市| 漳浦县| 那曲县| 新田县|