mirror of
https://github.com/Cockatrice/Cockatrice.git
synced 2025-12-25 04:14:34 -08:00
Added the ability to specify custom database name. Added the ability to specify custom table prefix. Created sub folders for operating systems.
48 lines
1.3 KiB
Bash
48 lines
1.3 KiB
Bash
#!/bin/bash
|
|
set -u
|
|
set -e
|
|
SLEEPTIME=5
|
|
SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file
|
|
LOGAPPENDDATE=`date +%m%d%Y`
|
|
EXPIRATION=`date +%m%d%Y -d "-3 days"`
|
|
DBNAME="servatrice"
|
|
APPNAME="servatrice"
|
|
ROOTFOLDER="./backups" #set this to the root path you want backups to be stored in
|
|
BACKUPDIR="$ROOTFOLDER/$LOGAPPENDDATE/db/$APPNAME"
|
|
TABLES=(
|
|
"cockatrice_users"
|
|
"cockatrice_decklist_files"
|
|
"cockatrice_replays"
|
|
"cockatrice_buddylist"
|
|
"cockatrice_ignorelist"
|
|
"cockatrice_bans"
|
|
"cockatrice_sessions"
|
|
"cockatrice_decklist_folders"
|
|
"cockatrice_replays_access"
|
|
"cockatrice_games"
|
|
"cockatrice_games_players"
|
|
"cockatrice_uptime"
|
|
"cockatrice_schema_version"
|
|
"cockatrice_servermessages"
|
|
"cockatrice_servers"
|
|
"cockatrice_news"
|
|
"cockatrice_rooms"
|
|
"cockatrice_rooms_gametypes"
|
|
)
|
|
|
|
PROCESSNAME="mysqldump"
|
|
if [ "$(pgrep $PROCESSNAME)" == "" ];
|
|
then
|
|
[ ! -d $BACKUPDIR ] && mkdir -p $BACKUPDIR/
|
|
for TABLENAME in "${TABLES[@]}"
|
|
do
|
|
BACKUPFILE="$BACKUPDIR/$APPNAME.$TABLENAME.sql.$LOGAPPENDDATE"
|
|
echo "Backing up DB Table [$TABLENAME]"
|
|
ionice -c3 nice -n19 mysqldump --defaults-file=$SQLCONFFILE $DBNAME $TABLENAME > $BACKUPFILE
|
|
sleep $SLEEPTIME
|
|
done
|
|
rm -rf "$ROOTFOLDER/$EXPIRATION/"
|
|
else
|
|
echo "Backup in progress, aborting"
|
|
fi
|