Diese Website existiert nur weil wir Werbung mit AdSense ausliefern.
Bitte den AdBlocker daher auf dieser Website ausschalten! Danke.

Bräuchte bitte Profi Meinung zu Backupscript:

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Antworten
Benutzeravatar
revealed
Guru
Guru
Beiträge: 3016
Registriert: 15. Sep 2006, 12:50

Bräuchte bitte Profi Meinung zu Backupscript:

Beitrag von revealed » 9. Jan 2008, 22:08

Hallo ich hab kürzlich weil ich gefragt worden bin gedacht ich bastel einen Script für die MySQL.

Dabei ist was rausgekommen, meine ich. Aber ich weiss nicht ob das in dieser Art sinnvoll ist.

Im Vorraus meine Datenbank ist sehr klein. Also der ganzen MySQL Inhalt besteht vielleicht aus einer kleinen unkonfigurierten Joomla.

Ich würde also gern eine fachliche Meinung zu diesem Script haben, wenn jemand so nett währe:

Code: Alles auswählen

#!/bin/sh
##
# Dieser Script soll die MySQL Prüfen und Ergebnisse berichten.
# Außerdem soll er MyISAMchk ausführen und gefundenes gleich reparieren.
#
# Im Anschlusß soll ein Dump der Datenbank im Backupziel abgelegt werden!
# Bitte beachten, dass am Ende des File der Backuppart mit je Einer Zeile
# für jedes Schema angelegt werden muss und dass der Benutzername der
# verwendet wird mit entsprechender Berechtigung ausgestattet sein muss!
#
## Variablen:
#
# Username und Passwort für die Datenbanken
password=" ";
username=" ";
# Verzeichnis welches die Datenbanken beinhaltet:
mysqlverzeichnis="/var/lib/mysql" # /*/*.MYI;
# Backup (DUMP) Zielverzeichnis
DUMPDIR="/windows/E/cron_backup/MySQL/dump";
# location of MySQL BINARY:
MYSQLBIN="/usr/bin/";

## Zunächst MyISAMchk n Repair:
echo "# MySQL check N repair!! ::

# diese Befehlsabfolge soll der täglichen Wartung und Prüfung der MySQL Datenbanken
# mittels myisamchk sowei mysqlcheck dienen... es führt außerdem eine Optimierung der
# Datenbank durch! Falls die Ausgabe fehler aufweisen sollte müsste bitte die Ausgabe 
# sicherheitshalber geprüft werden.
"
myisamchk --silent --force --fast --update-state --key_buffer_size=64M --sort_buffer_size=64M --read_buffer_size=1M --write_buffer_size=1M $mysqlverzeichnis/*/*.MYI
echo "# myisam ChekNrepair abgeschlossen!         [OK]
"

### Zur MySQL
## Analyse: (chk)
echo "# Starte Analyse der MySQL ...              [OK]
"
mysqlcheck --silent --analyze --all-databases -u $username --password=$password
## Automatische Optimierung: (chk)
echo "# Optimiere MySQL Datenbanken! ...          [OK]
"
mysqlcheck --silent -o --all-databases -u $username --password=$password
## Automatische Reparatur:
echo "# starte Automatische Reparatur ...         [OK]
"
mysqlcheck --silent --auto-repair --all-databases -u $username --password=$password
## DUMP -- (Backupteil)
#
# MySQL Backup Script
#
# dumps spezified Databases 
# and truncates binary logs
# to spezified folder:
#
# Achtung nur die hier angegebenen Datenbanschemata werden gedumpt...
if test -x $MYSQLBIN/mysqldump
 then
 echo "Dumping Database mysql...                 [done]"
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt mysql > $DUMPDIR/mysql

 echo "Dumping Database information_schema...    [done]"
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt information_schema > $DUMPDIR/information_schema

 echo "Dumping Database joomla...                [done]"
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt joomla > $DUMPDIR/joomla

  else
    echo "Backup failed"
fi

echo "
Alle Vorgänge abgeschlossen!                [OK]"

## Vorgänge abgeschlossen!
## /EOF
Vielen Dank im Vorraus und Grüße,

R
|Nb: T60 2008 43G @oS Leap 42.1 | Pc: @oS TW Core i5 4670k; 8 GB RAM; MSI Z87 G43 Gaming | MSI TF 770 GTX | 840 EVO; SX900 |The reason computer chips are so small is computers don't eat much. | systemd | Mini Tuning guide für openSUSE 13.2 |

Werbung:
Dr. Glastonbury
Advanced Hacker
Advanced Hacker
Beiträge: 1149
Registriert: 20. Aug 2004, 12:27
Wohnort: München
Kontaktdaten:

Beitrag von Dr. Glastonbury » 12. Jan 2008, 00:09

Sorry, leider keine Antwort von mir,
aber ich glaube ich verschiebe das mal ins Datenbank-Forum, da sind doch hoffentlich eher die Profis für sowas ;)
Das Leben: hasse oder ignoriere es, lieben kannst du es nicht.

Benutzeravatar
revealed
Guru
Guru
Beiträge: 3016
Registriert: 15. Sep 2006, 12:50

Beitrag von revealed » 12. Jan 2008, 00:57

Danke!

ich verpeil das ab und an zur Zeit, wohin sowas gehört. Irgendwie hängt das ja voll zusammen, MySQL und Webserver...

Gruß

R
|Nb: T60 2008 43G @oS Leap 42.1 | Pc: @oS TW Core i5 4670k; 8 GB RAM; MSI Z87 G43 Gaming | MSI TF 770 GTX | 840 EVO; SX900 |The reason computer chips are so small is computers don't eat much. | systemd | Mini Tuning guide für openSUSE 13.2 |

Benutzeravatar
revealed
Guru
Guru
Beiträge: 3016
Registriert: 15. Sep 2006, 12:50

Beitrag von revealed » 14. Feb 2008, 22:16

Hmm ich poste mal einfach eine neuere Version:

Code: Alles auswählen

#!/bin/sh
##
# Dieser Script soll die MySQL Prüfen und Ergebnisse berichten.
# Außerdem soll er MyISAMchk ausführen und gefundenes gleich reparieren.
#
# Im Anschlusß soll ein Dump der Datenbank im Backupziel abgelegt werden!
# Bitte beachten, dass am Ende des File der Backuppart mit je Einer Zeile
# für jedes Schema angelegt werden muss und dass der Benutzername der
# verwendet wird mit entsprechender Berechtigung ausgestattet sein muss!
#
## Variablen:
#
# Username und Passwort für die Datenbanken
password=" ";
username=" ";
# Verzeichnis welches die Datenbanken beinhaltet:
mysqlverzeichnis="/var/lib/mysql" # /*/*.MYI;
# Backupziel:
TARGET="/windows/E/cron_backup/MySQL/MySQL_dump.tar"
# Temporäres Backup (DUMP) Zielverzeichnis
DUMPDIR="/tmp/dump";
# location of MySQL BINARY:
MYSQLBIN="/usr/bin/";

## Zunächst MyISAMchk n Repair:
echo "##
# MySQL check N repair!! ::
#
# diese Befehlsabfolge soll der Wartung, Pflege und Reparatur der MySQL
# Datenbanken mittels myisamchk sowie mysqlcheck dienen. Es startet 
# weiter eine Optimierung der Datenbank! Falls die Ausgabe Fehler aufweisen
# sollte, muss die Ausgabe bitte sicherheitshalber manuell ggf. repariert werden.
##
"
echo -n "MyISAM ChekNrepair ..."
myisamchk --silent --force --fast --update-state --key_buffer_size=64M --sort_buffer_size=64M --read_buffer_size=1M --write_buffer_size=1M $mysqlverzeichnis/*/*.MYI
echo "        			[done]"
### Zur MySQL
## Analyse: (chk)
echo -n "Starte Analyse der MySQL ... "
mysqlcheck --silent --analyze --all-databases -u $username --password=$password
echo  "        		[done]"
## Automatische Optimierung: (chk)
echo -n "Optimierung der MySQL!     ..."
mysqlcheck --silent -o --all-databases -u $username --password=$password
echo  "        		[done]"
## Automatische Reparatur:
echo -n "Automatische Reparatur      ..."
mysqlcheck --silent --auto-repair --all-databases -u $username --password=$password
echo "        		[done]"
## DUMP -- (Backupteil)
#
# MySQL Backup Script
#
# dumps spezified Databases 
# and truncates binary logs
# to spezified folder:
#
# Achtung nur die hier angegebenen Datenbankschemata werden gedumpt...
echo "
##
# Achtung! nur die hier angegebenen Datenbankschemata werden gedumpt!..
##
"
# Temporäres Verzeichnis erstellen:
cd /
mkdir $DUMPDIR

if test -x $MYSQLBIN/mysqldump
 then
 echo -n "Dumping Database mysql..."
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt mysql > $DUMPDIR/mysql
 echo "                    	[done]"
 echo -n "Dumping Database information_schema..."
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt information_schema > $DUMPDIR/information_schema
 echo "     	[done]"
 echo -n "Dumping Database joomla..."
 $MYSQLBIN/mysqldump -u $username --password=$password --flush-logs --opt joomla > $DUMPDIR/joomla
 echo "                     	[done]"
  else
    echo "Backup failed"
fi

echo "
##
# Sichern im Zielpfad:
##
"

# Verpacken der dump und verschieben and den zielspeicherort:
tar -cf $TARGET $DUMPDIR
#"/windows/E/cron_backup/MySQL/dump"
echo "
##
# Cleanup:
##
"
cd /
rm -rf $DUMPDIR --verbose

echo "
##
#Alle Vorgaenge erfolgreich abgeschlossen!	[OK!]
##

##
# Falls hier Fehler gelistet wurden, bitte Eingreifen!!!
##
"

## Vorgänge abgeschlossen!
## /EOF
Ausgabe:
wild-thing:/var/lib/mysql # sh MySQLcheckNrepair.sh

Code: Alles auswählen

##
# MySQL check N repair!! ::
#
# diese Befehlsabfolge soll der Wartung, Pflege und Reparatur der MySQL
# Datenbanken mittels myisamchk sowie mysqlcheck dienen. Es startet
# weiter eine Optimierung der Datenbank! Falls die Ausgabe Fehler aufweisen
# sollte, muss die Ausgabe bitte sicherheitshalber manuell ggf. repariert werden.
##

MyISAM ChekNrepair ...                          [done]
Starte Analyse der MySQL ...                    [done]
Optimierung der MySQL!     ...                  [done]
Automatische Reparatur      ...                 [done]

##
# Achtung! nur die hier angegebenen Datenbankschemata werden gedumpt!..
##

Dumping Database mysql...                       [done]
Dumping Database information_schema...          [done]
Dumping Database joomla...                      [done]

##
# Sichern im Zielpfad:
##

tar: Entferne führende „/“ von Elementnamen

##
# Cleanup:
##

„/tmp/dump/information_schema“ entfernt
„/tmp/dump/mysql“ entfernt
„/tmp/dump/joomla“ entfernt
Verzeichnis wurde entfernt: „/tmp/dump“

##
#Alle Vorgaenge erfolgreich abgeschlossen!      [OK!]
##

##
# Falls hier Fehler gelistet wurden, bitte Eingreifen!!!
##


Gruß

R
|Nb: T60 2008 43G @oS Leap 42.1 | Pc: @oS TW Core i5 4670k; 8 GB RAM; MSI Z87 G43 Gaming | MSI TF 770 GTX | 840 EVO; SX900 |The reason computer chips are so small is computers don't eat much. | systemd | Mini Tuning guide für openSUSE 13.2 |

Antworten