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

相关推荐
TDengine (老段)27 分钟前
从施工监测到运营预警,桥科院用 TDengine 提升桥梁数据管理能力
大数据·数据库·物联网·时序数据库·tdengine·涛思数据
S1998_1997111609•X2 小时前
论mysql国盾shell-sfa犯罪行为集团下的分项工程及反向注入原理尐深度纳米算法下的鐌檵鄐鉎行为
网络·数据库·网络协议·百度·开闭原则
KmSH8umpK2 小时前
Redis分布式锁从原生手写到Redisson高阶落地,附线上死锁复盘优化方案进阶第七篇
数据库·redis·分布式
九成宫3 小时前
Git 与远程仓库实操记录:克隆、配置、分支推送与问题排查
笔记·git·ssh
BU摆烂会噶3 小时前
【LangGraph】持久化实现的三大能力——时间旅行
数据库·人工智能·python·postgresql·langchain
l1t4 小时前
DeepSeek总结的DuckLake 入门
数据库
Joseph Cooper4 小时前
RAG 与 AI Agent:智能体真的需要检索增强生成吗?
数据库·人工智能·ai·agent·rag·上下文工程
light blue bird4 小时前
主子端台二分法任务汇总组件
前端·数据库·.net·桌面端winform
DevilSeagull5 小时前
MySQL(2) 客户端工具和建库
开发语言·数据库·后端·mysql·服务
小李来了!5 小时前
Navicate/plsql连接Oracle数据库教程
数据库·oracle