Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL] INSERT około 5mln rekordów to możliwe?
termin
post
Post #1





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


Witam, chcę wybrać z bazy MS SQL-a rekordy i wrzucić je do MySQL-a na którym stoi cały sklep internetowy. Problem w tym ze w jednej tabeli jest ponad 5 mln rekordów i tak się zastanawiam jak to najlepiej zrobić. Aktualizacja tej tabeli będzie następować raz na dzień w nocy wiec z czasem nie ma tu problemu.
Zrobiłem select z ms sql i od razu insert do mysql ale po chwili wyskoczył błąd ze php nie jest w stanie zadeklarować tak dużej ilości danych.
  1. Fatal error: Allowed memory size of 524288000 bytes exhausted (tried to allocate 8715264 bytes) in ......


czy ktoś kiedyś dokonywał takich duzych operacji i może się podzielić widzą jak to najlepiej zrobić?

Ten post edytował termin 11.07.2010, 10:49:31
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
termin
post
Post #2





Grupa: Zarejestrowani
Postów: 113
Pomógł: 1
Dołączył: 13.05.2003
Skąd: Wrocław

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


dzięki prachwal właśnie o to mi chodziło. Jestem w szoku szybkością działania tego BCP, 7mln rekordów zapisał do pliku w 35 sekund, plik miał 190MB a po spakowaniu 10MB wiec przez FTP-a poszło bardzo szybko.

Jedna rzecz mnie tylko zastanawia, jak zmienić kodowanie znaków, MS ma CP1250 a MySQL UTF-8.
Go to the top of the page
+Quote Post

Posty w temacie


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: 4.10.2025 - 07:32