前提:具有ssh登陸許可權
工作步驟:
下載軟體putty,設定ssh 登陸選項
登陸後,進入自己的首頁目錄*(通過ftp可以訪問到)
執行mysqldump命令可執行Database Backup,而mysqlrestore命令則恢複資料庫。
格式:
pXXXXXXX@kundenserver:~ > mysqldump -hdbXX.puretec.de -upXXXXXXX -p******** dbXXXXXXX > dbXXXXXXXX.sql
pXXXXXXX@kundenserver:~ > mysql -hdbXX.puretec.de -upXXXXXXX -p******** dbXXXXXXX < dbXXXXXXXX.sql
執行mysqldump後,會在當前所在目錄產生一個備份檔案(大小和資料庫大小相當)
通過ftp即可下載備份的資料庫檔案包
恢複資料庫工作與以上兩部相反
你也可以寫一個php指令碼,來完成以上操作:
備份檔案
include "../config.php";
MYSQL_CONNECT($dbhost, $dbuser, $dbpw) or die ( "<H3>無法訪問資料庫</H3>");
MYSQL_SELECT_DB($dbname) or die ( "<H3>資料庫尚未建立</H3>");
$path = getenv("DOCUMENT_ROOT")."/DB_backup";
$result = MYSQL_QUERY("SHOW TABLES");
$numrow = MYSQL_NUM_ROWS($result);
for($i = 0;$i < $numrow;$i++) {
$table = MYSQL_RESULT($result,$i);
echo "$table ... ";
system(sprintf("mysqldump --opt -h $dbhost -u $dbuser -p$dbpw $dbname $table | gzip > %s/$table.sql.gz",$path));
echo "DONE\n\n";
}
MYSQL_CLOSE();
恢複檔案
include "../config.php";
system(sprintf(
"gunzip -c %s/dump.sql.gz | mysql -h %s -u %s -p%s %s",
getenv("DOCUMENT_ROOT"),
$dbhost,
$dbuser,
$dbpw,
$dbname
));
echo "+DONE";