![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Zastanawiam sie jak przyspieszyc update w mysql. Mam tabele z 8 polami, mam na tej tabeli 10 roznych indexow (mieszanych). Jak wiadomo indexy przyspieszaja wyszukiwanie ale zwalniaja updaty. Wiec z tego powodu mam druga tabele bez indexow i do niej wstawiam updaty a na koniec robie: insert into tabela select * from tabela_tmp - i to przy przenoszeniu 10mil wpisow troche zwalnia... Cos tam niby doszukalem sie takieg: delay_key_writes , wiecie jak tego uzywac? Chodzi mi o to aby na czas przepisywania baz wylaczyc aktualizowanie indexow (jesli jest taka mozliwosc) i wlaczyc je po tej operacji. *ps moze zle mysle , ale nie mam innego pomyslu ps2. tabele myisam -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
A nie prościej zamienić ALTER z indeksami na nowej, zamienić tabele nazwami?
Jakie masz konkretnie zastosowanie? Jaki silnik? -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
silnik myisam.
W sumie to dobry pomysl co podales:) Czyli mowisz: 1. updetowac tabele_tmp 2. po updacie zmienic nazwe table na table_tmp_2 3. zmioenic table_tmp-> table 4. table_tmp_2->table_tmp a pozniej dodac indexy? A jeszcze jakies moze rozwiazanie przyjdzie Ci do glowy? -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Nie, nieco inaczej:
Cytat A jeszcze jakies moze rozwiazanie przyjdzie Ci do glowy? Nie podałeś zastosowania. -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
tabelka jest z ofertami importowanymi z xmli raz na 24h. Import trwa okolo 8h (nie wnikajac w to co robi, po przeanalizowaniu xmli wstawia do tabelki TMP)
-------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]()
Post
#6
|
|
![]() Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów ![]() |
Mam na tapecie podobny problem. Nie lepiej zrobić INSERT INTO ... ON DUPLICATE UPDATE, dodatkowo update'ować czas zmiany; kasowanie nieistniejących wpisów wg czasu.
Update na 100% będzie szybszy niż wymiana wszystkiego i nie będzie wymagało przebudowywania indeksów. [; -------------------- ![]() ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW! |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 744 Pomógł: 118 Dołączył: 14.02.2009 Skąd: poziome Ostrzeżenie: (0%) ![]() ![]() |
Niestety tak nie da rady:) w zasadzie wszystkie dane sie zmieniaja;) pozostaje jakies 10-20% togo co bylo..
ok, dzieki za sugestie i pomoc. pozdrawiam -------------------- śmieszne obrazki
Kryzys: Ser jem spleśniały, wino piję stare i samochód mam bez dachu.. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 10:53 |