od niedawna bawie sie php. Mam niewielka baze danych i chcialbym moc zrobic jej kopie bezpieczenstwa z poziomu php. Wpisujac z konsoli polecenie
Kod
mysqldump -u root -p --opt nazwa_bazy > kopia.sql
musze podac haslo z klawiatury. Jesli utworze sobie plik o nazwie .my.cnf a w nim wpisze
Kod
[client]
user=nazwa_uzytkownika
password=hasla_dla_tego_uzytkownika
user=nazwa_uzytkownika
password=hasla_dla_tego_uzytkownika
to moge wydac polecenie
Kod
mysqldump --opt nazwa_bazy > kopia.sq
i po jego zatwierdzeniu otrzymuje plik kopia.sql bez koniecznosci podawania czegokolwiek.
Jak zrobic w php aby to haslo zostalo w jakis sposob przekazane do polecenia mysqldump? Probowalem uzywac funkcji popen, ale nic mi z tego nie wyszlo. Robilem tak
Kod
$fp = popen("mysqldump -u root -p --opt nazwa_bazy > kopia.sql", "w");
fwrite($fp, 'moje_haslo');
pclose($fp);
fwrite($fp, 'moje_haslo');
pclose($fp);
nie bylo zadnych bledow podczas wykonywania, ale nie otrzymalem pliku kopia.sql. Jesli ktos bylby w stanie mi pomoc bede wdzieczny.
Pozdrawiam.