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

相关推荐
m0_5951998520 分钟前
Redis(以Django为例,含具体操作步骤)
数据库·redis·缓存
爱尚你199327 分钟前
MySQL 三大日志:redo log、undo log、binlog 详解
数据库·mysql
小猿姐2 小时前
KubeBlocks AI:AI时代的云原生数据库运维探索
数据库·人工智能·云原生·kubeblocks
NocoBase3 小时前
10 个开源工具,快速构建数据应用
数据库·低代码·开源
麻辣清汤4 小时前
结合BI多维度异常分析(日期-> 商家/渠道->日期(商家/渠道))
数据库·python·sql·finebi
钢铁男儿4 小时前
Python 正则表达式(正则表达式和Python 语言)
python·mysql·正则表达式
xuanerya5 小时前
使用 SSH 方式克隆 GitHub 仓库没有权限解决办法
运维·ssh·github
Kan先生5 小时前
对象存储解决方案:MinIO 的架构与代码实战
数据库·python
超级迅猛龙5 小时前
保姆级Debezium抽取SQL Server同步kafka
数据库·hadoop·mysql·sqlserver·kafka·linq·cdc
杨过过儿6 小时前
【Task02】:四步构建简单rag(第一章3节)
android·java·数据库