PythonQ 240-8XX Manual de usuario Pagina 466

  • Descarga
  • Añadir a mis manuales
  • Imprimir
  • Pagina
    / 768
  • Tabla de contenidos
  • MARCADORES
  • Valorado. / 5. Basado en revisión del cliente
Vista de pagina 465
Kapitel 7: MySQL-Sprachreferenz 445
Wenn mehr als delayed_queue_size Zeilen bereits in einer bestimmten Handler-
Warteschlange anh¨angig sind, wartet der Thread, der nach INSERT DELAYED anfragt,
bis es wieder Platz in der Warteschlange gibt. Damit wird sichergestellt, dass der
mysqld-Server nicht den gesamten Arbeitsspeicher f¨ur die DELAYED-Warteschlange
verbraucht.
Der Handler-Thread zeigt sich in der MySQL-Prozessliste mit delayed_insert in der
Command-Spalte. Er wird gekillt, wenn Sie einen FLUSH TABLES-Befehl ausf¨uhren oder
ihn mit KILL Thread_id killen. Er wird jedoch zuerst alle Zeilen in der Warteschlange
in die Tabelle schreiben, bevor er sich beendet. ahrend dieser Zeit akzeptiert er keine
neuen INSERT-Befehle von anderen Threads mehr. Wenn Sie danach einen INSERT
DELAYED-Befehl ausf¨uhren, wird ein neuer Handler-Thread erzeugt.
Beachten Sie, dass oben Gesagtes bedeutet, dass INSERT DELAYED-Befehle ohere
Priorit¨at haben als normale INSERT-Befehle, wenn es einen INSERT DELAYED-Handler
gibt, der bereits auft! Andere Aktualisierungsbefehle m¨ussen warten, bis die
INSERT DELAYED-Warteschlange leer ist, jemand den Handler-Thread killt (mit KILL
Thread_id) oder jemand FLUSH TABLES ausf¨uhrt.
Die folgenden Status-Variablen stellen Informationen ¨uber INSERT DELAYED-Befehle
bereits:
Variable Bedeutung
Delayed_insert_thread Nummer des Handler-Threads
Delayed_writes Anzahl der Zeilen, die mit INSERT DELAYED geschrieben
wurden
Not_flushed_delayed_rows Anzahl der Zeilen, die darauf warten, geschrieben zu
werden
Sie onnen diese Variablen betrachten, wenn Sie ein SHOW STATUS-Statement oder einen
mysqladmin extended-status-Befehl ausf¨uhren.
Beachten Sie, dass INSERT DELAYED langsamer ist als ein normales INSERT, wenn die
Tabelle nicht in Benutzung ist. Ausserdem gibt es einen zus¨atzlichen Overhead f¨ur den
Server, um einen separaten Thread f¨ur jede Tabelle zu handhaben, ur die Sie INSERT
DELAYED benutzen. Das heißt, Sie sollten INSERT DELAYED nur benutzen, wenn Sie es wirk-
lich ben¨otigen!
7.4.5 UPDATE-Syntax
UPDATE [LOW_PRIORITY] [IGNORE] tabelle
SET spalten_name1=ausdruck1, [spalten_name2=ausdruck2, ...]
[WHERE where_definition]
[LIMIT #]
UPDATE aktualisiert Spalten in bestehenden Tabellenzeilen mit neuen Werten. Die SET-
Klausel gibt an, welche Spalten ge¨andert werden sollen und welche Werte ihnen zugewiesen
werden. Die WHERE-Klausel legt - falls angegeben - fest, welche Zeilen aktualisiert werden
sollen. Ansonsten werden alle Zeile aktualisiert. Wenn die ORDER BY-Klausel angegeben ist,
werden die Zeilen in der angegebenen Reihenfolge aktualisiert.
Wenn Sie das Schl¨usselwort LOW_PRIORITY angeb en, wird die Ausf¨uhrung von UPDATE
verz¨ogert, bis keine anderen Clients mehr aus der Tabelle lesen.
Vista de pagina 465
1 2 ... 461 462 463 464 465 466 467 468 469 470 471 ... 767 768

Comentarios a estos manuales

Sin comentarios