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

     

  • 相关阅读:
    Java并发包中Lock的实现原理
    多线程---再次认识volatile,Synchronize,lock
    共享锁(S锁)和排它锁(X锁)
    Java 7中的TransferQueue 以及 SynchronousQueue
    精巧好用的DelayQueue
    非阻塞同步算法与CAS(Compare and Swap)无锁算法
    彻底理解线索二叉树
    使用import取代require
    子页面iframe跨域执行父页面定义的JS方法
    利用js实现 禁用浏览器后退
  • 原文地址:https://www.cnblogs.com/sanduzxcvbnm/p/9849542.html
Copyright © 2011-2022 走看看