| MySQL backup s PHP? | ||
|---|---|---|
| G-force11. jan 2010 12:18:20Pridružen od: 31. mar 2008 719 objav +336-451 | #1Nikakor mi ne uspe narediti backup mysql baze z uporabo PHP. Stran testiram na WAMP server, program mysqldump se nahaja v C:\wamp\bin\mysql\mysql5.1.33\bin Poskusil sem z $backupFile = DB_NAME . date("Y-m-d-H-i-s") . '.sql';in$backupFile = DB_NAME . date("Y-m-d-H-i-s") . '.sql';system($command) sem poskusil zamenjati tudi z exec($command) vendar enostavno ne dela. Ko poženem stran mi stran nalaga in se nikoli ne ustavi. Ustvari se samo prazna .sql datoteka.Če grem preko cmd.exe (run->cmd) najprej v direktori C:\wamp\bin\mysql\mysql5.1.33\bin\ in nato poženem mysqldump -uroot -p imebaze > rezerva.sql mi rezervo baze uspešno ustvari v direktoriju C:\wamp\bin\mysql\mysql5.1.33\bin\ (vrednosti konstant so ok, ker sem $command preveril z echo) Kje je napaka? Kako bi lahko s PHP&mysldump ustvaril backup? nazadnje urejal G-force 11. jan 2010 12:23:08 všeč(0)ni všeč(0)spam(0) | |
| Roky11. jan 2010 12:30:31Pridružen od: 9. apr 2008 1879 objav +1475-17783 | #2 $data = exec('mysqldump --opt -q -u root -h host -ppassword mojabaza, $databaseOuput);nazadnje urejal Roky 11. jan 2010 12:31:01 všeč(0)ni všeč(0)spam(0) | |
| G-force11. jan 2010 12:37:52Pridružen od: 31. mar 2008 719 objav +336-451 | #3Pri tej kodi mi naredi enako. Stran nalaga in jo nikoli ne naloži, ustvari se samo prazna .sql datoteka :/ (sicer je pa baza zelo majhna, preko cmd mi backup ustvari takoj...). nazadnje urejal G-force 11. jan 2010 12:39:45 všeč(0)ni všeč(0)spam(0) | |
| Roky11. jan 2010 12:43:48Pridružen od: 9. apr 2008 1879 objav +1475-17783 | #4G-force, pri tej kodi manjka zgoraj še mysql_connect na bazo kamor hočeš kopirat. Če hočeš samo celotno bazo skopiran lahko uporabiš: $dbName = 'mojabaza';všeč(0)ni všeč(0)spam(0) | |
| G-force11. jan 2010 17:11:25Pridružen od: 31. mar 2008 719 objav +336-451 | #5Roky, hvala za pomoč vendar je bil problem drugje. Pa bom povedal rešitev, da se ne bo še kdo zajebaval tako dolgo kot sem se jaz :/ 1. Kar se exec() tiče mi ni delovalo, ker naj bi bil za to kriv bug. V sporočilu [15 Sep 2008 5:01pm UTC] je "vlabella" našel rešitev. Pred exec() je potrebno poklicati funkcijo session_write_close(); (seveda v primeru, da ste predhodno na strani klicali session_start(), kar velja za moj primer, čeprav tega nisem omenil). 2. Kljub session_write_close(); pa mi spodnja koda še vedno ni delovala. $backupFile = DB_NAME . date("Y-m-d-H-i-s") . '.sql';Ker sem počasi imel vsega dovolj, sem program mysldump iz C:\wamp\bin\mysql\mysql5.1.33\bin prekopiral še v mapo, kjer imam stran C:\wamp\www\mojastra\ 3. Vendar koda še vedno ni delala. Po kombiniranju s cmd-jem pa sem ugotovil, da kljub temu, da za root nimam gesla mysqldump še vedno vpraša po njem in moraš pač klikniti na enter, seveda v php kodi to ni možno zato se je stran spet loadala v nedogled. Odstrani sem -p in spodnja koda (kooooooooooončno) deluje :D $backupFile = DB_NAME . date("Y-m-d-H-i-s") . '.sql'; nazadnje urejal G-force 11. jan 2010 17:16:24 všeč(+1)ni všeč(0)spam(0) | |
stran 1 od 1 |<<1>>| | ||