Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zawieszanie bazy na "waiting for table metadata lock"
damian.1923
post
Post #1





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


Witam,

po zmigrowaniu bazy na nowy serwer, MySQL regularnie zawiesza się,
na liście aktywnych procesów zawsze wtedy widać jak wiszą jakieś zapytania (wyglądają na zwyczajne)
na statusie waiting for table metadata lock

dlaczego tak się dzieje? pomaga jedynie restart serwera mysql, ale to nie jest rozwiązanie...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
Pyton_000
post
Post #2





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


http://stackoverflow.com/questions/1314863...metadata-lock-s
Go to the top of the page
+Quote Post
kartin
post
Post #3





Grupa: Zarejestrowani
Postów: 246
Pomógł: 79
Dołączył: 25.05.2010

Ostrzeżenie: (0%)
-----


Pewnie rozwiązaniem będzie poprawienie aplikacji, aby nie wysypywała się pomiędzy rozpoczęciem transakcji a jej zatwierdzeniem lub wycofaniem.
Go to the top of the page
+Quote Post
damian.1923
post
Post #4





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


@Pyton_000, dziękuję, ale z tego linku nic nie zrozumiałem, czy możecie jaśniej? dodam że nie korzystam z transakcji i mam tylko tabele na MyISAM, na poprzednim serwerze ze starszym MYSQL-em nie było nigdy żadnych problemów.
Go to the top of the page
+Quote Post
DarkAbso
post
Post #5





Grupa: Zarejestrowani
Postów: 60
Pomógł: 10
Dołączył: 17.11.2011

Ostrzeżenie: (0%)
-----


@Pyton_000 dał linka z zapytaniami, które pokażą gdzie są trzymane transakcje w danym momencie. Czyli jak pojawi się Tobie wyżej napisany błąd to puszczasz takie zapytanie na bazie i wiesz co jest trzymane w transakcji i możesz dalej sensownie debugować aplikację.
Go to the top of the page
+Quote Post
damian.1923
post
Post #6





Grupa: Zarejestrowani
Postów: 29
Pomógł: 0
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


polecenie SHOW PROCESSLIST pokazuje mi wtedy wiszące zapytania, ale one tylko czekają (waiting for table metadata lock), tzn. chyba nie one spowodowały nałożenie blokady,
z dokumentacji właściwie niewiele rozumiem:
http://dev.mysql.com/doc/refman/5.5/en/metadata-locking.html

czy INNODB STATUS powie o blokadach nakładanych na tabele MYISAM?
na INNODB funkcjonuje u mnie tylko kilka tabel i one są zupelnie nieznaczące.
Go to the top of the page
+Quote Post
Pyton_000
post
Post #7





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Zamiast gdybać i zadawać pytania sprawdź. Zajmie Ci to mniej czasu niż czekanie na odpowiedź stylu "A sprawdziłeś to w końcu?(IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 27.09.2025 - 12:36