![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 788 Pomógł: 1 Dołączył: 17.09.2004 Ostrzeżenie: (10%) ![]() ![]() |
Witam serdecznie,
Mam do zaktualizowania ok 70.000 rekordów - parę razy dziennie. Mój aktualny skrypt wygląda następująco:
Skrypt pobiera plik poprawnie z 2 serwera jednak wykonywanie jogo trwa ok 30 minut i kończy się komunikatem: Blad w polaczeniu z baza danych [Too many connections] Wie ktoś może dlaczego? Bardzo proszę o pomoc:) |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
Wrzucaj dane do tabeli tymczasowej bezpośrednio z CSV za pomocą LOAD DATA (błyskawiczna operacja). Następnie 1 zapytaniem aktualizuj w tabeli właściwej danymi z tabeli tymczasowej. Zużyjesz mniej pamięci, a i sama aktualizacja danych będzie przebiegała znacznie szybciej.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 788 Pomógł: 1 Dołączył: 17.09.2004 Ostrzeżenie: (10%) ![]() ![]() |
Dziękuję za odpowiedź (IMG:style_emoticons/default/smile.gif) mogę prosić jakiś przykład??(IMG:style_emoticons/default/smile.gif)
|
|
|
![]()
Post
#4
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 788 Pomógł: 1 Dołączył: 17.09.2004 Ostrzeżenie: (10%) ![]() ![]() |
dzięki za odpowiedź (IMG:style_emoticons/default/smile.gif)
Kombinuję zrobić tak jak piszesz, ale zwraca mi to too manyy connections (IMG:style_emoticons/default/sad.gif) UPDATE cms_produkty SET ilosc = CASE ate WHEN 1000 THEN 58 ELSE ilosc END WHERE ate IN ( 1000); próbuję takim poleceniem, jednak nie wyświetla mi błędu - a aktualizacji nie przeprowadza (IMG:style_emoticons/default/sad.gif) Wiesz może dlaczego? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 788 Pomógł: 1 Dołączył: 17.09.2004 Ostrzeżenie: (10%) ![]() ![]() |
nie pomogło, kombinuję z czymś takim:
ale też nie wchodzi (IMG:style_emoticons/default/sad.gif) firma hostingowa mówi że mam za dużo zapytań do bazy danych i stąd problem.... :/ Macie może jakiś pomysł na optymalizację tego??(IMG:style_emoticons/default/sad.gif) Ten post edytował northwest 17.12.2013, 22:26:39 |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 8 068 Pomógł: 1414 Dołączył: 26.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
pokaż dump struktury bazy
|
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 6 072 Pomógł: 861 Dołączył: 10.12.2003 Skąd: Dąbrowa Górnicza ![]() |
ale też nie wchodzi (IMG:style_emoticons/default/sad.gif) firma hostingowa mówi że mam za dużo zapytań do bazy danych i stąd problem.... :/ Macie może jakiś pomysł na optymalizację tego??(IMG:style_emoticons/default/sad.gif) Przecież Ci napisałem: całość zamkniesz w kilku zapytaniach. We wklejonym kodzie nie widzę byś kombinował z LOAD DATA o czym Ci pisałem. Nadal walisz zapytania w pętli to się nie dziw, że Ci się wykrzacza przy dużej liczbie danych. Swoją drogą: "Too many connections" dotyczy przekroczonej liczby połączeń z bazą danych, a nie wykonywanych zapytań. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 21:32 |