zoukankan      html  css  js  c++  java
  • linux设置crontab定时执行脚本备份mysql

    前言:mysqldump备份数据库命令

    mysqldump -u root -psztx@2018 fengliuxiaosan > /dbbackup/fengliuxiaosan.sql
    ###mysqldump -u 用户 -p密码 数据库名 > 存放路径/数据库名.sql

    使用命令 crontab -e 然后直接编辑定时脚本。

    这样执行以后,属于用户自定义的,会被写到 /var/spool/cron 目录下,生成一个和用户名一致的文件,文件内容就是我们编辑的定时脚本。

    如:

    [root@localhost ~]# crontab -l
    */1 * * * * /usr/bin/curl http://www.xxx.com/Scheduled/Index
    1 3 * * *   /bin/sh  /dbbackup/backup.sh   ##就是这一条定时任务,

    新建备份目录和创建backup.sh脚本文件,这些命令和目录都可以自定义

    mkdir /dbbackup
    cd /dbbackup/
    vi backup.sh

    下面看这个backup.sh的代码

    #!/bin/bash
    user=root                ##数据库用户名
    passwd=fengliuxiaosan             ###数据库密码
    back_dir="/dbbackup"  ##指定保存备份数据库的目录
    dbname="fengliuxiaosan"        ###指定数据库名
    date=`date +%F`       ##指定命名
    mysqldump -u $user -p$passwd $dbname > $back_dir/$dbname-$date.sql          ###使用mysqldump来执行备份指定数据库
    tar -czvf $back_dir/$dbname-$date.tar.gz  $back_dir/$dbname-$date.sql       ##打包压缩备份的sql文件为.tar.gz格式
    rm -f $back_dir/$dbname-$date.sql                                            ###删除备份的sql文件,因为上面已经压缩了。这个就不需要了
    find $back_dir -mtime +30 -name "*.tar.gz" -exec rm -rf {} ;               ###执行指定时间查找命令,删除时间格式多的压缩包。不然每天压缩一个,磁盘会占满。

     最后别忘了给执行的权限!

    chmod +x backup.sh

     完成,就等时间查看目录的压缩包文件。

  • 相关阅读:
    友盟上报 IOS
    UTF8编码
    Hill加密算法
    Base64编码
    Logistic Regression 算法向量化实现及心得
    152. Maximum Product Subarray(中等, 神奇的 swap)
    216. Combination Sum III(medium, backtrack, 本类问题做的最快的一次)
    77. Combinations(medium, backtrack, 重要, 弄了1小时)
    47. Permutations II(medium, backtrack, 重要, 条件较难思考)
    3.5 find() 判断是否存在某元素
  • 原文地址:https://www.cnblogs.com/Crazy-Liu/p/10904789.html
Copyright © 2011-2022 走看看