Mysql
 sql >> Baza danych >  >> RDS >> Mysql

myisam umieścić blokadę tabeli na stole, nawet gdy mamy do czynienia z zapytaniem „wybierz”?

MyISAM ma różne rodzaje zamków. SELECT operacja powoduje umieszczenie BLOKADA ODCZYTU na stole. W danym momencie może być wiele aktywnych blokad odczytu, o ile nie ma aktywnych BLOKAD ZAPISU . Operacje modyfikujące tabelę, np. INSERT , UPDATE , DELETE lub ALTER TABLE umieść BLOKADĘ ZAPISU na stole. Blokadę zapisu można umieścić w tabeli tylko wtedy, gdy nie ma aktywnych blokad odczytu; Jeśli istnieją aktywne blokady odczytu, MyISAM kolejkuje blokadę zapisu do aktywacji, gdy tylko wszystkie aktywne blokady odczytu wygasną.

Podobnie, gdy istnieje aktywna blokada zapisu, próba umieszczenia blokady odczytu na tabeli spowoduje kolejkowanie blokady (i powiązanego zapytania) do czasu wygaśnięcia blokady zapisu na tabeli.

Ostatecznie to wszystko oznacza, że:

  • Możesz mieć dowolną liczbę aktywnych blokad odczytu (zwanych również blokadami współdzielonymi)
  • Możesz mieć tylko jedną aktywną blokadę zapisu (zwaną również blokadą wyłączną)

Aby uzyskać więcej informacji, zobacz:http://dev.mysql. com/doc/refman/5.5/en/internal-locking.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Zapytanie SQL do wybrania, aż SUMA (liczba_użytkowników) osiągnie 1000

  2. Jak zarządzać MySQL — dla administratorów baz danych Oracle

  3. mysql - tworzenie mechanizmu podobnego do sekwencji Oracle

  4. Składnia bazy danych SQL ALTER – wymienione przez DBMS

  5. Automatyczne łączenie z PDO tylko w razie potrzeby