diff --git a/servatrice/scripts/File.History b/servatrice/scripts/File.History new file mode 100644 index 00000000..00e52f20 Binary files /dev/null and b/servatrice/scripts/File.History differ diff --git a/servatrice/scripts/db_backup_all b/servatrice/scripts/db_backup_all new file mode 100644 index 00000000..42d329d2 --- /dev/null +++ b/servatrice/scripts/db_backup_all @@ -0,0 +1,44 @@ +#!/bin/bash +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" + ) +/home/wwadmin/scripts/db_maint_logs +PROCESSNAME="mysqldump" +#COMMANDRESULTS=`ps -e |grep $PROCESSNAME |grep -v grep` +if [ -z "$COMMANDRESULTS" ]; +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/" +fi diff --git a/servatrice/scripts/db_restore_all b/servatrice/scripts/db_restore_all new file mode 100644 index 00000000..e1d1c354 --- /dev/null +++ b/servatrice/scripts/db_restore_all @@ -0,0 +1,50 @@ +#!/bin/bash +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" + ) +/home/wwadmin/scripts/db_maint_logs +PROCESSNAME="mysqldump" +#COMMANDRESULTS=`ps -e |grep $PROCESSNAME |grep -v grep` +if [ -z "$COMMANDRESULTS" ]; +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/" +fi diff --git a/servatrice/scripts/info_db_tablesize b/servatrice/scripts/info_db_tablesize new file mode 100644 index 00000000..a558155e --- /dev/null +++ b/servatrice/scripts/info_db_tablesize @@ -0,0 +1,3 @@ +#!/bin/bash +SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file +mysql --defaults-file=$SQLCONFFILE -e 'SELECT table_name AS "Tables", round(((data_length + index_length) / 1024 / 1024), 2) "Size in MB" FROM information_schema.TABLES WHERE table_schema = "servatrice" ORDER BY (data_length + index_length) DESC;' diff --git a/servatrice/scripts/maint_removeinactiveplayeraccounts b/servatrice/scripts/maint_removeinactiveplayeraccounts index cf72f069..75b2775f 100644 --- a/servatrice/scripts/maint_removeinactiveplayeraccounts +++ b/servatrice/scripts/maint_removeinactiveplayeraccounts @@ -1,3 +1,4 @@ #!/bin/bash # SCHEDULE WITH CRONTAB BASED ON TIME PERIOD UNACTIVE ACCOUNT SHOULD BE REMOVED. UPDATE INTERVAL DATE TO BE NUMBER OF DAYS OLD (OR OLDER) TO REMOVE. -mysql --defaults-file=./mysql.cnf -h localhost -e 'delete from servatrice.cockatrice_users where registrationDate < DATE_SUB(now(), INTERVAL 5 DAY) AND active = 0'; +SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file +mysql --defaults-file=$SQLCONFFILE -h localhost -e 'delete from servatrice.cockatrice_users where registrationDate < DATE_SUB(now(), INTERVAL 5 DAY) AND active = 0'; diff --git a/servatrice/scripts/maint_replays b/servatrice/scripts/maint_replays index 1ce1b400..22f6c097 100644 --- a/servatrice/scripts/maint_replays +++ b/servatrice/scripts/maint_replays @@ -1,3 +1,4 @@ #!/bin/bash # SCHEDULE WITH CRONTAB BASED ON TIME PERIOD REPLAYS SHOULD BE SAVED UNTIL (EX: SCHEDULE ONCE A WEEK TO KEEP A WEEKS WORTH OF REPLAYS IN THE DB) -mysql --defaults-file=./mysql.cnf -h localhost -e 'truncate table servatrice.cockatrice_replays;truncate table servatrice.cockatrice_replays_access' +SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file +mysql --defaults-file=$SQLCONFFILE -h localhost -e 'truncate table servatrice.cockatrice_replays;truncate table servatrice.cockatrice_replays_access' diff --git a/servatrice/scripts/maint_sessions b/servatrice/scripts/maint_sessions index 2c41da6d..69e531ce 100644 --- a/servatrice/scripts/maint_sessions +++ b/servatrice/scripts/maint_sessions @@ -1,3 +1,4 @@ #!/bin/bash # SCHEDULE WITH CRONTAB TO RUN ONCE A MONTH -mysql --defaults-file=./mysql.cnf -h localhost -e "delete from servatrice.cockatrice_sessions where start_time < DATE_SUB(now(), INTERVAL 1 MONTH)" +SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file +mysql --defaults-file=$SQLCONFFILE -h localhost -e "delete from servatrice.cockatrice_sessions where start_time < DATE_SUB(now(), INTERVAL 1 MONTH)" diff --git a/servatrice/scripts/setup_addfirstadmin b/servatrice/scripts/setup_addfirstadmin index 91731559..17c2d881 100644 --- a/servatrice/scripts/setup_addfirstadmin +++ b/servatrice/scripts/setup_addfirstadmin @@ -1,3 +1,4 @@ #!/bin/bash # SCRIPT TO ADD THE FIRST ADMIN USER NAMED SERVATRICE WITH THE PASSWORD OF PASSWORD -mysql --defaults-file=./mysql.cnf -h localhost -e "insert into servatrice.cockatrice_users (admin,name,password_sha512,active) values (1,'servatrice','jbB4kSWDmjaVzMNdU13n73SpdBCJTCJ/JYm5ZBZvfxlzbISbXir+e/aSvMz86KzOoaBfidxO0s6GVd8t00qC0TNPl+udHfECaF7MsA==',1);" +SQLCONFFILE="./mysql.cnf" #set this to the path that contains the mysql.cnf file +mysql --defaults-file=$SQLCONFFILE -h localhost -e "insert into servatrice.cockatrice_users (admin,name,password_sha512,active) values (1,'servatrice','jbB4kSWDmjaVzMNdU13n73SpdBCJTCJ/JYm5ZBZvfxlzbISbXir+e/aSvMz86KzOoaBfidxO0s6GVd8t00qC0TNPl+udHfECaF7MsA==',1);"