返回顶部
首页 > 资讯 > 数据库 >Cacti节点数据库自动同步脚本
  • 757
分享到

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

2024-04-02 19:04:59 757人浏览 独家记忆
摘要

因公司CA平台较多,每次添加或修改数据都需要在好几个CA上进行操作,同时因公司每台CA上都部署有自动导出脚本,如果手动给每台CA服务器添加或修改数据的话会造成图形ID不一致,从而导致自动导出的图形不一致等问

因公司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


您可能感兴趣的文档:

--结束END--

本文标题: Cacti节点数据库自动同步脚本

本文链接: https://lsjlt.com/news/39925.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Cacti节点数据库自动同步脚本
    因公司CA平台较多,每次添加或修改数据都需要在好几个CA上进行操作,同时因公司每台CA上都部署有自动导出脚本,如果手动给每台CA服务器添加或修改数据的话会造成图形ID不一致,从而导致自动导出的图形不一致等问...
    99+
    2024-04-02
  • 自动备份mysql数据库脚本
    自动备份mysql数据库脚本#!/bin/sh# NCONF database backup# Script by Chen# add (and adapt) the following line to t...
    99+
    2024-04-02
  • python rsync 数据同步脚本
    #!/usr/bin/env python # -*- coding: utf-8 -*- import pexpect import time import traceback def doRsync(user,passwd,ip,s...
    99+
    2023-01-31
    脚本 数据同步 python
  • mysql5.6主主集群自动同步脚本
    在mysql主主集群中有机器关机等情况导致同步失效,自己写了一个shell脚本,以方便自己以后维护: 脚本内容如下: #!/bin/bash  #设置主节点、从节点IP和mysql数据库管理员用...
    99+
    2024-04-02
  • 自动同步2个目录python脚本
    #!/usr/bin/python # -*- coding: utf8 -*- import os import sys import filecmp import re import shutil file_list = [] de...
    99+
    2023-01-31
    脚本 目录 python
  • 【巨杉数据库Sequoiadb】备节点一直未同步主节点写入的数据
    【问题详细描述】  备节点一直未同步主节点写入的数据 【解决办法】  1.先检查备节点是否故障,如无故障情况下,检查备节点日志,查看该节点当时在做什么。  节点日志:数据库安装...
    99+
    2024-04-02
  • mysql数据库自动备份脚本分享
    前几篇博客已经相继公开了去转盘网的所有技术细节,如下:百度网盘爬虫中文分词算法邀请好友注册js分页部分代码这篇博客我将继续公开数据库自动备份的代码。可以这么说,没有数据库,一切就是个蛋,没有数据库备份,一切...
    99+
    2024-04-02
  • Linux oracle数据库自动备份自动压缩脚本代码
    #!#backup.sh##系统名称sysname=gzsyspath=/home/oracle/databak/$sysname/v_date=$(date '+%Y%m%d%H%M%S')logfil...
    99+
    2022-06-04
    脚本 自动备份 代码
  • shell脚本实现数据库表增量同步的流程
    需求:   每天定时将 源数据库 study_plan 库的 zxxt_class 表   增量同步到 目标数据库 axt_statistics 库的 zxxt_class 表中 ...
    99+
    2022-06-04
    shell数据库表增量同步 shell数据库表增量同步
  • 同步线上服务器代码到web节点脚本是什么
    这篇文章主要讲解了“同步线上服务器代码到web节点脚本是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“同步线上服务器代码到web节点脚本是什么”吧!shell提供了你与操作系统之间通讯的...
    99+
    2023-06-04
  • 设计自动监控从MySQL同步的脚本方法
    下面讲讲关于设计自动监控从MySQL同步的脚本方法,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完设计自动监控从MySQL同步的脚本方法这篇文章你一定会有所受益。  &...
    99+
    2024-04-02
  • 自动监控主从MySQL同步的SHELL脚本分享
    这篇文章主要介绍“自动监控主从MySQL同步的SHELL脚本分享”,在日常操作中,相信很多人在自动监控主从MySQL同步的SHELL脚本分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望...
    99+
    2024-04-02
  • Oracle数据库ODBC连接与数据库备份恢复脚本自动化
    Oracle数据库ODBC连接与数据库备份恢复脚本自动化可以通过以下步骤实现: 安装Oracle ODBC驱动程序:首先需要安装Oracle ODBC驱动程序,以便能够通过ODBC连接Oracle数据库。 创建ODBC数据源:在控制...
    99+
    2024-07-16
    oracle
  • Python脚本实现自动将数据库备份到 Dropbox
    最近,正好发生了一件大事,就是 GitLab 的运维同学不小心删除了生产的数据,虽然 GitLab 已经骇人听闻的准备了五种备份机制,但是,仍然导致他们丢失了将近 6 个小时的用户数据,尤其对他们声誉的损失...
    99+
    2022-06-04
    脚本 备份 数据库
  • VPS自动备份数据库到FTP的脚本代码
    1)确保自己在home目录(若不是,运行:cd /home) 2)新建backup文件夹(命令:mkdir backup) 3)新建脚本backup.sh vi backup.sh 复制以下代码(复制完后:...
    99+
    2022-06-04
    脚本 自动备份 代码
  • centos每天自动备份mysql数据库的脚本分享
    本篇内容主要讲解“centos每天自动备份mysql数据库的脚本分享”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“centos每天自动备份mysql数据库的脚本...
    99+
    2024-04-02
  • Oracle数据库中怎么实现一个自动备份脚本
    这篇文章给大家介绍Oracle数据库中怎么实现一个自动备份脚本,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、备份脚本1、初始化变量,记录开始日志#变量  sysname=...
    99+
    2024-04-02
  • 阿里云数据库本地同步不了
    简介 阿里云数据库是一款稳定可靠的云数据库服务,但有时用户在进行数据库同步时可能会遇到同步不了的情况。本文将探讨可能的原因,并提供一些解决方法和常见问题的分析。1. 检查网络连接首先,确保您的本地设备与阿里云数据库之间的网络连接正常。检查您...
    99+
    2024-01-22
    阿里 数据库
  • redis集群主节点之间如何保证数据同步
    redis集群主节点之间保证数据同步的方法;使用redis复制功能,它能够支持多个数据库之间的数据同步。通过redis复制功能实现数据库的读写分离,提高服务器的负载能力,例如:当一个从数据库启动时,会向主数据库发送sync命令。主数据库接收...
    99+
    2024-04-02
  • 使用Apache Doris自动同步整个 MySQL/Oracle 数据库进行数据分析
    Flink-Doris-Connector 1.4.0 允许用户一步将包含数千个表的整个数据库(MySQL或Oracle )摄取到Apache Doris(一种实时分析数据库)中。 通过内置的Flink CDC,连接器可以直接将上游源的表...
    99+
    2023-09-27
    Doris hadoop mysql oracle
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作