![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 10.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Moze macie jakies przykłady z wykorzystaniem funkcji exec() i uruchamianiem polecen w linux, szczegolnie zalezalo by mi, gdyby ktos mial tworzenie backupow w postgresie ( pg_dump .....) z wykorzystaniem funkcji exec()
|
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Nie mam pod reka postgresa w zwiazku z czym nie mam mozliwosci sprawdzic ale rozwiazanie dla Mysql'a na Win typu:
działa bez problemów. Wydaje mi się, że analogicznie postępując można to również zrobić dla pg. Ten post edytował mhs 24.05.2005, 13:19:48 |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 10.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
niestety u mnie niedziala
zreszta nawet uzycie
nie działa moze trzeba by cos pozmieniac w php.ini , moze safe_mode=On tutaj bruździ Ten post edytował korad1 25.05.2005, 20:06:51 |
|
|
![]() ![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 13.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Pg_dump:
Dla whoami:
Działa ? -------------------- Jeśli wiesz jak coś zrobić zrób to, jeśli nie wiesz... ryzykuj :o)
|
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 764 Pomógł: 3 Dołączył: 30.04.2003 Ostrzeżenie: (0%) ![]() ![]() |
Cytat(korad1 @ 2005-05-25 21:04:22) moze trzeba by cos pozmieniac w php.ini , moze safe_mode=On tutaj bruździ prawdopodobnie tak, w trybie bezpiecznym korzystanie funkcji exec (i innych) jest ograniczone |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 10.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
ustawienie safe_mode=Off spowodowalo ze
zaczelo dzialac, natomiast
w dalszym ciagu nie dziala |
|
|
![]() ![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 13.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Hmm oczywiście "sciezkadozapisu" to jest np. "/home/korad1/plik.dmp"
To rozwiązanie jest oczywiście postackie bo: a ) robiąc pierwszy raz bacqp bazy tworzysz plik.dmp i zapisujesz w nim bazę... b ) robiąc drugi raz bacqp zapisujesz plik.dmp jeszcze raz (tamten jest "kasowany") Wszystko przez wprowadzenie znaczka skierowania strumienia > oznacza to nadpisywanie. A >> dopisywanie ![]() Przydało by się również jakaś zmienna np. w php pobranie czasu (date). i w ten sposób oznaczanie plików (zamiast "plik.dmp" było by "010605.dmp"). Ten post edytował Kamis 1.06.2005, 00:49:52 -------------------- Jeśli wiesz jak coś zrobić zrób to, jeśli nie wiesz... ryzykuj :o)
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 10.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
Oczywiscie racja ze kolejen pliki z kopia bazy powinny byc pod innymi nazwami , co by sie nie nadpisywaly.
Natomiast sciezka dostepu jest u mnie katalog
Problem w tym ze baza w dalszym ciagu nie chce sie utworzyc niezaleznie od wskazanaego katalogu |
|
|
![]() ![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 13.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw w wierszu poleceń wydaj "pg_dump -Oc nazwa_bazy > /var/lib/pgsql/plik.sql" jeśli robi Ci plik.sql...
Coś mie się wydaje, że zamieszałeś z tymi -Oc... Poczytaj w manualu i najpierw zrób to z lini komend... podpowiem, że może trzeba kombinować z pg_dump -u passwd. Zobacz jak mhs zrobił to dla mysql i zamień to na psql ![]() -------------------- Jeśli wiesz jak coś zrobić zrób to, jeśli nie wiesz... ryzykuj :o)
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 18 Pomógł: 0 Dołączył: 10.05.2005 Ostrzeżenie: (0%) ![]() ![]() |
wpisujac pg_dump.... z wiersza poleceń dziala od dawna , problem jest ze zrobieniem tego z poziomu php i funkcji exec().
Trudno zrobie to najwyzej z pozimu komend sql
bo w ten sposob bez problemu zapisuje mi na dysku. Zalozmy ze jest przycisk [kopia], uzytkowanik go naciska , po stronie serwera robia sie kopie wybranych tabel , jak zrobic zeby zapisane kopie przeslac do uzytkownika a po stornie uzytkownika pojawilo sie okienko do przegladania katalogow aby wybrac miejsce do zapisu tych kopii Przy wysylaniu pliku na serwer wystarczy do przegladania dysku <input type=file> jak zrobic to w druga strone Ten post edytował korad1 2.06.2005, 06:34:09 |
|
|
![]()
Post
#11
|
|
![]() Grupa: Zarejestrowani Postów: 127 Pomógł: 0 Dołączył: 13.05.2003 Ostrzeżenie: (0%) ![]() ![]() |
Nie no bez jaj... zrób to tak jak Ci mówię z podaniem usera i hasła do bazy... przecie jakby normalnie można było wydawać komendy tak z php bez hasła itp. to zwiększyło by to włam... pomyśl... zobacz na pierwszy przykład z mysql'a i zrób to na pgsql. Nie poddawaj się tak łatwo
![]() ![]() -------------------- Jeśli wiesz jak coś zrobić zrób to, jeśli nie wiesz... ryzykuj :o)
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 13.08.2025 - 22:53 |