共计 1299 个字符,预计需要花费 4 分钟才能阅读完成。
这篇文章主要讲解了“mysql 数据库怎么定时备份”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着丸趣 TV 小编的思路慢慢深入,一起来研究和学习“mysql 数据库怎么定时备份”吧!
操作步骤:
1、将脚本放到任意位置下,不容易被误删即可
2、定时任务,一周执行一次脚本脚本如下:
#!bin/bash
backuppath=/data/mysql/backup
date=$(date +%Y%m%d%H%M)
SQLuser=root
SQLpwd=password
mysqldump=/usr/local/mysql/bin/mysqldump
mysql=/usr/local/mysql/bin/mysql
HIS_Date=`date -d $(date -d -30 day +%Y%m%d) +%s` # 取 30 天之前的时间戳
Sql_Date=`date -d $(date -d -7 day +%Y%m%d) +%s` # 取 7 天之前的时间戳
# 进入 mysql 数据库,清除 zabbix 历史数据
$mysql -u$SQLuser -p$SQLpwd -e
use zabbix;
delete from history WHERE clock $Sql_Date;
delete from history_uint WHERE clock $Sql_Date;
delete from history_str WHERE clock $Sql_Date;
delete from history_text WHERE clock $Sql_Date;
delete from history_log WHERE clock $Sql_Date;
exit
# 建立备份目录
if [ ! -e $backuppath ];then
mkdir -p $backuppath
fi
# 开始备份 zabbix 库
$mysqldump -u$SQLuser -p$SQLpwd zabbix $backuppath/zabbix$date.sql
# 删除 1 个月前的备份数据
find /data/mysql/backup -mtime +30 -type f -name \zabbix*.sql -exec rm -f {} \;
在数据库历史数据过大,可以考虑 truncate 掉历史数据。
$mysql -u$SQLuser -p$SQLpwd -e
use zabbix;
truncate table history;
truncate table history_log;
truncate table history_uint;
truncate table history_str;
truncate table history_text;
exit
感谢各位的阅读,以上就是“mysql 数据库怎么定时备份”的内容了,经过本文的学习后,相信大家对 mysql 数据库怎么定时备份这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是丸趣 TV,丸趣 TV 小编将为大家推送更多相关知识点的文章,欢迎关注!
正文完