shell脚本,对MySQL数据库进行分库加分表备份
[root@localhost wyb]# cat table_backup.sh
#!/bin/bash flag=
user=root
pass=test mysql -u$user -p"$pass" -e "show databases;" &>/dev/null
[ $? -ne ] && read -p "Mysql do not running,start it?(`echo -e "\[32myes/no\[0m"`):" choice && flag=
[[ "choice" -eq "yes" ]] && service mysqld start &>/dev/null && flag=
[ $flag -eq ] && exit
database=`mysql -u$user -p$pass -e "show databases;"|sed 1d|grep -v 'schema'` echo -e "\033[32m==================backup start=====================\033[0m"
for i in $database
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 --databases $i --tables $j > /tmp/${i}-${j}-`date +%F`.sql
[ $? -eq ] && echo $i $j ok >>/tmp/table.log||echo $i $j failed >>/tmp/table.log
[ $? -eq ] && echo -e "$i $j \033[32mok\033[0m" ||echo -e "$i $j \033[31mfailed\033[0m"
done done
echo -e "\033[32m===================backup stop=======================\033[0m"
[root@localhost wyb]# bash table_backup.sh
==================backup start=====================
mysql columns_priv ok
mysql db ok
mysql func ok
mysql help_category ok
mysql help_keyword ok
mysql help_relation ok
mysql help_topic ok
mysql host ok
mysql proc ok
mysql procs_priv ok
mysql tables_priv ok
mysql time_zone ok
mysql time_zone_leap_second ok
mysql time_zone_name ok
mysql time_zone_transition ok
mysql time_zone_transition_type ok
mysql user ok
===================backup stop=======================
[root@localhost wyb]# cd tmp
-bash: cd: tmp: No such file or directory
[root@localhost wyb]# cd /tmp
[root@localhost tmp]# ls
a.log mysql-help_category---.sql mysql-tables_priv---.sql table.log
dashazi123.sh mysql-help_keyword---.sql mysql-time_zone---.sql VMwareDnD
keyring-cmzNiY mysql-help_relation---.sql mysql-time_zone_leap_second---.sql vmware-root
mapping-root mysql-help_topic---.sql mysql-time_zone_name---.sql vmware-root-
mysql-columns_priv---.sql mysql-host---.sql mysql-time_zone_transition---.sql VMwareTools-9.6.-.tar.gz
mysql-db---.sql mysql-proc---.sql mysql-time_zone_transition_type---.sql vmware-tools-distrib
mysql-func---.sql mysql-procs_priv---.sql mysql-user---.sql
[root@localhost tmp]# ls mysql*
mysql-columns_priv---.sql mysql-help_topic---.sql mysql-time_zone_leap_second---.sql
mysql-db---.sql mysql-host---.sql mysql-time_zone_name---.sql
mysql-func---.sql mysql-proc---.sql mysql-time_zone_transition---.sql
mysql-help_category---.sql mysql-procs_priv---.sql mysql-time_zone_transition_type---.sql
mysql-help_keyword---.sql mysql-tables_priv---.sql mysql-user---.sql
mysql-help_relation---.sql mysql-time_zone---.sql
[root@localhost tmp]# cat table.log
mysql columns_priv ok
mysql db ok
mysql func ok
mysql help_category ok
mysql help_keyword ok
mysql help_relation ok
mysql help_topic ok
mysql host ok
mysql proc ok
mysql procs_priv ok
mysql tables_priv ok
mysql time_zone ok
mysql time_zone_leap_second ok
mysql time_zone_name ok
mysql time_zone_transition ok
mysql time_zone_transition_type ok
mysql user ok
[root@localhost tmp]#
shell脚本,对MySQL数据库进行分库加分表备份的更多相关文章
- 实现对MySQL数据库进行分库/分表备份(shell脚本)
工作中,往往数据库备份是件非常重要的事情,毕竟数据就是金钱,就是生命!废话不多,下面介绍一下:如何实现对MySQL数据库进行分库备份(shell脚本) Mysq数据库dump备份/还原语法: mysq ...
- shell脚本操作mysql数据库
shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql -hhostname -Pport -uusername -pp ...
- shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)
shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...
- zabbix3.0.4-agent通过shell脚本获取mysql数据库登陆用户
zabbix3.0.4获取数据库登陆用户趋势详解 主要思路: 通过zabbix客户端shell脚本mysql命令取出用户表中的数据将结果反馈给zabbix,画出趋势图 1.修改zabbix-agent ...
- shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作
mysql -hhostname -Pport -uusername -ppassword -e 相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作m ...
- MyCat:对MySQL数据库进行分库分表
本篇前提: mycat配置正确,且能正常启动. 1.schema.xml <table>标签: dataNode -- 分片节点指定(取值:dataNode中的name属性值) rule ...
- 通过shell脚本批量操作mysql数据库
创建建表语句 ============================================= 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) ------(学 ...
- shell脚本操作mysql数据库—创建数据库,在该数据库中创建表(插入,查询,更新,删除操作也可以做)
#!/bin/bash HOSTNAME="192.168.1.224" #数据库Server信 ...
- shell 脚本连接mysql数据库查询database中表的数量和表名
#!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYS ...
随机推荐
- lightoj 1074【spfa判负环】
题意: 给你一幅图,dis(u->v)的权值就是(w[v]-w[u])*(w[v]-w[u])*(w[v]-w[u]),所以有可能是负的,给你n个询问,给出最短路,长度<3或者不可达输出& ...
- CodeForces 653A【水】
sort一发,去重 #include<cstdio> #include<iostream> #include<queue> #include<string.h ...
- 51nod1276(xjb)
题目链接:http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1276 题意:中文题诶- 思路:xjb 通过画图可以发现对于当前 ...
- NSString 是否存在空格
NSString *_string = [NSString stringWithFormat:@"123 456"]; NSRange _range = [_string rang ...
- GPDB外部表创建示例
创建以|为分隔符的外部表CREATE EXTERNAL TABLE ext_expenses ( name text,date date, amount float4, category text, ...
- Django (五) modeld进阶
day 05 models进阶 1.models基本操作 django中遵循 Code Frist 的原则,即:根据代码中定义的类来自动生成数据库表. 对于ORM框架里: 我们写的类表示数据库的表 ...
- nginx和uwsgi的区别和作用
Django+uwsgi+nginx nginx和uwsgi的区别和作用: 1, nginx是对外的服务器,外部浏览器通过url访问nginx, uwsgi是对内的服务器,主要用来处理动态请求. 2, ...
- 转 查看磁盘IO负载 - 看哪些进程在读写磁盘 以及oracle 异步I/O 和同步I/O
https://www.cnblogs.com/cloudstorage/archive/2012/11/11/2764623.html #####sample 1: Oracle等待事件db fil ...
- Lock简介
digest synchronized已经提供了锁的功能,而且还是Java的内置特性,那为什么还要出现lock呢? 用一句话来讲就是——synchronized可以实现同步,但太死板了它的同步机制:l ...
- JavaScript Allongé 第一呷 :基础函数 (3) 未完
闭包与域是时候来看下一个带函数的函数是如何工作的: (function (x) { return function (y) { return x } })(1)(2) //=> 1 首先,我们使 ...