- Stefanescu Mihai a postat in Paginare in PHP
- johhny a postat in Paginare in PHP
- Stefanescu Mihai a postat in Cum pot afisa eroarea cand utilizatorul a scris un username gresit sau o parola gresita?
- madalin a postat in Cum pot afisa eroarea cand utilizatorul a scris un username gresit sau o parola gresita?
- Stefanescu Mihai a postat in Featureuri site
Backup MySql direct in DropBox
Am citit zilele trecute un articol despre cum poti folosi ‘mysqldump’ si un script PHP pentru a crea un backup bazei de date. Aceasta solutie se foloseste de pachetul Mail PEAR pentru a trimite baza de date la o adresa de e-mail specificata.Cum eu folosesc MySql zilnic, aproape in toate proiectele mele m-am gandit ca ar fi mult mai bine sa fac backup-ul direct pe Dropbox decat sa trimit pe cine stie ce adresa de e-mail.
O prima cautare pe Google m-a trimis catre DropboxUploader, de pe Github. Am descarcat fisierele si cu doar cateva modificari am reusit sa fac urmatorul script ce face un fisier SQL de backup (al bazei de date specificate), il face GZippped si il copiaza intr-un anumit folder dintr-un cont de Dropbox specificat.
<?php require('DropboxUploader.php'); $tmpDir = "/tmp/"; // username-ul bazei de date MySql $user = "username"; // parola bazei de date MySql $password = "password"; // numele bazei de date MySql $dbName = "my_database"; // hostname-ul sau IP-ul $dbHost = "localhost"; // fisierul zip trimis va avea prefixul acesta $prefix = "db_"; // username Dropbox $dropbox_user = "dropbox_account"; // parola Dropbox $dropbox_password = "dropbox_password"; // Folderul destinatie din dropbox (va fi creat daca nu exista) $dropbox_dest = "db_backups"; // Crearea fisierului backup $sqlFile = $tmpDir.$prefix.date('Y_m_d').".sql"; $backupFilename = $prefix.date('Y_m_d').".tgz"; $backupFile = $tmpDir.$backupFilename; $createBackup = "mysqldump -h ".$dbHost." -u ".$user." --password='".$password."' ".$dbName." > ".$sqlFile; //echo $createBackup; $createZip = "tar cvzf $backupFile $sqlFile"; //echo $createZip; exec($createBackup); exec($createZip); try { // upload fisier pe dropbox $uploader = new DropboxUploader($dropbox_user, $dropbox_password); $uploader->upload($backupFile, $dropbox_dest, $backupFilename); } catch(Exception $e) { die($e->getMessage()); } // Stergere fisier temporar unlink($sqlFile); unlink($backupFile); ?>
Fisierul DropboxUploader.php poate fi descarcat de aici.
Puteti uploada acest script pe serverul web dorit si puteti seta un CronJob pentru a-l programa sa ruleze cand doriti (de exemplu zilnic sau saptamanal…)
Comentarii
Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!