Piszę skrypt PHP do generowania zrzutów SQL z mojej bazy danych dla celów kontroli wersji. Zrzuca on już strukturę danych za pomocą odpowiedniego zapytania: SHOW CREATE ....
. Teraz chcę sam zrzucić dane, ale nie jestem pewien co do najlepszej metody. Moje wymagania to:Generowanie zrzutu danych MySQL w języku SQL z PHP
- muszę rekord w każdym wierszu
- Wiersze muszą być klasyfikowane według klucza podstawowego
- SQL musi być poprawny i dokładny bez względu na typ danych (liczby całkowite, ciągi, dane binarne ...)
- Zrzuca powinny być identyczne, gdy dane nie zmieniły
mogę wykryć i uruchomić mysqldump
jako zewnętrznego polecenia, ale to dodaje dodatkowy wymóg systemu i muszę analizować dane wyjściowe w celu usunięcia nagłówków i stopki z informacjami o zrzutach, których nie potrzebuję (takimi jak wersja serwera lub data zrzutu). Chciałbym, aby mój skrypt był tak prosty, jak to tylko możliwe, aby mógł być trzymany w oddzielnym pliku.
Jakie są moje alternatywy?
Tymczasem staram pokaz indeksu i mysql_real_escape_string() –
mysqldump naprawdę nie dodać dodatkowe wymagania systemowe, jest dostarczany z mySQL. –
Tak więc mysqldump dodaje MySQL jako wymaganie systemowe. Większość programistów nie ma lokalnego serwera: łączy się ze wspólnym serwerem w sieci LAN. –