linux设置定时任务执行mysql数据库全量日备份脚本

一、备份脚本和注释(含保留30天文件)

#!/bin/bash

#文件名
fileName=`date '+%Y%m%d_%H%M%S'.sql`

#保存路径
savePath=/home/njcloud/backup/dump/

#绝对路径
fullPath=$savePath$fileName

#数据库备份
/usr/local/mysql/bin/mysqldump --result-file=$fullPath --hex-blob --skip-lock-tables  --skip-add-locks abcd_prod --user=root --password=abcd_root

#删除备份目录下30天文件未改变的文件
find /home/njcloud/backup/dump -type f -ctime +30 | xargs rm -rf

二、linux设置定时任务执行shell脚本

每天凌晨1点执行备份脚本

crontab -e

0 1 * * *  sh /data/backup/script/backup.sh

三、注意事项

如果在windows系统编写的脚本,到llinux系统执行会出现编码格式的问题,如果出现以下问题

/bin/bash^M: 坏的解释器: 没有那个文件或目录

解决方案:

输sed -i 's/\r$//' 【名字】.sh

意思是把行尾的\r替换为空

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A: 备份MySQL数据库管理很重要的一步。 定时备份MySQL可以确保在意外故障或数据丢失的情况下,可以用备份数据来还原或恢复数据库。 下面是一个mysql全量定时备份脚本的示例: ```bash #!/bin/bash # MySQL Database Credentials user="username" password="password" host="localhost" # Backup Directory backupDir="/home/user/backup/mysql" # Date Format dateFormat=$(date +"%Y-%m-%d") # MySQL Backup File backupFile="${backupDir}/mysql-backup-${dateFormat}.sql" # MySQL Dump Command mysqldump --user=${user} --password=${password} --host=${host} --all-databases > ${backupFile} # Compressing MySQL Backup File gzip ${backupFile} # Removing Old MySQL Backup Files find ${backupDir} -name "mysql-backup*.gz" -type f -mtime +30 -exec rm -f {} \; ``` 说明: - 把USER、PASSWORD和HOST设置为连接MySQL的凭据。 - 把BACKUPDIR设置备份文件的目录的路径。 - 期格式为YEAR-MONTH-DAY。 - BACKUPFILE是备份数据库的结果文件,其格式为mysql-backup-YYYY-MM-DD.sql。 - 使用MySQLDump命令以ALL-DATABASES选项备份所有数据库,然后将其输出到备份文件。 - 压缩备份文件。 - 使用find命令查找旧的备份文件,并删除30天以上的文件。 将此脚本保存为mysql-backup.sh文件并赋予执行权限: ```bash chmod +x mysql-backup.sh ``` 设置cron作业,每天定时备份MySQL: ```bash crontab -e ``` 在打开的文本编辑器添加以下一行: ```bash 0 0 * * * /path/to/mysql-backup.sh ``` 这将在每天的午夜12点执行MySQL备份脚本。 它将备份所有的MySQL数据库,并在备份过程压缩数据。备份文件将被保存在/home/user/backup/mysql目录,只保存最近30天的备份文件。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值