phpbar.de logo

Mailinglisten-Archive

AW: Sicherungen

AW: Sicherungen

Thomas Lamy mysql-de_(at)_lists.bttr.org
Fri, 22 Mar 2002 19:40:17 +0100


Hallo,

kommt drauf an wie kritisch die Daten sind.

Unwichtig: Offline-Sicherung mittels tar oder zip
mysqld stoppen, Datenverzeichnis(se) (unter Unix meist
/var/lib/mysql/<dbname>) mit Tar, Zip, oder einem anderen
Archivierungprogramm sichern, mysqld starten.
Reicht oft aus.
Vorteil:
Geht sehr schnell, vor allem bei kleinen DBs oder wenn man z.B. das zu
sichernde Verzeichnis wegkopiert, den Server startet, und dann die Kopie
sichert. Die Datendateien sind auch konsistent (alle Caches werden ja beim
Beenden des Servers geschrieben). Die Integrität der Daten kann durch kluges
Auswählen des Sicherungszeitpunktes sichergestellt werden (keine laufenden
Multi-Query-Operationen)
Sehr schnelle Wiederherstellung
Nachteil: 
Ausfall des Dienstes für die Dauer der Sicherung (mit evtl. Fehlermeldungen
für Clients, die sich verbinden wollen)
Daten nur von MySQL lesbar.


Normal: Online-Sicherung mittels mysqldump
mysqldump -u<user> -p<password> [-h <host>] --opt dbname > sicherung.sql
--opt sorgt hier unter anderem für extended inserts und Abschalten von
Indexen bei der Wiederherstellung, was erhebliche Geschwindigkeitsvorteile
bringt. Ausserdem wirden alle Tabellen wärend der Sicherung gelockt, so dass
die Sicherung ein echter "snapshot" der Datenbank wird. Das kann allerdings
dazu führen, dass grössere Datenbanken (mehr als ein paar MB) für mehrere
Minuten keine Anfragen entgegen nehmen. Dafür dauert's halt auch ein
bisschen länger (SQL Code Erzeugung,...)

Vorteile:
- Es treten aber keine Verbindungsfehler auf, wie dies oben der Fall ist. 
- Die erzeugten Daten sind Text, also nicht nur von Mysql lesbar
Nachteil: Es dauert ein bisschen länger als obige Methode (SQL Code
Erzeugung, mehr I/O)


Kritisch: Zusätzlich Sicherung auf einen Slave
Replizierung einrichten und auf einen (möglicherweise ganz woanders
stehenden) Slave-Server online übertragen. Dieser kann dann mit einer der
anderen Methoden gesichert werden: die Replizierung setzt nach dem Neustart
bzw. Ende der Sicherung  automatisch auf.
Vorteile:
- ständig laufende Sicherung
- bei Bedarf können ohne Betriebsunterbrechung (offline oder lock) mehrere
Snapshots gezogen werden

Nachteile:
- extra Server
- möglicherweise höhere Traffic-Kosten (mehr Traffic als gezippte Archive)
- höherer Administrationsaufwand (sowohl Installation als auch Wartung)


Das dürfte die Möglichkeiten erschöpfend erklärt haben :-)

   Thomas

> -----Ursprüngliche Nachricht-----
> Von: Klaus Zahradnik [mailto:kwz_(at)_go-public.com]
> Gesendet: Freitag, 22. März 2002 09:05
> An: mysql-de_(at)_lists.4t2.com
> Betreff: Sicherungen
> 
> 
> Guten Tag!
> Ich wollte mal wissen, wie man denn seine MySQL Datenbanken am besten 
> sichert und im Schadenfall wiederherstellt.
> beste Grüse
> Klaus Zahradnik
> 
> ---
> Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
> -->>  http://www.4t2.com/mysql 
> 

---
Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter
-->>  http://www.4t2.com/mysql 



php::bar PHP Wiki   -   Listenarchive