本文介绍: 对于企业而言,数据是非常重要的,要对数据库进行定期备份,万一数据库丢了那就得连夜逃跑了。常用,梳理回顾下,做下记录。个人认为,定期备份数据和开启binlog日志,很重要!Linux定时任务执行mysql-dump.sh脚本。mysql-test容器备份db1数据库并压缩。备份db1的table1、table2多张表。备份db1 db2多个数据库。删除7天前的db1数据库备份。备份db1 table1表。导出db1数据库并压缩。

对于企业而言,数据是非常重要的,要对数据库进行定期备份,万一数据库丢了那就得连夜逃跑了。常用,梳理回顾下,做下记录。

导出db1数据库

mysqldump -u root -p 123456 db1 > /root/mysql/db1_`date +%Y%m%d`.sql

导出db1数据库并压缩

mysqldump -u root -p 123456 db1 | gzip > /root/mysql/db1_`date +%Y%m%d`.sql.gz

备份db1 db2多个数据库

mysqldump -u root -p 123456 db1 db2 > /root/mysql/db_1_2_`date +%Y%m%d`.sql

备份db1 table1表

mysqldump -u root -p 123456 db1 table1 > /root/mysql/db1_table1_`date +%Y%m%d`.sql

备份db1的table1、table2多张表

mysqldump -u root -p 123456 db1 table1 table2 > /root/mysql/db1_table1_table2_`date +%Y%m%d`.sql

mysql-test容器备份db1数据库并压缩

docker exec mysql-test mysqldump -u root -p 123456 db1 | gzip > /root/mysql/db1_`date +%Y%m%d`.sql.gz

删除7天前的db1数据库备份

find /root/mysql/backup/ -mtime +7 -name 'db1_[1-9].sql.gz' -exec rm -f {} ;

mysql-dump.sh备份示例:

#!/usr/bin/env bash

# 数据做备份
docker exec mysql-test mysqldump -u root -p 123456 db1 | gzip > /root/mysql/backup/db1_`date +%Y%m%d`.sql.gz

dump=`date 'date +%Y%m%d'`
if [ $? -ne 0 ]
then
	echo "$dump 数据备份失败" >> /root/mysql/logs/mysqldump_fail.log
	exit -1
else
	echo "$dump 数据备份成功" >> /root/mysql/logs/mysqldump_success.log
	exit 0
fi

# 删除7天前备份数据
find /root/mysql/backup/ -mtime +7 -name 'db1_[1-9].sql.gz' -exec rm -f {} ;

Linux定时任务执行mysql-dump.sh脚本

chmod +x /root/mysql/mysql_dump.sh

crontab -e

# 每周日凌晨2点定时执行备份任务
00 02 * * 7 /root/mysql/mysql_dump.sh > /root/mysql/mysql_dump_exec.log 2>&1

小结:
个人认为,定期备份数据和开启binlog日志,很重要!

原文地址:https://blog.csdn.net/rulaixiong/article/details/135866962

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。

如若转载,请注明出处:http://www.7code.cn/show_63453.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱:suwngjj01@126.com进行投诉反馈,一经查实,立即删除!

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注