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. Farseer.net轻量级开源框架 中级篇:UrlRewriter 地址重写

    导航 目   录:Farseer.net轻量级开源框架 目录 上一篇:Farseer.net轻量级开源框架 中级篇: Cookies.Session.Request 下一篇:Farseer.net轻量 ...

  2. 关于mapState和mapMutations和mapGetters 和mapActions辅助函数的用法及作用(二)-----mapMutations

    在组件中提交Mutations: import { mapState, mapMutations } from 'vuex' export default { data() { return { ms ...

  3. call和apply和bind的区别

    在 javascript 中,call 和 apply 都是为了改变某个函数运行时的上下文(context)而存在的,换句话说,就是为了改变函数体内部 this 的指向. JavaScript 的一大 ...

  4. leetcode_684. Redundant Connection

    https://leetcode.com/problems/redundant-connection/ 一个无向图,n个顶点有n条边,输出一条可以删除的边,删除后使得图成为一棵树.可以使用并查集解决. ...

  5. opencv实现人脸,人眼,微笑检测

    1.首先实现人脸检测 import cv2 img = cv2.imread("people.jpg",1) #读入图像 #导入人脸级联分类器引擎,“.xml”文件里包含了训练出来 ...

  6. IDEA常见问题

    IDEA常见问提解决 一:拉取git代码认证失败(无法重新输入账户和密码) git config --system --unset credential.helper   二:取消新建文件自动添加到S ...

  7. 学习React从接受JSX开始

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

  8. Linux环境下验证码不显示F12报500

     前言: 项目之前部署在linux系统上进行测试,今天重新部署的时候,重启了tomcat然后部署新的版本项目,结果登录页面验证码不显示,在浏览器F12页面显示的是500错误.网上查了很多方法,都没效果 ...

  9. sed输出指定行

    and line ,8p to line ,8p -e 20p - and line -n:取消默认输出.注意:sed命令会默认把输入行打印到屏幕上,所以如果想精准的控制输出,就需要-n. -e:进行 ...

  10. configparser logging

    configparser模块 # 该模块适用于配置文件的格式与windows ini文件类似,可以包含一个或多个节(section),每个节可以有多个参数(键=值). import configpar ...