Съхраняване и възтановяване на дании от БД чрез PHP
Автор: d_badboy
Ето нещо, което е изключително полезно.
Първо естествено си правите файл с връзка към баазата данни config.php
<?php
$dbhost = "dbhost"; // хост
$dbuset = "dbuser"; // потребител
$dbpass = "dbpass"; // парола
$dbname = "dbname"; // база данни
mysql_connect($dbhost,$dbuset,$dbpass); // Връзка с базата данни
mysql_select_db($dbname); // Избиране на базата данни
?>Съхраняване на данните от база данни backup.php
<?php
include "config.php"; // Вмъкване на файла с връзка към базата данни config.php
$tableName = 'mypet'; // Име на таблицата
$backupFile = 'backup/mypet.sql'; // Файлът където ще се запази информацията
$query = "SELECT * INTO OUTFILE '$backupFile' FROM $tableName"; // SQL заявка за съхраняване на данните във файл
$result = mysql_query($query); // Изпълнение на заявката
?>Възтановяване на данните на база данни load.php
<?php
include "config.php"; // Вмъкване на файла с връзка към базата данни config.php
$tableName = 'mypet'; // Име на таблицата
$backupFile = 'backup/mypet.sql'; // Файлът където ще се запази информацията
$query ="LOAD DATA INFILE 'backupFile' INTO TABLE $tableName"; // SQL заявка за възтановяване на данните от файл
$result = mysql_query($query); // Изпълнение на заявката
?>Използване на mysqldump посредством функцията system()
<?php
include "config.php"; // Вмъкване на файла с връзка към базата данни config.php
$backupFile = $dbname . date("Y-m-d-H-i-s") . '.gz'; // Файлът където ще се запази информацията
$command = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $backupFile"; // Команда за съхраняване на данните във файл
system($command);
?>При $backupFile трябва да зададете точния път до файла кадето ще се записват и четат данните.
Естествено няма да забравя да спомена че добър вариант е експортирането и импортирането на данни чрез phpmyadmin, който е добър помощник за тази цел и с много други функционалности.


