mysql主从集群定时备份脚本

#!/bin/bash

dpath="/mysql_backup"

mydays="7"

username="root"

mysql_pwd="redhat"

xmysql="/application/mysql/bin/mysql -u$username -p${mysql_pwd}"

xmysqldump="/application/mysql/bin/mysqldump  -u$username -p${mysql_pwd}"

today=`date +%Y%m%d`

old_backup_dir=`date -d "-${mydays} day" +%Y%m%d`

if [ -d $old_backup_dir ];then

rm -rf $old_backup_dir

fi

if [ ! -d $today  ]; then

mkdir -p $dpath/$today

cp /etc/my.cnf $dpath/$today

fi

$xmysql -e "show databases;"|grep -vE "(Database|_schema)" > $dpath/db_list

$xmysql -e "flush tables with read lock;"

while read dbname

do

if [ ! -d $dpath/$today/$dbname ];then

mkdir -p $dpath/$today/$dbname

fi

#######################

#echo $dbname

$xmysql -e "use $dbname; show tables;"|grep -vE "(Tables_in|general_log|slow_log)" > $dpath/table_list

while read tablename

do

#echo "echo $tablename"

$xmysqldump $dbname $tablename -R --events --triggers > $dpath/$today/$dbname/$tablename.sql

done < $dpath/table_list

#######################

done < $dpath/db_list

rm -rf $dpath/db_list

rm -rf $dpath/table_list

ls -al /application/mysql/data/mysql-bin* | grep -v mysql-bin.index  | tail -1 | awk ‘{print $5,$9}‘| awk -F‘/‘ ‘{print $1,$5}‘ > /mysql_backup/$today/position.txt

$xmysql -e "unlock tables;"

来自为知笔记(Wiz)

时间: 2024-10-11 01:28:14

mysql主从集群定时备份脚本的相关文章

centos amoeba+mysql主从集群分离

原文来自:http://blog.163.com/na_llong/blog/static/113541609201352123232528/ 配置主从之前最好不要填写同步的数据库,默认都同步所有数据库就行. mysql 本机自带的,java 本机自带的. 1.登录Master服务器,修改my.cnf,添加如下内容: server-id = 1 //数据库ID号, 为1时表示为Master,其中master_id必须为1到232–1之间的一个正整数值; log-bin=mysql-bin //启

社交网站部署——Nginx服务器+PHP服务器搭建+MySQL主从集群

案例概述 某公司的社交网站采用PHP语言开发,为了管理PHP程序员开发的代码,上级领导要求搭建SVN服务器进行版本控制.社交网站的第一个版本部署在LNMP平台之上,前端为Nginx服务器,通过fastcgi协议访问后端的PHP服务器.为了保证数据安全,要求搭建MySQL数据库主从集群. 社交网站项目包含用户的相册功能,允许用户上传照片,上传照片需要使用共享存储来存放.针对共享存储可用的开源方案有很多,如MFS.FastDFS 等.公司决定使用MFS分布式文件系统来实现,并将MFS挂载在PHP服务

Docker搭建MySQL主从集群,基于GTID

写在前边 搭建MySQL读写分离主从集群,这里未使用binlog方式,使用的是GTID方式 源码见我的Github https://github.com/hellxz/mysql-cluster-docker.git 主从目录结构 . ├── bin │?? ├── add-slave-account-to-master.sh │?? ├── reset-slave.sh │?? ├── slave-replias-master-start.sh │?? └── stop-replicas.sh

搭建mysql主从集群的步骤

前提条件是:须要在linux上安装4个mysql数据库,都须要配置完对应的信息. 须要搭建: mysql 01: 主数据库  master mysql 02 :   从数据库  slave01 mysql 03 :   从数据库  slave02 mysql 04 :   从数据库  slave03 第一步: 在主server上的my.cnf 上编辑 二进制文件格式:log-bin=mysql-bin; 二进制的格式: binlog-format=mixed 第二步: 在从server上: 有几

mysql线上一个定时备份脚本

mysql数据库远程备份的数据最好打包压缩 [[email protected] crontab]# pwd/Data/Mysql_Bakup/crontab[[email protected] crontab]# cat backup_db_wangshibo.sh#!/bin/bashMYSQL="/usr/bin/mysql"MYSQLDUMP="/usr/bin/mysqldump"BACKUP_DIR="/Data/Mysql_Bakup&quo

Mysql、MariaDB 新型主从集群配置GTID

前文谢了<Mysql.MariaDB 传统主从集群配置>,该技术已经非常成熟.从Mysql5.6和MariaDB10.0开始,有了新型的主从方案GTID,不过这两个系统到这个版本出现了分支,具体实现已经不同,配置方法也不同,下文分别讲述. MariaDB: 我用的版本还是10.1版,目前该版本还不是稳定版,但不影响测试.先部署部署好两个数据库实例,参见http://bangbangba.blog.51cto.com/3180873/1701857 直到创建好复制用户. 我们这里的由于是新创建的

读懂Redis并配置主从集群及高可用部署

一.背景 运维工作尤其是linux运维,其实最考验你的能力,因为需要学习的东西实在太多, 你既要懂网络:思科华为设备的配置: 要懂性能调优:包括lamp或者lnmp的性能调优,也包括linux操作系统调优: 要懂数据库mysql或者nosql(例如mongodb): 要懂编程语言:Shell是最基本的,还要学习perl,python,甚至ruby和C++等(因为一些软件是这些语言编写的),还得熟练掌握awk,sed,grep以及正则表达式: 要懂一些调试排错的命令工具的使用,比如htop,dst

主从集群数据丢失解决思路(实例)

前言: 主从复制做为MySQL的精髓, 它有两大困难:主从数据的延时与数据的不一致性.本文主要表达的内容是如何排查数据不一致性.针对数据不一致的排查处理,各位业界大佬们都有丰富的处理经验,我就不多哔哔.我今天来主要给大家介绍工作中碰到奇葩示例:由于一个极隐式的骚操作,导致从库丢失数据(数据丢失量在每天将近万条记录)! 环境描述: 业务环境:短时间内(几个月的时间),业务蓬勃发展,客户量从一两万一下增加到几十万用户. 数据库环境:如下图 问题描述: 某一天,主库10.0.0.1的CPU使用率突然升

hbase 学习(十二)集群间备份原理

集群建备份,它是master/slaves结构式的备份,由master推送,这样更容易跟踪现在备份到哪里了,况且region server是都有自己的WAL 和HLog日志,它就像mysql的主从备份结构一样,只有一个日志来跟踪.一个master集群可以向多个slave集群推送,收到推送的集群会覆盖它本地的edits日志. 这个备份操作是异步的,这意味着,有时候他们的连接可能是断开的,master的变化不会马上反应到slave当中.备份个格式在设计上是和mysql的statement-based