• 一文教你学会使用Cron表达式定时备份MySQL数据库


    各位小伙伴大家好,今天我就来讲述一下作为一个运维,如何解放自己的双手去让服务器定时备份数据库数据,防止程序操作数据库出现数据丢失。

    mysql_dump_script.sh脚本文件

    1. #!/bin/bash
    2. #保存备份个数,备份7天数据
    3. number=7
    4. #备份保存路径 路径名可自定义
    5. backup_dir=/data/backup
    6. #日期
    7. dd=`date +%Y-%m-%d-%H-%M-%S`
    8. #备份工具
    9. tool=mysqldump
    10. #用户名
    11. username=your_username
    12. #密码 自己的数据库密码
    13. password=your_password
    14. #将要备份的数据库
    15. database_name=your_database_name
    16. #如果文件夹不存在则创建
    17. if [ ! -d $backup_dir ];
    18. then    
    19.    mkdir -p $backup_dir;
    20. fi
    21. #简单写法 mysqldump -u root -p123456 users > /root/mysqlbackup/users-$filename.sql
    22. #变量写法 本实例采用变量写法,这样增强脚本可移植性、可读性,后期维护时只需修改变量名即可    
    23. $tool -u $username -p$password $database_name > $backup_dir/$database_name-$dd.sql
    24. #写创建备份日志
    25. echo "创建数据部备份文件 $backup_dir/$database_name-$dd.sql" >> $backup_dir/log.txt
    26. #找出需要删除的备份
    27. delfile=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | head -1`
    28. #判断现在的备份数量是否大于$number
    29. count=`ls -l -crt $backup_dir/*.sql | awk '{print $9 }' | wc -l`
    30. if [ $count -gt $number ]
    31. then
    32.  #删除最早生成的备份,只保留number数量的备份
    33.  rm $delfile
    34.  #写删除文件日志
    35.  echo "删除过期本份文件 $delfile" >> $backup_dir/log.txt
    36. fi

    写好数据库备份脚本了,该如何将服务器每天定时去执行了,这里就不得不说到服务器自带的cron表达式了,我们可以执行crontab -e来编辑我们数据库脚本执行频率。

    0 0 * * * /develop/work/mysql/mysql_dump_script.sh

    上述cron表达式为每天0点定时备份MySQL数据库,这样就不用怕数据库被攻击啦。

    优号推荐

    公众号智享学习 专注分享软件开发全生态相关技术文章视频教程资源、热点资讯等,如果喜欢我的分享,给 🐟🐟 点一个 👍 或者 ➕关注 都是对我最大的支持。

    智享学习

    长按二维码关注公众号,在后台私信:

    • 回复【学习路线】,获取Java最新学习资料

    • 回复【面 试】,获取最新最全的互联网大厂面试资料

    • 回复【简 历】,获取各种样式精美、内容丰富的简历模板

    • 回复 【人工智能】,获取人工智能的全网最全思维导图

    • 更多教程资源数不胜数,欢迎关注,慢慢获取

  • 相关阅读:
    【Unity3D】固定管线着色器二
    极客日报:张一鸣以594亿美元成中国互联网首富;苹果称华为商标抄袭AIRPODS被驳回;​Chrome 95发布
    [华为认证]路由表和FIB表
    启动服务报错:nohup: ignoring input and redirecting stderr to stdout
    浅谈Vue 3的响应式对象: ref和reactive
    Arduino开发遥控小车(二)基于nRF24L01无线模块实现数据发送和接收
    上周热点回顾(2.5-2.11)
    Go网络通信
    网课查题公众号搭建——内含查题接口及独立后台
    27_content 阶段static 模块
  • 原文地址:https://blog.csdn.net/weixin_46294086/article/details/134000957