Hogy lehetne Cron job-bal ütemezni adatbázis és fájlrendszer mentést a weblapomon?
A cron-nál php fájl elérési útvonalát tudom megadni.
A cron időzítésével elbírok, de nem találtam olyan kódot, ami mentene adatbázist, vagy fájlrendszert.
Szükségem lenne rá, hogy hetente, vagy naponta mentve legyen a honlapom tartalma.
Nem tudom fontos-e, de ingyenes tárhelyen van az oldalam.
1. megoldás: PHP scriptet hívsz meg cronból, az manuálisan szépen lementi az adatbázisból az adatokat, amilyen formában te szeretnéd. Így ugyanúgy csatlakozol az adatbázisba, mint úgy általában.
2. megoldás: PHP scriptet hívsz meg cronból, ami aztán meghív egy programot. (Lásd: exec, system, passthru, stb…)
3. megoldás: Eleve egy shell scriptet hívsz meg.
Az adatbázis mentésére van parancs MySQL esetén. Lásd: [link]
Pl.: mysqldump adatbazisom --user=felhasznalo --password=jelszo > mentes.sql
Vagy ha az összes adatbázist akarod menteni: mysqldump --all-databases --user=felhasznalo --password=jelszo > mentes.sql
Célszerű is inkább shell scriptből csinálni, gyorsabb…
Itt az ingyenes tárhely kavarhat be, mert lehet tiltva vannak a shell parancsok meghívásai, vagy cron-ba csak php-t lehet megadni. Ez esetben az első mód marad, meg kell írni PHP-ban a mentést, ami nagyobb adatmennyiség esetén erősen lassú lehet…
Köszönöm a korrekt választ!
Találtam egy angol nyelvű leírást a fájlrendszer mentésére, de sajnos nem működik.
Ezt a php szkriptet kell lefuttatnom, de nem csinál semmit:
<?php echo exec(‘cd /home/felhasznalo/backup/files;tar -cvpzf `date +%y-%m-%d_%H-%M`.tar /home/felhasznalo/public_html’); ?>
Természetesen elmentettem fájlba és felmásoltam ftp-n.
Esetleg valami ötlet?
Elsőre nézzük meg, hogy nincs-e a PHP safe módban. Hozz létre egy php fájlt, mondjuk issafemode.php, aminek legyen ez a tartalma:
<?
if (ini_get('safe_mode')){
echo 'Safe mode';
} else {
echo 'nincs safe mode';
}
?>
Ha ezt meghívva azt kapod, hogy „safe mode”, akkor nem fogsz tudni PHP-ből linux parancsokat hívni, akkor nem tudod használni az exec, system, stb. parancsokat. Ebben az esetben mint írtam magadnak kell valahogy megoldani a mentést, PHP-ban megírva.
A válasz "nincs safe mode" volt, tehát elvileg működnie kéne a szkriptnek.
Ha jól értelmezem a php kódot, az eleje létrehozza a mappát ftp-n, a következő rész a fájl nevét adja meg, a vége pedig az, hogy melyik mappát tömörítse be. Ugye?
Amúgy beütemeztem ezt a fájlt, de nem hajtja végre a cron, ezt abból gondolom, hogy nem hoz létre mappát sem. Meg persze fájlt sem.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!