shell脚本分库分表备份

1.取出数据库中的用户名称

[root@db01 ~]# mysql -uroot -e "show databases;" | sed 1d |egrep -v "*_schema|mysql|test"

脚本

[root@db01 ~]# cat mysql-bak.sh 
#!/usr/bin/bash

db_name=$(mysql -uroot -e "show databases;" | sed 1d |egrep -v "*_schema|mysql|test")
Date=$(date +%F)
db_path=/mysql/data
 
[ -d $db_path ] || mkdir -p $db_path
for i in $db_name
do
    mysqldump -uroot -B ${i} >$db_path/${i}_${Date}.sql
    if [ -f $db_path/${i}_${Date}.sql ];then
        echo "$i is ok"
    else 
        echo "$i is err"
    fi
    db_table=$(mysql -uroot -e "use $i; show tables;"|sed 1d)
    for j in $db_table
    do
        [ -d $db_path/$i/$Date ] || mkdir $db_path/$i/$Date -p
        mysqldump -uroot $i $j >$db_path/$i/$Date/${j}.sql
    done 
done 
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 一、Python简介和环境搭建以及pip的安装 4课时实验课主要内容 【Python简介】: Python 是一个...
    _小老虎_阅读 6,319评论 0 10
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,632评论 1 32
  • feisky云计算、虚拟化与Linux技术笔记posts - 1014, comments - 298, trac...
    不排版阅读 4,306评论 0 5
  • 第三章 数据库系统 3.1 数据库管理系统的类型 通常有多个分类标准。如按数据模型分类、按用户数分类、按数据库分布...
    步积阅读 3,114评论 0 7
  • 一. Java基础部分.................................................
    wy_sure阅读 4,010评论 0 11

友情链接更多精彩内容