码迷,mamicode.com
首页 > 数据库 > 详细

shell整理(42)====mysql 分库分表备份

时间:2017-10-21 00:19:31      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:shell

shell 代码如下

[root@localhost /]# cat back.sh 



#!/bin/bash

/etc/init.d/mysqld status &> /dev/null
[ $? -ne 0 ]  && echo "请开启 mysqld 服务" && exit 0



user=root
pass="123.com"
backdb=`mysql -u$user -p"$pass" -e"show databases;"|sed ‘1d‘|grep -v ‘schema‘|grep -v ‘home‘| grep -v ‘mysql‘| grep -v ‘test‘`

echo -e "\033[32m ======================= backup start =====================  \033[0m"
for i in $backdb
do
	tables=`mysql -u$user -p"$pass" -e"use $i;show tables;" | sed ‘1d‘`
	for j in $tables
	do
		mysqldump -u$user -p"$pass" -B --database $i --tables $j > /tmp/${i}-${j}-`date +%F.sql`
  		[ $? -eq 0  ] && echo -e "$i $j \033[32m ok \033[0m"  || echo "$i $j \033[31m filed \033[0m"
	done
done
		
echo -e "\033[32m========================backup stop==========================\033[0m"


执行结果如下

技术分享

技术分享

本文出自 “IT生活” 博客,请务必保留此出处http://dingxue.blog.51cto.com/12290895/1974745

shell整理(42)====mysql 分库分表备份

标签:shell

原文地址:http://dingxue.blog.51cto.com/12290895/1974745

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!