IceManSpy
11.11.2011, 17:12:05
Witam
Poszukuje gotowego rozwiązania na zrzucanie całej bazy danych do pliku sql. Nie chcę tutaj używać funkcji mysqldump z powłoki/konsoli. W mojej aplikacji ma ktoś kliknąć i ma się zrobić zrzut do pliku, który w razie czego można zaimportować. Najlepiej aby miał strukturę zapytań czyli create table + insery.
Dodatkowo chcę to podpiąć pod Zenda, ale jak już miałbym jakąś klasę albo funkcję, to sobie ją podepnę.
Podbiję posta.
IceManSpy
25.11.2011, 21:53:56
To pierwsze służy do importu, a nie exportu. Drugie nie działa - błędny link

Trzecie sposób - funkcja wywala błąd związany z myślnikami - po usunięciu tego, pojawiają się inne, związane z funkcjami mysql. Ponadto podczas exportu dane typu varchar zamieniane są na char.
Takie rozwiązanie znalazłem, ale gubi klucze obce:
http://www.phpclasses.org/package/3498-PHP...ackup-file.htmlDlatego problem nadal jest otwarty.
Musze to jeszcze raz odświeżyć.
vokiel
25.11.2011, 22:09:59
Gotowych rozwiązań nie widziałem, chociaż pewnie są. Można napisać samemu, pobrać strukturę bazy (nazwy tabel, typy pól), utworzyć z tego zapytanie tworzące strukturę. Pobrać wszystkie wiersze i dla nich porobić inserty.
Może popatrz w źródła PHPMyadmin dla inspiracji
IceManSpy
26.11.2011, 12:40:47
Może faktycznie, jeśli nie ma gotowego rozwiązania, to sam napisze swoje. Ale aby nie pisać od początku, to chyba wykorzystam powyższe rozwiązanie, tylko napiszę jakoś te klucze obce.
W tym momencie kombinuje nad jakąś nową klasą, jednak sam MYSQL strasznie mnie ogranicza poprzez bugi zwiazane z dodawaniem kluczy obcych po stworzeniu tabeli.
Taki mini OT:
Czy jeżeli na hostingu, który ma włączoną obsługę poleceń systemowych, będę mógł wykonać system('mysqludump') z parametrami? To by mi w sumie rozwiazało wszelkie problemy. Na swoim hostingu niestety tego sprawdzić nie mogę, bo jest ta opcja zablokowana.