1. [root@localhost wyb]# cat table_backup.sh
  2. #!/bin/bash
  3.  
  4. flag=
  5. user=root
  6. pass=test
  7.  
  8. mysql -u$user -p"$pass" -e "show databases;" &>/dev/null
  9. [ $? -ne ] && read -p "Mysql do not running,start it?(`echo -e "\[32myes/no\[0m"`):" choice && flag=
  10. [[ "choice" -eq "yes" ]] && service mysqld start &>/dev/null && flag=
  11. [ $flag -eq ] && exit
  12. database=`mysql -u$user -p$pass -e "show databases;"|sed 1d|grep -v 'schema'`
  13.  
  14. echo -e "\033[32m==================backup start=====================\033[0m"
  15. for i in $database
  16. do
  17. tables=`mysql -u$user -p"$pass" -e "use $i;show tables;"|sed 1d`
  18. for j in $tables
  19. do
  20. mysqldump -u$user -p"$pass" -B --databases $i --tables $j > /tmp/${i}-${j}-`date +%F`.sql
  21. [ $? -eq ] && echo $i $j ok >>/tmp/table.log||echo $i $j failed >>/tmp/table.log
  22. [ $? -eq ] && echo -e "$i $j \033[32mok\033[0m" ||echo -e "$i $j \033[31mfailed\033[0m"
  23. done
  24.  
  25. done
  26. echo -e "\033[32m===================backup stop=======================\033[0m"
  27. [root@localhost wyb]# bash table_backup.sh
  28. ==================backup start=====================
  29. mysql columns_priv ok
  30. mysql db ok
  31. mysql func ok
  32. mysql help_category ok
  33. mysql help_keyword ok
  34. mysql help_relation ok
  35. mysql help_topic ok
  36. mysql host ok
  37. mysql proc ok
  38. mysql procs_priv ok
  39. mysql tables_priv ok
  40. mysql time_zone ok
  41. mysql time_zone_leap_second ok
  42. mysql time_zone_name ok
  43. mysql time_zone_transition ok
  44. mysql time_zone_transition_type ok
  45. mysql user ok
  46. ===================backup stop=======================
  47. [root@localhost wyb]# cd tmp
  48. -bash: cd: tmp: No such file or directory
  49. [root@localhost wyb]# cd /tmp
  50. [root@localhost tmp]# ls
  51. a.log mysql-help_category---.sql mysql-tables_priv---.sql table.log
  52. dashazi123.sh mysql-help_keyword---.sql mysql-time_zone---.sql VMwareDnD
  53. keyring-cmzNiY mysql-help_relation---.sql mysql-time_zone_leap_second---.sql vmware-root
  54. mapping-root mysql-help_topic---.sql mysql-time_zone_name---.sql vmware-root-
  55. mysql-columns_priv---.sql mysql-host---.sql mysql-time_zone_transition---.sql VMwareTools-9.6.-.tar.gz
  56. mysql-db---.sql mysql-proc---.sql mysql-time_zone_transition_type---.sql vmware-tools-distrib
  57. mysql-func---.sql mysql-procs_priv---.sql mysql-user---.sql
  58. [root@localhost tmp]# ls mysql*
  59. mysql-columns_priv---.sql mysql-help_topic---.sql mysql-time_zone_leap_second---.sql
  60. mysql-db---.sql mysql-host---.sql mysql-time_zone_name---.sql
  61. mysql-func---.sql mysql-proc---.sql mysql-time_zone_transition---.sql
  62. mysql-help_category---.sql mysql-procs_priv---.sql mysql-time_zone_transition_type---.sql
  63. mysql-help_keyword---.sql mysql-tables_priv---.sql mysql-user---.sql
  64. mysql-help_relation---.sql mysql-time_zone---.sql
  65. [root@localhost tmp]# cat table.log
  66. mysql columns_priv ok
  67. mysql db ok
  68. mysql func ok
  69. mysql help_category ok
  70. mysql help_keyword ok
  71. mysql help_relation ok
  72. mysql help_topic ok
  73. mysql host ok
  74. mysql proc ok
  75. mysql procs_priv ok
  76. mysql tables_priv ok
  77. mysql time_zone ok
  78. mysql time_zone_leap_second ok
  79. mysql time_zone_name ok
  80. mysql time_zone_transition ok
  81. mysql time_zone_transition_type ok
  82. mysql user ok
  83. [root@localhost tmp]#

shell脚本,对MySQL数据库进行分库加分表备份的更多相关文章

  1. 实现对MySQL数据库进行分库/分表备份(shell脚本)

    工作中,往往数据库备份是件非常重要的事情,毕竟数据就是金钱,就是生命!废话不多,下面介绍一下:如何实现对MySQL数据库进行分库备份(shell脚本) Mysq数据库dump备份/还原语法: mysq ...

  2. shell脚本操作mysql数据库

    shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改.查)等各种操作 mysql  -hhostname -Pport -uusername -pp ...

  3. shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查)

    shell编程系列22--shell操作数据库实战之shell脚本与MySQL数据库交互(增删改查) Shell脚本与MySQL数据库交互(增删改查) # 环境准备:安装mariadb 数据库 [ro ...

  4. zabbix3.0.4-agent通过shell脚本获取mysql数据库登陆用户

    zabbix3.0.4获取数据库登陆用户趋势详解 主要思路: 通过zabbix客户端shell脚本mysql命令取出用户表中的数据将结果反馈给zabbix,画出趋势图 1.修改zabbix-agent ...

  5. shell脚本操作mysql数据库,使用mysql的-e参数可以执行各种sql的(创建,删除,增,删,改、查)等各种操作

    mysql  -hhostname -Pport -uusername -ppassword  -e  相关mysql的sql语句,不用在mysql的提示符下运行mysql,即可以在shell中操作m ...

  6. MyCat:对MySQL数据库进行分库分表

    本篇前提: mycat配置正确,且能正常启动. 1.schema.xml <table>标签: dataNode -- 分片节点指定(取值:dataNode中的name属性值) rule ...

  7. 通过shell脚本批量操作mysql数据库

    创建建表语句 ============================================= 学生表:Student(Sno,Sname,Ssex,Sage,Sdept) ------(学 ...

  8. shell脚本操作mysql数据库—创建数据库,在该数据库中创建表(插入,查询,更新,删除操作也可以做)

    #!/bin/bash HOSTNAME="192.168.1.224"                                           #数据库Server信 ...

  9. shell 脚本连接mysql数据库查询database中表的数量和表名

    #!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYS ...

随机推荐

  1. Codeforces 744C【DFS】

    题意: 给你一幅图,然后有几个特殊点 和不特殊点,给你一些已经连了的边,在保证特殊点不能连的前提下,问最多还能添几条边,双向边 思路: 简单题,就是一个特殊点就是一个集合,然后搜一下,最后把还有没连的 ...

  2. Telnet 对memcached进行数据操作

    连接Telnet 127.0.0.1 11211 存储数据 add news 0 1 8 (news为数据名称,1为存储的时间,当为0的时候则为永久储存,永久缓存最多为30天,8为长度) aaaaaa ...

  3. opencv3.1 压缩并拼图

    必须有重叠才能拼,压缩越多,拼接越快 #include <opencv2\opencv.hpp> #include <opencv2\stitching.hpp> using ...

  4. C#字符串判断

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

  5. Java程序员都应该去使用一下这款强大的国产工具类库

    这不是标题党,今天给大家推荐一个很棒的国产工具类库:Hutool.可能有很多朋友已经知道这个类库了,甚至在已经在使用了,如果你还没有使用过,那不妨去尝试一下,我们项目组目前也在用这个.这篇文章来简单介 ...

  6. Day2课后作业:购物车简单版

    PRODUCT_LIST = [ ['iphone7',6500], ['macbook',12000], ['pythonbook',66], ['bike',999], ['coffee',31] ...

  7. JavaScript特点、优缺点及常用框架

    参考来源:   http://www.cnblogs.com/SanMaoSpace/archive/2013/06/14/3136774.html

  8. 101 Symmetric Tree 判断一颗二叉树是否是镜像二叉树

    给定一个二叉树,检查它是否是它自己的镜像(即,围绕它的中心对称).例如,这个二叉树 [1,2,2,3,4,4,3] 是对称的.    1   / \  2   2 / \ / \3  4 4  3但是 ...

  9. freertos之资源管理学习

    OS下在对硬件外设资源操作.多任务的共享变量.任务和中断的共享变量操作时需要考虑资源的完整性和安全性. FREERTOS提供了临界区.调度器上锁.互斥量.优先级自动继承.创建守护任务的方法来改变最小优 ...

  10. php设计模式学习之单例模式

    某些应用程序资源是独占的,因为有且只有一个此类型的资源.例如,通过数据库句柄到数据库的连接是独占的.您希望在应用程序中共享数据库句柄,因为在保持连接打开或关闭时,它是一种开销,在获取单个页面的过程中更 ...