Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Długi czas "sending data" na jednym serwerze i krótki na drugim
TomASS
post
Post #1





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Mam dwa serwery - "serwer A" oraz "serwer B"

z serwera A skopiowałem na B tabele potrzebne do zapytania:
  1. SELECT * FROM m_transporty_miejsca AS TM LEFT JOIN m_transporty AS T ON (T.ID=TM.ID_transport)


oczywiście indeks na TM.ID_transport jest
m_transporty_miejsca = 800.000 rekordów
m_transporty = 300.000 rekordów

na serwerze A zapytanie wykonuje się 80-90 sekund (całość to "sending data")
a na serwerze B zapytanie wykonuje się 0.01 sekundy

czym to może być spowodowane?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 12)
Pyton_000
post
Post #2





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

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


na obu przeyłasz po localhost ?
Go to the top of the page
+Quote Post
TomASS
post
Post #3





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


tak - na obu przez PMA skonfigurowanym na localhost
Go to the top of the page
+Quote Post
Pyton_000
post
Post #4





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

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


A próbowałeś odpalić optymalizację na A?
Go to the top of the page
+Quote Post
TomASS
post
Post #5





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Tak - zarówno optymalizację, defragmentację i założenie indeksów na nowo (IMG:style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
markuz
post
Post #6





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


Próbowałeś szukać w Google pod hasłem - "mysql sending data slow"?
Dużo osób mialo taki problem.

Go to the top of the page
+Quote Post
TomASS
post
Post #7





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Jasne, że szukałem.
Nic konkretnego nie znalazłem (poza indeksami)

Np.

Cytat
An explain-plan is usually the best place to start whenever you have a slow query. To get one, run

DESCRIBE SELECT source_id FROM directions WHERE (destination_id = 10);

This will show you a table listing the steps required to execute your query. If you see a large value in the 'rows' column and NULL in the 'key' column, that indicates that your query having to scan a large number of rows to determine which ones to return.

In that case, adding an index on destination_id should dramatically speed your query, at some cost to insert and delete speed (since the index will also need to be updated).



ale indeks mam
Go to the top of the page
+Quote Post
viking
post
Post #8





Grupa: Zarejestrowani
Postów: 6 381
Pomógł: 1116
Dołączył: 30.08.2006

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


We FROM zrób FORCE INDEX. Obie tabele mają założony?

Ten post edytował viking 20.11.2017, 14:27:01
Go to the top of the page
+Quote Post
markuz
post
Post #9





Grupa: Zarejestrowani
Postów: 1 240
Pomógł: 278
Dołączył: 11.03.2008

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


A jakie masz dyski? Na 1 i na 2 serwerze?
Go to the top of the page
+Quote Post
TomASS
post
Post #10





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


FORCE INDEX zrobiłem wcześniej - nic.
Dodatkowo EXPLAIN mówi, że korzysta z indeksu ID_transport

Dyski na obydwu są SSD.

Zrobiłem tak:
1. utworzyłem nowe tabele (zamiast Inno to MyISAM - nie wiem dlaczego były Inno)
2. przekopiowałem dane
3. zrobiłem ANALISE
4. zrobiłem OPTYMALIZE

i jest zdecydowanie szybciej (IMG:style_emoticons/default/smile.gif)
Dziękuję za pomoc (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Pyton_000
post
Post #11





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

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


A wiesz jakie konsekwencje to za sobą poniosło?
Go to the top of the page
+Quote Post
sabat24
post
Post #12





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Cytat
utworzyłem nowe tabele (zamiast Inno to MyISAM - nie wiem dlaczego były Inno)

A jakbyś teraz zmienił w tej samej bazie z powrotem z MyISAM na Inno to nadal masz te długie czasy?

Trick polegający na zmianie silnika z Inno na MyISAM i z powrotem powoduje pewną optymalizację i czyszczenie pustych dziur.
Go to the top of the page
+Quote Post
TomASS
post
Post #13





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Cytat(Pyton_000 @ 21.11.2017, 09:24:43 ) *
A wiesz jakie konsekwencje to za sobą poniosło?


tak - liczę się z tym (np. brak transakcji).
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: 14.09.2025 - 20:41