#!/bin/bash

#### change the values below where needed.....

#### 多数据库DBNAMES="MyDb1 MyDb2 MyDb3"

DBNAMES="yltgerp"

HOST="--host=10.10.21.250"

USER="--user=root"

PASSWORD="--password=root"

BACKUP_DIR="/home/xu/db"

#### you can change these values but they are optional....

OPTIONS="--default-character-set=utf8 --complete-insert --no-create-info --compact -q"

RESTORESCRIPT="$BACKUP_DIR/__restoreData.sql"

DATE=`/bin/date '+%y%m%d_%H%M%S'`

#### 分表的数据,暂时只导出最新那个月的数据

NOW_MONTH=`/bin/date '+%Y%m'`

#### make no changes after this....

#### start script ####

echo removing old temporary files if they exists...

rm -f ${BACKUP_DIR}/*.sql > /dev/null 2>&1

rm -f ${BACKUP_DIR}/*.tar > /dev/null 2>&1

cd ${BACKUP_DIR}

for DB in $DBNAMES

do

echo "=========================================="

echo ${DB}

echo "=========================================="

echo 'SET FOREIGN_KEY_CHECKS=0;' > $RESTORESCRIPT

#### 导出表结构

mysqldump --no-data $HOST $USER $PASSWORD $DB > ${BACKUP_DIR}/__createTables.sql

echo 'source __createTables.sql;' >> $RESTORESCRIPT

#### 导出表数据

for TABLE in `mysql $HOST $USER $PASSWORD $DB -e 'show tables' | egrep -v 'Tables_in_' `;

do

TABLENAME=$(echo $TABLE|awk '{ printf "%s", $0 }')

FILENAME="${TABLENAME}.sql"

#### 正则忽略 && 当前月数据忽略

if [[ $TABLENAME = david_*_tmp ]] || [[ $TABLENAME =~ 'david_trade_detail_' && $TABLENAME != "david_trade_detail_${NOW_MONTH}" ]]

then

echo ${TABLENAME} '忽略';

continue

else

echo Dumping ${TABLENAME}

echo 'source ' $BACKUP_DIR'/'$FILENAME';' >> $RESTORESCRIPT

mysqldump $OPTIONS $HOST $USER $PASSWORD $DB ${TABLENAME} > ${BACKUP_DIR}/${FILENAME}

fi

done

#### 压缩

:<

echo 'SET FOREIGN_KEY_CHECKS=1;' >> $RESTORESCRIPT

echo making tar...

tar -cf ${DB}_${DATE}.tar *.sql > /dev/null 2>&1

echo compressing...

gzip -9 ${DB}_${DATE}.tar > /dev/null 2>&1

echo removing temporary files...

rm -f ${BACKUP_DIR}/*.sql > /dev/null 2>&1

rm -f ${BACKUP_DIR}/*.tar > /dev/null 2>&1

aaa

echo "done with " $DB

done

echo "=========================================="

echo " done with all database! "

echo "=========================================="

xshell MySQL表备份_shell mysql数据迁移/备份相关推荐

  1. 随机从mysql中读取_如何实现MySQL表数据随机读取?从mysql表中读取随机数据

    文章转自 http://blog.efbase.org/2006/10/16/244/ 如何实现MySQL表数据随机读取?从mysql表中读取随机数据?以前在群里讨论过这个问题,比较的有意思.mysq ...

  2. php 去掉无关数据,php 读取 mysql 表中的double数据,去掉多余的0

    php 读取 mysql 表中的double数据,去掉多余的0 mysql 中有 ttt 表结构和数据如下 CREATE TABLE `ttt` ( `id` int(11) NOT NULL AUT ...

  3. mysql升级后将旧数据迁移到新 数据库中

    mysql升级后将旧数据迁移到新 数据库中 1.将原来数据库进行导出成.sql文件 例:StudentSql.sql 2.进入新数据库的bin目录下 复制bin目录 3.cmd进入bin目录下(需管理 ...

  4. 怎么有效地查询MySQL表中的重复数据

    在MySQL数据库中,偶尔会遇到需要查找表中出现的重复数据的情况.这种情况下,我们可以通过编写一些SQL查询语句轻松地找到并处理这些重复行.本文将介绍一些常见的方法和技巧,帮助你有效地查询MySQL表 ...

  5. MySQL复制data目录进行数据迁移(Win环境)

    https://blog.csdn.net/weixin_43125433/article/details/120212075 MySQL复制data目录进行数据迁移(Win环境) 我的环境 Wind ...

  6. TiDB数据库备份恢复与数据迁移

    TiDB数据库备份恢复与数据迁移 数据迁移 使用 mydumper/loader 全量导入数据 mydumper/loader 全量导入数据最佳实践 某次导入示例,以及相关的配置 从 MySQL 导出 ...

  7. docker的文件流处理_Docker数据卷Volume实现文件共享、数据迁移备份(三)--技术流ken...

    前言 前面已经写了两篇关于docker的博文了,在工作中有关docker的基本操作已经基本讲解完了.相信现在大家已经能够熟练配置docker以及使用docker来创建镜像以及容器了.本篇博客将会讲解如 ...

  8. 版本管理工具Subversion Edge的备份恢复与数据迁移方案

    软件开发生命周期中会使用到多种工具,这些工具的更迭与迁移,备份与恢复都构成了软件开发生命周期的重要部分.这篇文章以当下最新版本的Subversion Edge为例介绍一下其备份恢复与数据迁移方案,因相 ...

  9. MySQL大数据迁移备份

    MySQL迁移通常使用的有三种方法:   1.数据库直接导出,拷贝文件到新服务器,在新服务器上导入. 2.使用第三方迁移工具. 3.数据文件和库表结构文件直接拷贝到新服务器,挂载到同样配置的MySQL ...

  10. 【自用】MySQL for Mac创建表、写入读取数据及备份与数据恢复(2)

    实验环境:macOS 11.6.4 一.在新创建的数据库下增删表.写入并显示数据 首先登陆数据库,在mysql数据库提示符下输入以下命令: 1.创建数据库temp create database te ...

最新文章

  1. std::string的拷贝赋值研究
  2. 那么温暖http合约,入门。
  3. C++笔记-VS2015加载Live2D(OpenGL)
  4. python怎么发音乐到朋友圈_只要三步,用Python轻松制作短视频,你也能在朋友圈傲娇一把!...
  5. mysql 查询分析器_MYSQL查询分析器工具
  6. Linux正则表达式
  7. Win11怎么设置开机启动项?
  8. mysql mongo关联查询语句_MySQL与Mongo简单的查询实例代码 筋斗云网络
  9. python win32api键盘_pythonwin32api键盘输入教程
  10. Linux中如何启动redis服务
  11. 马无夜草不肥,人无横财不富
  12. 降压式变换电路(Buck电路)详解
  13. 杭电acm 1001
  14. iOS:App跳转到App Store评分
  15. size = 8 * sizeof(int)是什么意思?详解代码为啥这么写?
  16. 嵌入式工程师题库(适用于各大名厂笔试、软考、计算机等级考试)
  17. Python-玩转数据-scrapy简单分布式爬虫
  18. 多目标跟踪文献阅读笔记
  19. Gets和scanf的区别
  20. react-intl-universal实现中英文语言切换(国际化)

热门文章

  1. Exception in thread “main“ java.lang.NoClassDefFoundError: org/apache/ibatis/io/Resources
  2. 本地如何预览php文件上传,如何实现js上传图片本地预览同时支持预览截图的功能...
  3. 【PAT】A1063 Set Similarity
  4. 「五大常用算法」一文图解分治算法和思想
  5. 技术面试官告诉你面试应该怎么准备?
  6. svn教程----svn简介
  7. 去掉标题栏全屏显示代码
  8. 电脑画画软件_手机原来可以画出这么美的插画!|手机画画软件app篇
  9. 这样给面试官解释约瑟夫环问题的几种巧妙解法,面试官满意的笑了
  10. C语言实例第3期:在控制台打印出著名的杨辉三角