zoukankan      html  css  js  c++  java
  • 使用shell脚本定时执行备份mysql数据库

    使用shell脚本定时执行备份mysql数据库

     1 #!/bin/bash
     2 
     3 ############### common file ################
     4 
     5 #本机备份文件存放目录
     7 MYSQLBACK_DIR="/data/backup/bak_mysql"
     9 
    10 #格式化日期,备份文件时用日期来做文件名的
    11 DATE=`date +%Y%m%d-%H%M%S`
    12 #保存日期
    13 DAYS=15
    14 ######## mysql info ############################
    15 
    16 # Database info
    17 DB_HOST="127.0.0.1"
    18 DB_PORT="3306"
    19 DB_NAME="database_name"
    20 DB_USER="database_user"
    21 DB_PASS="database_pwd"
    22 
    23 # 根据实际情况而定
    24 BIN_DIR="/usr/local/mysql/bin"
    25 
    26 # 备份文件前缀
    27 WEBSITE_PREFIX=MySQL28 
    29 # framework
    30 ${BIN_DIR}/mysqldump --skip-extended-insert --skip-lock-tables --set-gtid-purged=OFF --triggers --routines --events -d --databases -h${DB_HOST} -u${DB_USER} -p${DB_PASS} ${DB_NAME} > ${MYSQLBACK_DIR}/db_framework${DATE}.sql
    31 # data
    32 ${BIN_DIR}/mysqldump --skip-extended-insert --skip-lock-tables --set-gtid-purged=OFF --triggers --routines --events -t --databases -h${DB_HOST} -u${DB_USER} -p${DB_PASS} ${DB_NAME} > ${MYSQLBACK_DIR}/db_data${DATE}.sql
    33 #all
    34 ${BIN_DIR}/mysqldump --skip-extended-insert --skip-lock-tables --set-gtid-purged=OFF --triggers --routines --events --databases -h${DB_HOST} -u${DB_USER} -p${DB_PASS} ${DB_NAME} > ${MYSQLBACK_DIR}/db_all${DATE}.sql
    35 
    36 # auto delete pass file
    37 find ${MYSQLBACK_DIR} -name "db_*" -type f -mtime +${DAYS} -exec rm {} ;

     # linux定时执行python文件

    
    

     # crontab -e 添加如下信息:

     0 3 * * * /root/mysql.sh > /dev/null 2>&1

     

  • 相关阅读:
    Docker | 第二章:第一个Docker应用
    Docker | 第一章:Docker简介
    Docker | 第零章:前言
    SpringBoot | 第十五章:基于Postman的RESTful接口测试
    SpringBoot | 第十四章:基于Docker的简单部署
    SpringBoot | 第十三章:测试相关(单元测试、性能测试)
    2014年计划
    学习方法,工作方法 探讨
    2013年总结
    asp.net用Zxing库实现条形码输出
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/9849542.html
Copyright © 2011-2022 走看看