当前位置: 首页 > news >正文

MySQL数据库分库分表备份

分库备份

创建脚本并编写

[root@localhost scripts]# vim bak_db_v1.sh

#!/bin/bash

备份的路径

bak_path=/backup/db

账号密码

mysql_cmd='-uroot -pRedHat@123'

需要排除的数据库

exclude_db='information_schema|mysql|performance_schema|sys'

检验备份路径是否存在,不存在则创建

[ -d ${bak_path} ] || mkdir -p ${bak_path}

提取需要备份的数据库,并将其写入文件(dbname)中

mysql ${mysql_cmd} -e 'show databases' -N | egrep -v "${exclude_db}" > dbname

循环文件,针对每个库进行备份

while read line

do

 mysqldump ${mysql_cmd} -B $line | gzip > ${bak_path}/${line}_$(date +%F).sql.gz

done < dbname

删除临时文件

rm -f dbname

分表备份

#!/bin/bash
备份的路径
bak_path=/backup/db
账号,密码
mysql_cmd='-uroot -pRedHat@123'
需要排除的数据库
exclude_db='information_schema|mysql|performance_schema|sys'
提取需要备份的数据表,并将其写入文件(tbname)中
mysql -uroot -pRedHat@123 -N -e'show tables from abc' > tbname
循环文件,针对每个表进行备份
while read line
do
将数据表放在对应的数据库下面
 [ -d ${bak_path}/abc ] || mkdir -p ${bak_path}/abc
 mysqldump ${mysql_cmd} abc $line | gzip > ${bak_path}/abc/abc_${line}_$(date +%F).sql.gz
done < tbname
删除临时文件
rm -f tbname

http://www.lryc.cn/news/106781.html

相关文章:

  • PyTorch 中的累积梯度
  • 【面试精品】运维工程师需要具备的核心能力有哪些?
  • 微服务实战项目-学成在线-选课学习(支付与学习中心)模块
  • postman和jmeter的区别何在?
  • maven安装(windows)
  • 自学安全卷不动,是放弃还是继续?
  • Django实现音乐网站 ⑶
  • (13) Qt事件系统(two)
  • PHP的知识概要
  • JSON格式Python,Java,PHP等封装根据商品ID获取快手商品详情数据方法
  • 【ASP.NET MVC】MYSQL安装配置(4)
  • 前端框架学习-Vue(二)
  • sublime配置less的一些坑(1)
  • 解码“平台工程”,VMware 有备而来
  • 2023年第四届华数杯数学建模A题B题C题D题思路代码分析
  • java版直播商城平台规划及常见的营销模式+电商源码+小程序+三级分销+二次开发 bbc
  • windows物理机 上安装centos ,ubuntu,等多个操作系统的要点
  • FSDirectory 与 RAMDirectory
  • 小程序开发:开发框架与工具的使用指南
  • 【LeetCode】探索杨辉三角模型
  • Qt 中引入ffmpeg 动态库
  • 工程师是怎样对待开源 qt
  • Maven中Servlet的坐标为什么要添加<scope>provided</scope>
  • 联发科CEO:未获准向华为供货,换机潮已过去,手机需求不会更差
  • 2023年DevOps和云趋势报告!
  • 怎么学习CSS相关技术知识? - 易智编译EaseEditing
  • Qt 2. QSerialPortInfo显示串口信息
  • linux or mac 查看进程的pid和占有的端口
  • 8.2Jmeter5.1:察看结果树的响应结果乱码
  • vscode 快捷键