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.
54 lines
1.3 KiB
Bash
54 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 that contains the backup files
|
|
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"
|
|
if [ -f "$BACKUPFILE" ]
|
|
then
|
|
echo "Restoring up DB Table [$TABLENAME]"
|
|
ionice -c3 nice -n19 mysql --defaults-file=$SQLCONFFILE $DBNAME < $BACKUPFILE
|
|
sleep $SLEEPTIME
|
|
else
|
|
echo "Missing backup file [$$TABLENAME]"
|
|
sleep $SLEEPTIME
|
|
fi
|
|
done
|
|
rm -rf "$ROOTFOLDER/$EXPIRATION/"
|
|
else
|
|
echo "Restore in progress, aborting"
|
|
fi
|