Heim  >  Artikel  >  Datenbank  >  定时备份mysql, 定时切割nginx access log的方法

定时备份mysql, 定时切割nginx access log的方法

WBOY
WBOYOriginal
2016-06-07 18:05:18957Durchsuche

定时备份mysql, 定时切割nginx access log的方法,需要的朋友可以参考下。

定时备份mysql
放入 /etc/cron.hourly/
代码如下:
#!/bin/bash
DUMP=/usr/local/webserver/mysql/bin/mysqldump
OUT_DIR=/data1/backup/
DB_NAME=数据库名
DB_USER=数据库用户
DB_PASS=数据库密码
#How much days backup most
DAYS=3
#12 hours ago
MINS=720
#Core of script
cd $OUT_DIR
DATE=`date +%Y-%m-%d-%H`
OUT_SQL="$DATE.sql"
TAR_SQL="db-$DATE.tar.gz"
$DUMP --default-character-set=utf8 --opt -u$DB_USER -p$DB_PASS $DB_NAME > $OUT_SQL
tar -czf $TAR_SQL ./$OUT_SQL
rm -f $OUT_SQL

find ./ -name "db*" -type f -mmin +$MINS -exec rm {} \;
#find ./ -name "db*" -type f -mtime +$DAYS -exec rm {} \;
exit 0;

定时切割nginx access.log,只保留3天前的记录
放入 /etc/cron.hourly/
代码如下:
#!/bin/bash
# This script run at 00:00

# The Nginx logs path
#logs_path="/usr/local/webserver/nginx/logs/"
logs_path="/data1/logs/"
#How much days backup most
DAYS=3

#Core of script
cd $logs_path
DATE=`date +%Y-%m-%d-%H`
SRC_FILE="access.log"
TAR_FILE="access-$DATE.tar.gz"
tar -czf $TAR_FILE $SRC_FILE
rm -f $SRC_FILE

find ./ -name "access-*" -type f -mtime +$DAYS -exec rm {} \;
kill -USR1 `cat /usr/local/webserver/nginx/nginx.pid`
exit 0;
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn