![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 22 Pomógł: 0 Dołączył: 2.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Cześć;
Mam bazę danych i mam zapytanie. Jak mogę zoptymalizować te tabele? Gdzie pozakładać indeksy? Szczerze mówiąc wogóle nie rozumiem tego co wyswietla mi php admin a co dotyczy INDEXY. zapytanie trwa 5 minut i nie wiem czemu tak długo.
+----+-------------+--------------+------+------------------------------+---------+---------+-------------+-------+-------------+ | id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra | +----+-------------+--------------+------+------------------------------+---------+---------+-------------+-------+-------------+ | 1 | SIMPLE | service_data | ref | host_id_2,service_id,host_id | host_id | 8 | const,const | 36286 | Using where | +----+-------------+--------------+------+------------------------------+---------+---------+-------------+-------+-------------+ Dzięki z góry za pomoc. |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 405 Pomógł: 6 Dołączył: 12.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Indexy przyspieszają wyszukiwanie i odczytywanie danych, natomiast wydłużają wstawianie, modyfikowanie i usuwanie danych. Powinny być zakładane na kolumnach primary key (nie musisz zakładać, bo są zakładane automatycznie), na kolumnach foreign key oraz kolumnach, które są często wyszukiwane, ale rzadko modyfikowane.
Przy dużej liczbie rekordów i łączeniu kilku tabel zapytanie może trwać kilka godzin. Ten post edytował nieraczek 21.05.2009, 07:06:14 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
1. dostosuj typy danych w kolumnach, np jesli w ktorejs kolumnie uzywasz liczb z przedzialu 0-255 to tinyint, 0-65tys.. to smalint itp. do 16mln mediumint....
2. dodaj index laczony dwie lub wiecej kolumn np host_id, service_id. 3. w zapytaniach podawaj liczby bez "" czyli host_id = "24" na host_id = 24 ogolnie to pobaw sie kombinacja indexow z pkt 2 * oczywiscie to tylko sugestia nie poparta doswiadczeniem:) -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 20.08.2025 - 09:22 |