Linux学习系列之MySQL备份
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备份的更多相关文章
- Linux学习系列八:操作网口
一些相对高性能的单片机会带以太网接口,网口在MCU里算是比较复杂的外设了,因为它涉及到网络协议栈,通常情况下网络协议栈会运行在一个RTOS中,所以对普通单片机开发者来说网口使用起来相对难度较大一些.在 ...
- Entity Framework 学习系列(3) - MySql Code First 开发方式+数据迁移
目录 # 写在前面 一.开发环境 二.创建项目 三.安装程序包 四.创建模型 五.连接字符串 六.编辑程序 七.数据迁移 写在最后 # 写在前面 这几天,一直都在学习Entity Framework ...
- Linux学习5-安装mysql
前言 今天我们来学习一下如何在Linux下安装mysql 一:准备安装包 可以从http://www.mysql.com/downloads/官方网站下载到最新版本,本次安装的版本是mysql-5.7 ...
- Linux学习之五——压缩与备份
一.Linux下常见的压缩文件 *.Z compress 程序压缩的档案(现在不流行了,用gzip也能解压): *.gz gzip 程序压缩的档案: *.bz2 bzip2 程序压缩的档案: *.ta ...
- Linux学习系列之Linux入门(二)Vim学习
第二篇 Vim学习 主要内容: 基本命令: 插件扩展: 参考资料: vim是一个命令控制的文本编辑器,可以完成几乎我们想要做的所有工作,除了Emacs几乎没有其他的工具能和它匹敌.官方网站是:http ...
- Linux学习系列之一:在centos 7.5上安装nginx 以及简单配置
说到Linux我们都知道那是相当相当得重要得啊,在计算机这个行业,开发运维都是离不开它得.我作为一个准毕业生,智商可能不太够,只能自己笨鸟先飞,自己操作起来咯.俗话说的好,好记性不如难笔头嘛.而且ng ...
- Linux学习笔记07—mysql的配置
一.mysql简介 说到数据库,我们大多想到的是关系型数据库,比如mysql.oracle.sqlserver等等,这些数据库软件在windows上安装都非常的方便,在Linux上如果要安装数据库,咱 ...
- linux学习系列一
1. 基本命令(注意参数的大小写) 学习linux如果使用的是windows 建议使用一个很好用的工具git,下载安装即可使用linux下的命令来操作windows 1.1目录及文件 注意/ 有表示根 ...
- Linux学习系列之memcached
memcached简介 一.memcached是什么 memcached是一个开源的.支持高性能.高并发的分布式内存缓存系统 mem+cache+daemon:分布式内存缓存守护进程 memcache ...
随机推荐
- ASP.NET Eval四种绑定方式 及详解
1.1.x中的数据绑定语法 <asp:Literal id="litEval2" runat="server" Text='<%#DataBinde ...
- jQuery 开始动画,停止动画
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- C# 获取目录下文件
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 使用Caliburn.Micro系列2:Convention
CM中实现一个比较有意思的特性,就是智能匹配. 通常使用MVVM的写法:在匹配 View和ViewModel时会使用DataContext,在匹配数据属性时使用Binding,在匹配事件命令时使用Co ...
- Java代码的编译和执行
Java代码编译和执行的整个过程包含了以下三个重要的机制: (1)Java源码编译机制 (2)类加载机制 (3)类执行机制 1.Java代码编译是由Java源码编译器来完成,流程图: Java 源码编 ...
- oracle获取排序后的第一条信息
查询表table1里字段id小于10的所有数据,并且让数据根据id降序排列,然后得到第一条数据 select * from (select * from table1 where id<10 o ...
- 学习React从接受JSX开始
详情参考官方JSX规范 虽然JSX是扩展到ECMAScript的类XML语法,但是它本身并没有定义任何语义.也就是说它本身不在ECMAScript标准范围之内.它也不会被引擎或者浏览器直接执行.通常会 ...
- laravel学习笔记3--高级
一.artisan 1.基本使用: 1.1.查看基本命令: php artisan 1.2.查看具体命名的使用: php artisan help migrate 1.3.创建控制器: php art ...
- Python之面向对象方法
Python之面向对象方法 property的用法: property属于类的封装的范畴 property是一种特殊的属性,访问它时会执行一段功能(函数),然后返回值. 用property的方法,就可 ...
- selenium--driver.switchTo()-----转
https://www.cnblogs.com/clairejing/p/9499223.html 在自动化测试中,会遇到多窗口.多iframe.多alert的情况.此时,会使用driver.swit ...