2016-05-04 3 views

Antwort

0

Separate Verbindungen erhalten separate Threads. Eine einzelne Verbindung verwendet nicht mehrere Threads. (MyISAM und InnoDB)

Wenn zwei separate Verbindungen (Threads) versuchen, zur gleichen Zeit auf dieselbe Tabelle zuzugreifen, kommt es zu einer Art Sperrung.

SELECT erwirbt eine Lesesperre, die Schreibvorgänge verhindert, aber keine anderen Lesevorgänge. (MyISAM)

INSERT und andere Schreibvorgänge erhalten eine Schreibsperre, wodurch verhindert wird, dass irgendetwas (Schreiben oder Lesen) mit der Tabelle arbeitet. (MyISAM)

Wenn eine Verbindung blockiert ist, wartet sie und wird schließlich ausgeführt. (MyISAM)

InnoDB, mit seiner Sperre auf Zeilenebene (und keine Sperre auf Tabellenebene) ermöglicht mehr Gleichzeitigkeit, hat aber andere Komplexitäten.

Ohne einen guten Grund sollte jeder von MyISAM zu InnoDB wechseln.