千家信息网

Cacti节点数据库自动同步脚本

发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,因公司CA平台较多,每次添加或修改数据都需要在好几个CA上进行操作,同时因公司每台CA上都部署有自动导出脚本,如果手动给每台CA服务器添加或修改数据的话会造成图形ID不一致,从而导致自动导出的图形不一
千家信息网最后更新 2026年11月02日Cacti节点数据库自动同步脚本

因公司CA平台较多,每次添加或修改数据都需要在好几个CA上进行操作,同时因公司每台CA上都部署有自动导出脚本,如果手动给每台CA服务器添加或修改数据的话会造成图形ID不一致,从而导致自动导出的图形不一致等问题。所以做次脚本。部署在主CA上。并添加crontab计划任务。每日凌晨自动同步所有节点数据库,使所有节点数据一致。

一、首先编辑脚本

touch /root/back.shchmod +x /root/back.shvi /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_DIRmysqldump $OPTIONS > $BACKUP_DIR$CANAME  ###############联通CA同步#################scp -P 17121 $BACKUP_DIR$CANAME root@联通IP:/tmp/ >> $LOGFILE  2>&1if [[ $? == 0 ]]        then                echo "scp is down"                ssh -t -p 17121 root@联通IP "mysql -uroot -p联通数据库密码 cacti > $LOGFILE  2>&1if [[ $? == 0 ]]        then                echo "scp is down"                ssh -t -p 17121 root@电信IP "mysql -uroot -p电信数据库密码 cacti > $LOGFILE  2>&1if [[ $? == 0 ]]        then                echo "scp is down"                ssh -t  root@双线IP  "mysql -uroot -p双线数据库密码 cacti 

三、备份和远程恢复需要对所有节点服务器做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


备份 数据 文件 数据库 节点 脚本 同步 密码 服务 一致 服务器 目录 公司 内容 图形 电信 路径 邮件 存储 原始 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技深圳 互联网科技公司做什么 互联网科技公司招聘 老年人脱离互联网科技的作文 上海电发互联网科技有限公司 中国科技互联网公司收入 团飞科技与伯堂互联网服务平台 互联网科技项目计划书材料类 辽宁互联网新科技 银川新华互联网科技学校联系电话 特约风豹互联网科技为什么扣费 互联网金融科技名词解释 工业互联网山东科技大学 美国互联网科技公司 卡尔迅互联网科技有限公司 上海乐五互联网科技有限公司 北京互联网科技类企业分布 北京军民互联网科技公司 安徽零酒互联网科技有限公司 株洲百竞科技的互联网营销顾问 科技互联网项目 没上市的科技互联网公司 互联网科技作文 卫星互联网科技股票 中化能源互联网科技招聘 互联网科技与大数据专业 中国互联网有什么科技 互联网金融运营模式中的金融科技 互联网金融金融科技 重庆科技产业互联网有哪些
0