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或者不可达输出& ...
- laravel M层
目录 App\Models 没有就自己创一个 创建对应控制器的php文件,首字母大写 <?php namespace App\Models; use Illuminate\Database\ ...
- nginx 的启动、停止与重启
详解 ./nginx #打开 nginx nginx -s reload|reopen|stop|quit #重新加载配置|重启|停止|退出 nginx nginx -t #测试配置是否有语法错误 n ...
- hyperledger fabric 1.0.5 分布式部署 (一)
环境是个人虚拟机ubuntu 16.04 64 位版本 前期用户需要先安装好:gcc.g++.git 软件 安装 golang 首先给环境安装一个 go 语言环境,版本最好在1.8 以上 golang ...
- tpc-ds99 工具使用
安装部署 tpc-ds-99 工具 解压文件 unzip tpc-ds-tool.zip 进入目录 cd v2.3.0/tools 拷贝Makefile文件 cp Makefile.suite Mak ...
- wow.js零基础使用介绍
wow.js依赖于animate.css,首先需要在 head内引入animate.css或者animate.min.css wow.js或者wow.min.js,然后js文件里再写一行代码. 然后在 ...
- linux 和windows 的定时任务
linux http://www.cnblogs.com/thinksasa/archive/2013/06/06/3121030.html windows http://www.myhack58.c ...
- ios开发static关键字的理解
:static关键字修饰局部变量::当static关键字修饰局部变量时,该局部变量只会初始化一次,在系统中只有一份内存 :static关键字不可以改变局部变量的作用域,但是可延长局部变量的生命周期,该 ...
- base64模块
********base64模块******** Base64是一种用64个字符来表示任意二进制数据的方法. 用记事本打开exe.jpg.pdf这些文件时,我们都会看到一大堆乱码,因为二进制文件包含很 ...
- scrapy的中间件Downloader Middleware实现User-Agent随机切换
scrapy的中间件Download Middleware实现User-Agent随机切换 总架构理解Middleware 通过scrapy官网最新的架构图来理解: 从图中我们可以看出,在spid ...