Mysql定时备份脚本

Linux:

 

#!/bin/bash

#保存路径
mysql_bak_dir="/data/backup"

#日期

current_date=`date +%Y%m%d-%H%M%S`

#保存时长

days=15

db_host="127.0.0.1"
db_port="3306"
db_name="dbname"
db_user="root"
db_pass="admin"

bin_dir="/data/mysql/bin/"

mkdir -p ${mysql_bak_dir}

${bin_dir}/mysqldump -h${db_host} -u${db_user} -p${db_pass} --triggers ${db_name} > ${mysql_bak_dir}/${db_name}-$current_date.sql


#自动删除15天前的数据

#find ${mysql_bak_dir} -name ${db_name}* -type f -mmin +1 -exec rm {} \; > /dev/null 2>&1
find ${mysql_bak_dir} -name ${db_name}* -type f -mtime +${days} -exec rm {} \; > /dev/null 2>&1


#设置定时任务,每天凌晨3点

#crontab -e
#0 3 * * * /data/dump_mysql.sh
#service crond restart
 

 

Windows:

 

@echo off
echo.
echo MySQL数据库备份脚本

echo *****************************
echo.
echo 备份日期:%date%
echo 备份时间:%time%
echo.
echo *****************************

set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"

md "C:\xj\mysql\%Ymd%"

"C:\xj\mysql-8.0.11-winx64\bin\mysqldump.exe" -uroot -p123456  mysql --default-character-set=utf8 --opt -Q -R --skip-lock-tables > C:\xj\mysql\%Ymd%\mysql_bak.sql

echo.
forfiles /p C:\xj\mysql\ /s /m *.* /d -7 /c "cmd /c del @file"
echo MySQL数据库备份完成
echo.
echo.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值