![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cześć,
Spotkała mnie dziwna rzecz: ostrzeżenie o mysql slow queries, dotyczący tabelki, w której tego problemu bym się raczej nie spodziewał. Serwis ma parę tabel, w tym także parę takich z kilkunastoma tysiącami rekordów. W tych tabelach używałem między innymi typu varchar, przy czym dawałem index na te pola. Z tymi tabelami nie było problemów, problem był z inną, "variables", struktura wyglądała tak: id, name (varchar), str (varchar), number (int) Tabelka służyła do przechowywania różnych globalnych zmiennych, był np. rekord "global_hits" do przetrzymywania ogólnej liczby hits na całym serwisie, a problematyczna linijka wyglądała tak:
Jak widać robię " WHERE name='global_hits' " przy czym zapomniałem dać indeks na pole "name". I to by być może tłumaczyło problem ze slow queries, gdyby nie to, że w tej tabeli łącznie były... 2 (słownie dwa) rekordy, w tym właśnie jeden gdzie name = 'global_hits'. No i tu pytanie: czy właśnie ów brak indeksu na tym polu "name" mógł spowodować "slow queries", jeśli w tabelce były łącznie dwa rekordy? Nie mogę tego sprawdzić empirycznie, bo serwis został chwilowo wyłączony przez firmę hostingową, a pytam, bo być może ten problem jeszcze gdzieś tam w kodzie występuje. |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 255 Pomógł: 23 Dołączył: 1.12.2003 Ostrzeżenie: (10%) ![]() ![]() |
Masz log z mysql slow queries?
Może to również świadczyć o chwilowej zadyszce serwera, wtedy nawet proste zapytania tam trafiają. -------------------- Tani hosting - Hekko.pl | PHP 5.2/5.3/5.4/5.5/5.6 | MySQL 5.5 |
Hosting już od 49 zł rocznie! Domena pl do każdego pakietu! |
|
|
![]()
Post
#3
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Taka mała tabela nie powinna nawet zaszumieć, a co dopiero wisieć ponad sekundę (taki jest zazwyczaj limit dolny czasu od jakiego łapiesz się na slow queries). Ewidentnie wina firmy hostingowej i problem z bazą na serwerze. Niech zgadnę... home lub az?
![]() ![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
@Hekko No zadyszka serwera chyba by dała błędy/problemy dot. tych większych tabel? Szczególnie, że wysłali mi wiele ostrzeżeń na maila, każdy dotyczący tej samej tabeli. No ale, że byłem na urlopie to jakoś tak nie odebrałem.
Logów niestety nie mam. @thek Nie, żadna z polskich firm. Strona siedziała na hamerykańskim darmowym hostingu www.000webhost.com , dopiero miałem zamiar w końcu wymyślić domenę dla niej i przenieść na mój płatny hosting. Teraz z backupów starych na 2 miesiące będę musiał kopiować ![]() Ale skoro takie cyrki się dzieją na paru serwerach to może to jakiś problem z mysql? Może po prostu warto dawać indeks na wszystkie możliwe pola nawet jak tabela ma mieć < kilkadziesiąt rekordów? Ten post edytował konrados 7.02.2011, 12:07:11 |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 255 Pomógł: 23 Dołączył: 1.12.2003 Ostrzeżenie: (10%) ![]() ![]() |
Różnie to bywa, może wycięli pierwsze z brzegu. Ewidentnie to może być problem z samym serwerem, szczególnie, że to darmówka. Znaleźli pseudo-powód aby Cię wywalić.
Ten post edytował Hekko 7.02.2011, 12:47:14 -------------------- Tani hosting - Hekko.pl | PHP 5.2/5.3/5.4/5.5/5.6 | MySQL 5.5 |
Hosting już od 49 zł rocznie! Domena pl do każdego pakietu! |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 623 Pomógł: 79 Dołączył: 16.01.2008 Ostrzeżenie: (0%) ![]() ![]() |
Ok, dzięki wam.
Chyba jednak poprawię to zanim wrzucę na inny serwer ![]() |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 17.06.2025 - 12:32 |