Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 17789|Odpověď: 0

[Zdroj] Čekací doba na záchvěvačku překročena; Zkuste restartovat transakci

[Kopírovat odkaz]
Zveřejněno 13.03.2019 13:08:36 | | | |
Čekací doba na záchvěvačku překročena; Pokus o restartování transakce je timeout čekání na zámek. To je způsobeno tím, že aktuální transakce čeká na uvolnění zámku ostatních transakcí.



Řešení:

Spuskutěte následující příkaz v dotazu mysql

Ve skutečnosti můžeme použít následující tři tabulky k zjištění důvodů:

innodb_trx ## Všechny transakce, které právě probíhají
innodb_locks ## Současný zámek
innodb_lock_waits ## Korespondence čekání zámku

Výsledky jsou následující:



Zjistěte číslo vlákna mysql_thread_id u několika dalších vláken s jinými parametry

Vykonejte příkaz kill + thread number pro vyřešení problému.

desc information_schema.innodb_locks;

Pole
Typ
Null
KlíčVýchozíPoznámka
lock_id
Varchar(81)
NE
Identifikace zámku
lock_trx_id
Varchar(18)
NE
ID transakce, které vlastní zámek
lock_mode
varchar(32)
NE
Režim zámku
lock_type
varchar(32)
NE
Typ zámku
lock_table
Varchar (1024)
NE
Zamčený stůl
lock_index
Varchar (1024)
ANO
NULLUzamčené indexy
lock_space
bigint(21) nepodepsané
ANO
NULLUzamčené číslo v tabulce
lock_page
bigint(21) nepodepsané
ANO
NULLUzamčené číslo stránky
lock_rec
bigint(21) nepodepsané
ANO
NULLRekordní číslo zámku
lock_data
Varchar(8192)
ANO
NULLUzamčená data


desc information_schema.innodb_lock_waits

Pole
Typ
Null
KlíčVýchozíPoznámka
requesting_trx_id
Varchar(18)
NE
ID transakce zámoku požadavku
requested_lock_id
Varchar(81)
NE
ID zámku požadavku
blocking_trx_id
Varchar(18)
NE
ID transakce, které aktuálně vlastní zámek
blocking_lock_id
Varchar(81)
NE
ID zámku zámku, který zámek aktuálně vlastní


desc information_schema.innodb_trx ;

Pole
Typ
Null
KlíčVýchozíExtraPoznámka
trx_id
Varchar(18)
NE
ID transakce
trx_state
Varchar(13)
NE
Stav transakce:
trx_started
Datetime
NE
0000-00-00 00:00:00čas zahájení transakce;
trx_requested_lock_id
Varchar(81)
ANO
NULLinnodb_locks.lock_id
trx_wait_started
Datetime
ANO
NULLČas, kdy transakce začíná čekat
trx_weight
bigint(21) nepodepsané
NE
0#
trx_mysql_thread_id
bigint(21) nepodepsané
NE
0ID transakčního vlákna
trx_query
Varchar (1024)
ANO
NULLSpecifické SQL příkazy
trx_operation_state
varchar(64)
ANO
NULLAktuální provozní stav transakce
trx_tables_in_use
bigint(21) nepodepsané
NE
0Kolik tabulek se používá v transakci
trx_tables_locked
bigint(21) nepodepsané
NE
0Kolik zámků má transakce
trx_lock_structs
bigint(21) nepodepsané
NE
0#
trx_lock_memory_bytes
bigint(21) nepodepsané
NE
0Velikost transakční uzamčené paměťi (B)
trx_rows_locked
bigint(21) nepodepsané
NE
0Počet řádků uzamčených transakcí
trx_rows_modified
bigint(21) nepodepsané
NE
0Počet řádků, pro které byla transakce změněna
trx_concurrency_tickets
bigint(21) nepodepsané
NE
0Počet transakcí a faktur
trx_isolation_level
Varchar(16)
NE
Úroveň izolace transakce
trx_unique_checks
int(1)
NE
0Zda je to unikátní kontrola
trx_foreign_key_checks
int(1)
NE
0Zda kontroly cizího klíče
trx_last_foreign_key_error
Varchar(256)
ANO
NULLChyba cizího klíče na konci
trx_adaptive_hash_latched
int(1)
NE
0#
trx_adaptive_hash_timeout
bigint(21) nepodepsané
NE
0#




Předchozí:MySQL delete data delete not in provádí velmi pomalé optimalizace
Další:javaEE video materiál z října 2018
Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com