MySQL排除表备份

#!/bin/bash
#created by 90root
#date: 20160809 date_y=$(date +%Y)
date_m=$(date +%m)
time=`date '+%F-%R'`
mysql_user="mysql_user"
mysql_passwd="mysql_passwd"
mysql_host="127.0.0.1"
tar_path="/data/backup/backup_mysql_tables"
mysql_dump="mysqldump -h$mysql_host -u$mysql_user -p$mysql_passwd"
mysql_cmd="mysql -h$mysql_host -u$mysql_user -p$mysql_passwd" #备份数据库列表
backup_db_arr=("test1" "test2" "test3" "test4") #测数据库存放路径
if [ ! -d $tar_path/$date_y/$date_m ];then
mkdir -p $tar_path/$date_y/$date_m
fi #排除备份数据库列表
exclude_db_tables="tables_name1|tables_name2|tables_name3|tables_name4" #循环数组
for j in "${backup_db_arr[@]}";do
if [ "$j" == "test2" ];then
for i in `$mysql_cmd -e "use $j;show tables"|sed '1d'|grep -Ev "$exclude_db_tables"`;do
$mysql_dump $j $i|gzip >> $tar_path/$date_y/$date_m/$j-$time.sql.gz
done
else
$mysql_dump $j |gzip >> $tar_path/$date_y/$date_m/$j-$time.sql.gz
fi
done

MySQL多库备份

#!/bin/bash
#about: 90root date=$(date +%Y%m%d-%H:%M)
date_y=$(date +%Y)
date_m=$(date +%m)
Mysql_Backup_Path=/data/backup/backup_mysql
Mysql_host="127.0.0.1"
Mysql_user="mysql_user"
Mysql_pass="mysql_passwd"
Mysql_cmd="mysql -h$Mysql_host -u$Mysql_user -p$Mysql_pass"
Mysql_dump="mysqldump -h$Mysql_host -u$Mysql_user -p$Mysql_pass"
Mysql_database="test1 test2 test3" #检测数据库存放路径
if [ ! -d $Mysql_Backup_Path/$date_d ];then
mkdir -p $Mysql_Backup_Path/$date_y/$date_m
fi #清空mysql备份日志文件
echo > $Mysql_Backup_Path/mysqldump.log #判断日期目录
if [ ! -d $Mysql_Backup_Path/$date_y/$date_m ];then
mkdir $Mysql_Backup_Path/$date_y/$date_m
fi #多库备份
for dbname in $Mysql_database;do
$Mysql_dump $dbname | gzip > $Mysql_Backup_Path/$date_y/$date_m/${dbname}_${date}.sql.gz
if [ $? -eq 0 ];then
echo "****** mysqldump ${dbname} `date +%Y%m%d-%H:%M:%S` ******" >> $Mysql_Backup_Path/mysqldump.log
fi
done

Linux学习系列之MySQL备份的更多相关文章

  1. Linux学习系列八:操作网口

    一些相对高性能的单片机会带以太网接口,网口在MCU里算是比较复杂的外设了,因为它涉及到网络协议栈,通常情况下网络协议栈会运行在一个RTOS中,所以对普通单片机开发者来说网口使用起来相对难度较大一些.在 ...

  2. Entity Framework 学习系列(3) - MySql Code First 开发方式+数据迁移

    目录 # 写在前面 一.开发环境 二.创建项目 三.安装程序包 四.创建模型 五.连接字符串 六.编辑程序 七.数据迁移 写在最后 # 写在前面 这几天,一直都在学习Entity Framework ...

  3. Linux学习5-安装mysql

    前言 今天我们来学习一下如何在Linux下安装mysql 一:准备安装包 可以从http://www.mysql.com/downloads/官方网站下载到最新版本,本次安装的版本是mysql-5.7 ...

  4. Linux学习之五——压缩与备份

    一.Linux下常见的压缩文件 *.Z compress 程序压缩的档案(现在不流行了,用gzip也能解压): *.gz gzip 程序压缩的档案: *.bz2 bzip2 程序压缩的档案: *.ta ...

  5. Linux学习系列之Linux入门(二)Vim学习

    第二篇 Vim学习 主要内容: 基本命令: 插件扩展: 参考资料: vim是一个命令控制的文本编辑器,可以完成几乎我们想要做的所有工作,除了Emacs几乎没有其他的工具能和它匹敌.官方网站是:http ...

  6. Linux学习系列之一:在centos 7.5上安装nginx 以及简单配置

    说到Linux我们都知道那是相当相当得重要得啊,在计算机这个行业,开发运维都是离不开它得.我作为一个准毕业生,智商可能不太够,只能自己笨鸟先飞,自己操作起来咯.俗话说的好,好记性不如难笔头嘛.而且ng ...

  7. Linux学习笔记07—mysql的配置

    一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...

  8. linux学习系列一

    1. 基本命令(注意参数的大小写) 学习linux如果使用的是windows 建议使用一个很好用的工具git,下载安装即可使用linux下的命令来操作windows 1.1目录及文件 注意/ 有表示根 ...

  9. Linux学习系列之memcached

    memcached简介 一.memcached是什么 memcached是一个开源的.支持高性能.高并发的分布式内存缓存系统 mem+cache+daemon:分布式内存缓存守护进程 memcache ...

随机推荐

  1. ASP.NET Eval四种绑定方式 及详解

    1.1.x中的数据绑定语法 <asp:Literal id="litEval2" runat="server" Text='<%#DataBinde ...

  2. jQuery 开始动画,停止动画

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. C# 获取目录下文件

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  4. 使用Caliburn.Micro系列2:Convention

    CM中实现一个比较有意思的特性,就是智能匹配. 通常使用MVVM的写法:在匹配 View和ViewModel时会使用DataContext,在匹配数据属性时使用Binding,在匹配事件命令时使用Co ...

  5. Java代码的编译和执行

    Java代码编译和执行的整个过程包含了以下三个重要的机制: (1)Java源码编译机制 (2)类加载机制 (3)类执行机制 1.Java代码编译是由Java源码编译器来完成,流程图: Java 源码编 ...

  6. oracle获取排序后的第一条信息

    查询表table1里字段id小于10的所有数据,并且让数据根据id降序排列,然后得到第一条数据 select * from (select * from table1 where id<10 o ...

  7. 学习React从接受JSX开始

    详情参考官方JSX规范 虽然JSX是扩展到ECMAScript的类XML语法,但是它本身并没有定义任何语义.也就是说它本身不在ECMAScript标准范围之内.它也不会被引擎或者浏览器直接执行.通常会 ...

  8. laravel学习笔记3--高级

    一.artisan 1.基本使用: 1.1.查看基本命令: php artisan 1.2.查看具体命名的使用: php artisan help migrate 1.3.创建控制器: php art ...

  9. Python之面向对象方法

    Python之面向对象方法 property的用法: property属于类的封装的范畴 property是一种特殊的属性,访问它时会执行一段功能(函数),然后返回值. 用property的方法,就可 ...

  10. selenium--driver.switchTo()-----转

    https://www.cnblogs.com/clairejing/p/9499223.html 在自动化测试中,会遇到多窗口.多iframe.多alert的情况.此时,会使用driver.swit ...