Login



agorum core
Willkommen, Gast
Zum Ende gehen Neues Thema Beliebt: 0
THEMA: Aw: Backup-Größe
#9054
ska (Benutzer)
Fresh Boarder
Beiträge: 17
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Backup-Größe vor 4 Jahren, 7 Monaten Karma: 0  
Hallo,

ich habe unter Linux das Script roi_mysql_backup so geändert, dass das Backup nicht mehr tar durchläuft. Wenn ich das Backup jetzt mit
Code:

<Pfad_zu_agorumcore>/scripts/agorumcore backup

ausführe, werden sechs - ungepackte - Dateien angelegt, die in Summe etwa 6,1 GB groß sind.
Das Verzeichnis <Pfad_zu_agorumcore>/mysql/data enthält aber in Summe 63 GB. Wie passt das zusammen?

ska
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9057
jeanettesuesser (Benutzer)
Moderator
Beiträge: 635
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Geschlecht: weiblich Geburtstag: 1981-03-21
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 11  
Hallo,

der Unterschied ist sehr deutlich, wie war denn die Dumpgröße davor? Erklären lassen würde sich das nur dann wenn Sie z. B. sehr viel gelöscht haben vor dem Dump aber schön wäre ein Vergleich mit einem Dump vor Anpassung des Backup-Skriptes.

Wenn Sie möchten können Sie mir das angepasste Backup-Skript mal zur Verfügung stellen, dann kann ich es testen. In diesem Falle gerne auch per Mail an support@agorum.com.

Viele Grüße
Jeanette Süßer
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9067
ska (Benutzer)
Fresh Boarder
Beiträge: 17
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 0  
Hallo,

die Frage hat sich geklärt:

Mein Zielverzeichnis ist ein nfs-share und während der Sicherung hat der NFS-Server einen Fehler gemeldet. Den fängt das agorum-Backup-Script aber leider nicht ab und liefert als Exitcode immer 0.

So wird man leider nicht darauf hingewiesen, wenn das Backup fehlschlägt. Könnte man das nicht mit wenig Aufwand verbessern?

ska
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9068
jeanettesuesser (Benutzer)
Moderator
Beiträge: 635
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Geschlecht: weiblich Geburtstag: 1981-03-21
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 11  
Hallole,

danke für die Rückmeldung, wir werden das entsprechend prüfen. Wobei in der Praxis der Dump in der Regel lokal gemacht wird und dann ggf. mit Hilfe eines Skipts verschoben wird.

Viele Grüße
Jeanette Süßer
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9071
ska (Benutzer)
Fresh Boarder
Beiträge: 17
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 0  
Hallo,

wenn sich bei einem lokalen Dump ein Fehler ergeben sollte, weil z.B. die Festplatte volläuft oder eine Berechtigung nicht gegeben ist, weist das Skript allerdings auch nicht darauf hin.

Es würde genügen, bei allen sicherungsrelevanten Kommandos den Exitcode abzufragen und entsprechend mit einem eigenen Exitcode zu reagieren. Wenn man das Skript einfach nach jedem Fehler abbrechen würde, würde agorum abschließend nicht wieder gestartet.

Mein Vorschlag:
Code:


#!/bin/bash

cd "/opt/agorum/agorumcore/scripts"

#
# stop everything
#
./roi stop || exit 1
./roi_mysql start || exit 1


# Create the temporary copy directory
SQL_BACKUP_PATH=/opt/agorum/agorumcore/backup
SQL_BASE_PATH=/opt/agorum/agorumcore/mysql
SQL_PASSWORD=password
SQL_HOST=localhost

while [ true ]; do
fehlercode=1
mkdir -p ${SQL_BACKUP_PATH}
mkdir -p ${SQL_BACKUP_PATH}/tmp
chmod -R 700 ${SQL_BACKUP_PATH}/tmp

mkdir /tmp/sql || break
ln -s ${SQL_BASE_PATH}/data /tmp/sql/data || break

# Get the list of SQL Databases & copy them

for var in `find /tmp/sql/data/ -type d | sed -e "s/\/tmp\/sql\/data\///"`;
do
## all Tables from database
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.agorumcore.sock01 -t -c "$var" > ${SQL_BACKUP_PATH}/tmp/${var}_data.dmp || {break;break}
## all Table Data from database
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.agorumcore.sock01 -d --opt "$var" > ${SQL_BACKUP_PATH}/tmp/${var}_tables.sql || {break;break}
done
fehlercode=0;break
done

# cleanup
rm -f /tmp/sql/data
rm -Rf /tmp/sql

if [ $fehlercode -eq 0 ]; then
# Tar/gzip data
date=`date -I`

# use weekday
EXPORTDATE=`date +"%A"`

tar czf ${SQL_BACKUP_PATH}/SqlBackup-${EXPORTDATE}.tar.gz -C ${SQL_BACKUP_PATH}/ tmp/ || fehlercode=1
rm -Rf ${SQL_BACKUP_PATH}/tmp
fi

#
# start everything up
#
./roi_mysql stop || fehlercode=1
./roi start || fehlercode=1

exit $fehlercode



Gut wäre es, auch dem Skript roi einen entsprechend generierten Exitcode zu spendieren. Bisher ist der immer 0.

ska
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9078
ska (Benutzer)
Fresh Boarder
Beiträge: 17
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 0  
... erst testen dann posten; die Konstruktion mit doppeltem break funktioniert nicht; hier die geteste verbesserte Version:

Code:


#!/bin/bash

cd "/opt/agorum/agorumcore/scripts"

#
# stop everything
#
./roi stop; echo $?
./roi_mysql start || exit 1

# Create the temporary copy directory
SQL_BACKUP_PATH=/mnt/agorumfiles/backup
SQL_BASE_PATH=/opt/agorum/agorumcore/mysql
SQL_PASSWORD=password
SQL_HOST=localhost

while [ true ]; do
fehlercode=1
mkdir -p ${SQL_BACKUP_PATH}
mkdir -p ${SQL_BACKUP_PATH}/tmp
chmod -R 700 ${SQL_BACKUP_PATH}/tmp

mkdir /tmp/sql || break
ln -s ${SQL_BASE_PATH}/data /tmp/sql/data || break
# Get the list of SQL Databases & copy them

fehlercode=0
for var in `find /tmp/sql/data/ -type d | sed -e "s/\/tmp\/sql\/data\///"`; do
## all Tables from database
[ $fehlercode -eq 0 ] && \
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.agorumcore.sock01 -t -c "$var" > ${SQL_BACKUP_PATH}/tmp/${var}_data.dmp;
fehlercode=$?
## all Table Data from database
[ $fehlercode -eq 0 ] && \
${SQL_BASE_PATH}/bin/mysqldump -uroot -p${SQL_PASSWORD} -h${SQL_HOST} --socket=/tmp/mysql.agorumcore.sock01 -d --opt "$var" > ${SQL_BACKUP_PATH}/tmp/${var}_tables.sql;
fehlercode=$?
done
break
done

# cleanup
rm -f /tmp/sql/data
rm -Rf /tmp/sql

if [ $fehlercode -eq 0 ]; then

# Tar/gzip data
date=`date -I`

# use weekday
EXPORTDATE=`date +"%A"`

tar czf ${SQL_BACKUP_PATH}/SqlBackup-${EXPORTDATE}.tar.gz -C ${SQL_BACKUP_PATH}/ tmp/ || fehlercode=1
[ $fehlercode -eq 0 ] && rm -Rf ${SQL_BACKUP_PATH}/tmp

fi

#
# start everything up
#
./roi_mysql stop || fehlercode=1
./roi start || fehlercode=1

exit $fehlercode



ska
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
#9079
jeanettesuesser (Benutzer)
Moderator
Beiträge: 635
graphgraph
Benutzer offline Hier klicken, um das Profil dieses Benutzers zu sehen
Geschlecht: weiblich Geburtstag: 1981-03-21
Aw: Backup-Größe vor 4 Jahren, 7 Monaten Karma: 11  
Hallo,

vielen Dank für die Info, bin leider noch nicht dazu gekommen Ihre Korrektur einzupflegen nun haben Sie es selbst übernommen

Viele Grüße
Jeanette Süßer
 
Moderator informieren   Gespeichert Gespeichert  
  Kein öffentlicher Schreibzugriff erlaubt, bitte erst registrieren!
Zum Anfang gehen Neues Thema
Powered by FireBoarddie neusten Beiträge direkt auf Ihrem Desktop erhalten