![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 46 Pomógł: 0 Dołączył: 1.08.2007 Ostrzeżenie: (0%) ![]() ![]() |
Witam.
Otrzymałem 130MB plik .csv z zadaniem zaimportowania go do bazy MYSQL. Problem w tym, że funkcje file, oraz file_get_contents odczytują cały plik co wywołuje zwrócenie błędu o przekroczeniu pamięci. Ustawienie w php.ini memory_limit na wartość graniczną stabilnej pracy serwera - też nie pomaga. Rozwiązaniem problemu była by funkcja która w parametrach przyjmuje linie "od - do", której ma czytać plik. Coś jak SQL LIMIT . (by nie tworzyć drugiego tematu): Znacie jakieś programy, które radzą sobie z tak dużymi plikami na XP/7/Ubuntu ? Próbowałem Wordem, Exelem, VIM'em, Geditem i openofficem - wszystkie albo się przywieszały (na windach) lub były killowane na Ubuntu. Dziękuję z góry za rady. Pozdrawiam i wracam na Google. |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 8 989 Pomógł: 1550 Dołączył: 8.08.2008 Skąd: Słupsk/Gdańsk ![]() |
1) fopen + fread (nie fgetcsv bo źle działa na utf) - przy złych wiatrach ta kombinacja tez może sie wysypać.
2) zaimportować bezpośrednio do mysql (google -> mysql csv import) Ten post edytował wookieb 27.10.2010, 09:19:34 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 12:48 |