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.gz  $database_$(date +%F).sql

rm -rf $database_$(date +%F).sql

done

2.mysql的分库分表备份

myuser=root

mypass=yzg1314520

mycmd="mysql -u$myuser -p$mypass "

mydump="mysqldump -u$myuser -p$mypass"

for database in  `$mycmd -e "show databases" | sed ‘1,3d‘`

do

mkdir -p /home/scripts/mysqlbak

for table in `$mycmd -e "show tables from $database;" |sed  ‘1d‘`

do

$mydump $database $table  > ${database}_${table}_$(date +%F).sql

tar -zcvf ${database}_${table}_$(date +%F).tar.gz  ${database}_${table}_$(date +%F)

.sql

mv ./${database}_${table}_$(date +%F).tar.gz  /home/scripts/mysqlbak

rm -rf /home/scripts/${database}_${table}_$(date +%F).sql

rm -rf  $(find /home/scripts/mysqlbak -name "*.tar.gz" -mtime +5 -type f)

done

done

时间: 2024-10-15 20:22:58

mysql分库.分表备份的相关文章

企业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分库分表备份脚本

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

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

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

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 分库分表备份脚本

#!/bin/bash USER=root #用户 PASSWORD=123456 #密码 MYSQL_PATH=127.0.0.1 #地址 MYSQL_BIN=/bin/mysql MYSQL_DUMP_BIN=/bin/mysqldump MYSQL_CMD="${MYSQL_BIN} -u${USER} -p${PASSWORD} -h${MYSQL_PATH}" DATABASE=($(${MYSQL_CMD} -e "show databases;"|eg

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

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