msql-分库分表备份

#!/bin/sh

TIME=`date -d ‘1 day ago‘ +%Y%m%d`

PASSWORD=""

USERNAME="root"

###mysql 路径

MYSQL="/usr/local/webserver/mysql/bin/mysql -u${USERNAME} -p${PASSWORD}"

MYDUMP="/usr/local/webserver/mysql/bin/mysqldump  -u${USERNAME} -p${PASSWORD}"

###备份路径

BACKPATH=/data/db_backup/${TIME}

[ ! -d ${BACKPATH} ] && mkdir -p /data/db_backup/${TIME}

#---------------------------------------

###备份所有库

DBLIST=`${MYSQL} -e "show databases;"|sed 1d|egrep -v "_schema|mysql" `

###备份指定库

#DBLIST="cacti opola"

#----------------------------------------

for dbname in ${DBLIST}

do

TLIST=`${MYSQL} -e "show tables from ${dbname}"|sed 1d`

###备份库

#     ${MYDUMP} ${dbname}  --single-transaction --routines --events --master-data=2 |gzip > /data/db_backup/${TIME}/${dbname}/${dbname}_${TIME}sql.gz

###备份表

for tname in ${TLIST}

do

mkdir -p /data/db_backup/${TIME}/${dbname}

${MYDUMP} ${dbname} ${tname}  --single-transaction --routines --events --master-data=2 |gzip > /data/db_backup/${TIME}/${dbname}/${dbname}_${tname}${TIME}sql.gz

done

done

时间: 2024-08-25 10:12:39

msql-分库分表备份的相关文章

企业Shell实战-MySQL分库分表备份脚本

本文来自http://www.xuliangwei.com/xubusi/252.html 免费视频讲解见 http://edu.51cto.com/course/course_id-5064.html 企业Shell实战-MySQL分库分表备份 今天是2015年的最后一天,大家都开心的跨年,而我还在苦逼的呵呵-省略 此处内容来自老男孩教育oldboy以及老男孩26期王续精彩分享整理而来  为表示感谢,特整理此篇博文分享给大家! 项目联系笔者QQ:572891887   也可以加入架构师交流群:

16、MySQL数据库分库分表备份脚本

MySQL数据库分库分表备份脚本 ===================学员分享分库分表========================== 脚本单双引号的区别: 单引号是强引用,强制输出是所见即所得. 双引号是解析变量 和 多个字符串.数字等连接一个字符串 条件1  ||    条件2                      或   假真   真假 条件1 && 条件2                      并   真真    假假 !条件1  && 条件2    

数据库mysql 自动分库分表备份脚本

数据库mysql 自动分库分表备份脚本 当我们在公司中遇到数据库的备份,项目比较多,经常进行数据库和表的添加工作,那么我们 想要让系统脚本自动进行查询数据库里的库和表结构,然后进行自动的定期进行数据库和表的定期份, 那么我们该如何实现呢,大家看看以下的脚本: vi mysql_backup.sh #!/bin/sh #backup tiandao bbs edoing #coding tonye.li MYUSER=root MYPASS=meidi SOCKET=/data/3306/mysq

mysql分库.分表备份

1.mysql的分库备份 myuser=root mypass=yzg1314520 mycmd="mysql -u$myuser -p$mypass " mydump="mysqldump -u$myuser -p$mypass" for database in  mysql test do $mydump $database   > $database_$(date +%F).sql tar -zcvf $database_$(date +%F).tar.

(转)企业Shell实战-MySQL分库分表备份脚本

本文来自http://www.xuliangwei.com/xubusi/252.html 免费视频讲解见 http://edu.51cto.com/course/course_id-5064.html 企业Shell实战-MySQL分库分表备份 今天是2015年的最后一天,大家都开心的跨年,而我还在苦逼的呵呵-省略 此处内容来自老男孩教育oldboy以及老男孩26期王续精彩分享整理而来  为表示感谢,特整理此篇博文分享给大家! 项目联系笔者QQ:572891887   也可以加入架构师交流群:

Shell脚步之MySql分库分表备份

前言 数据备份的重要性已经不用过多强调了.这篇文章我们就以MySQL数据进行演示如何通过Shell脚步进行MySQL数据库的分库分表备份. 要求 Linux命令要求比较熟悉,Shell脚步语法规则也要熟悉,MySQL的数据库备份命令要比较熟悉.下面也会提到,如果有不懂得希望可以自行查阅资料学习. 命令窗口查询MySQL数据库列表 上面我们就通过Linux命令窗口查询到了MySQL的数据库列表 去除MySQL自带数据库获取目标业务数据库列表,查看表列表 备注:通过过滤掉MySQL自带数据库,那么就

分享一个MySQL分库分表备份脚本(原)

分享一个MySQL分库备份脚本(原) 开发思路: 1.路径:规定备份到什么位置,把路径(先判断是否存在,不存在创建一个目录)先定义好,我的路径:/mysql/backup,每个备份用压缩提升效率,带上时间方便整理 2.取数据库:抓取数据库名称,我用的awk和grep配合取数据库的名称(如果想按照表备份可以再细化一下)注意要用mysql -e选项 这样才能做成脚本 3.系统环境变量:因为用到了函数,所以非系统内置的命令 最好在脚本里面用 . /etc/profile  把系统当前的环境变量传过来

MySQL分库分表备份脚本

vim /data/mysqlback.sh #! /bin/bash BAKPATH=/data/mysql-back MYUSER=root MYPASS="123456" SOCKET=/var/lib/mysql/mysql.sock MYCMD="mysql -u$MYUSER -p$MYPASS -S $SOCKET" MYDUMP="mysqldump -u$MYUSER -p$MYPASS -S $SOCKET -x -F -R"

mysql分库分表备份

一.单独备份数据库 mysqldump -uroot -poldboy oldboy >/opt/oldboy.sql         最简单的备份 1)  mysql基于myisam引擎 mysqldump -uroot -poldboy  -B -x  -F oldboy | gzip >/opt/oldboy.sql.gz 2)  5.5以后默认是innodb(推荐) mysqldump -uroot -poldboy  -B  -F --single-transactio oldboy

实现MySQL分库分表备份的脚本

1)准备测试数据:通过写脚本批量建库建表并插入测试数据. [[email protected] scripts]# cat ceshi.sh #/bin/bash PATH="/usr/local/mysql/bin:$PATH"                 #定义mysql命令所在路径 MYUSER=root                                                     #定义数据用户名 DBPATH=/server/backup