PythonQ 240-8XX Manual de usuario Pagina 527

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 768
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 526
506 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
Bei der Reparatur nach Abst¨urzen sucht InnoDB nach einem Checkpoint-Label in den
Log-Dateien. Es weiß, dass alle
¨
Anderungen an der Datenbank vor dem Label bereits im
Platten-Image der Datenbank enthalten sind. InnoDB scannt anschließend die Log-Dateien
ab dem Checkpoint vorw¨arts und wendet die geloggten
¨
Anderungen auf die Datenbank an.
InnoDB schreibt in zirkul¨arer Art in die Log-Dateien. Alle a/jointfilesconvert/293675/bgeschickten (committed)
¨
Anderungen, die dazu f¨uhren, dass sich die Datenbankseiten im Puffer-Pool vom Image
auf der Platte unterscheiden, m¨ussen in den Log-Dateien verf¨ugbar sein, f¨ur den Fall,
dass InnoDB eine Wiederherstellung durchf¨uhren muss. Das heißt, wenn InnoDB anf¨angt,
eine Log-Datei auf zirkul¨are Weise wieder zu benutzen, muss es sicherstellen, dass die
Datenbankseiten-Images auf der Festplatte bereits die
¨
Anderungen enthalten, die in der
Log-Datei mitgeschrieben sind, die InnoDB benutzen wird. Mit anderen Worten muss Inn-
oDB einen Checkpoint machen, was oft das Zur¨uckschreiben auf Platte (flush) ge¨anderter
Datenbankseiten beinhaltet.
Das erkl¨art, warum es Festplatten-Ein- und -Ausgaben sparen kann, wenn man die Log-
Dateien sehr Groß macht. Es kann sinnvoll sein, die Gesamtgr¨oße der Log-Dateien so Groß
wie den Puffer-Pool oder sogar noch gr¨oßer zu machen. Der Nachteil großer Log-Dateien
ist, dass eine Reparatur nach Absturz anger dauern kann, weil mehr Log-Eintr¨age auf die
Datenbank angewendet werden m¨ussen.
8.5.7 Eine InnoDB-Datenbank auf eine andere Maschine
verschieben
InnoDB-Daten- und Log-Dateien sind auf allen Plattformen bin¨arkompatibel, wenn
das Fließkommazahlenformat auf den Maschinen dasselbe ist. Sie onnen eine
InnoDB-Datenbank einfach verschieben, indem Sie alle relevanten Dateien kopieren,
die im vorherigen Abschnitt ¨uber Datensicherung erw¨ahnt wurden. Wenn sich das
Fließkommaformat auf den Maschinen unterscheidet, sie aber keine FLOAT- oder
DOUBLE-Datentypen in Ihren Tabellen benutzt haben, ist die Prozedur dieselbe: Kopieren
Sie einfach die relevanten Dateien. Wenn die Formate unterschiedlich sind und Ihre
Tabellen Fließkomma-Daten enthalten, ussen Sie mysqldump und mysqlimport
benutzen, um diese Tabellen zu verschieben.
Ein Tipp zur Performance: Schalten Sie Auto-Commit aus, wenn Sie Daten in Ihre Daten-
bank importieren (unter der Annahme, dass Ihr Tabellenplatz (Tablespace) genug Platz
f¨ur das große Rollback-Segment enth¨alt, den die große Import-Transaktion erzeugen wird).
Machen Sie das Commit erst nach dem Import einer ganzen Tabelle oder eines Segments
einer Tabelle.
8.5.8 InnoDB-Transaktionsmodell
Im InnoDB-Transaktionsmodell war das Ziel, die besten Eigenschaften einer multi-
versionsf¨ahigen Datenbank mit dem traditionellen Zwei-Phasen-Sperren zu verbinden.
InnoDB f¨uhrt Sperren auf Zeilenebene durch und aßt Anfragen vorgabem¨aßig als nicht
sperrende konsistente Leseoperationen laufen, im Stil von Oracle. Das Tabellensperren
ist in InnoDB so platzsparend gespeichert, dass keine Sperr-Eskalation ben¨otigt wird:
Typischerweise d¨urfen mehrere Benutzer jede Zeile in der Datenbank oder eine beliebige
Teilmenge der Zeilen sperren, ohne dass InnoDB keinen Speicher mehr hat.
Vista de pagina 526
1 2 ... 522 523 524 525 526 527 528 529 530 531 532 ... 767 768

Comentarios a estos manuales

Sin comentarios