中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用PHP怎么在后臺備份MySQL數據庫

發布時間:2021-05-31 16:25:09 來源:億速云 閱讀:143 作者:Leah 欄目:開發技術

使用PHP怎么在后臺備份MySQL數據庫?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

<?php 
// 備份數據庫
$host = "localhost";
$user = "root"; //數據庫賬號
$password = ""; //數據庫密碼
$dbname = "mysql"; //數據庫名稱
// 這里的賬號、密碼、名稱都是從頁面傳過來的
if (!mysql_connect($host, $user, $password)) // 連接mysql數據庫
{
 echo '數據庫連接失敗,請核對后再試';
  exit;
} 
if (!mysql_select_db($dbname)) // 是否存在該數據庫
{
 echo '不存在數據庫:' . $dbname . ',請核對后再試';
  exit;
} 
mysql_query("set names 'utf8'");
$mysql = "set charset utf8;\r\n";
$q1 = mysql_query("show tables");
while ($t = mysql_fetch_array($q1))
{
  $table = $t[0];
  $q2 = mysql_query("show create table `$table`");
  $sql = mysql_fetch_array($q2);
  $mysql .= $sql['Create Table'] . ";\r\n";
  $q3 = mysql_query("select * from `$table`");
  while ($data = mysql_fetch_assoc($q3))
  {
    $keys = array_keys($data);
    $keys = array_map('addslashes', $keys);
    $keys = join('`,`', $keys);
    $keys = "`" . $keys . "`";
    $vals = array_values($data);
    $vals = array_map('addslashes', $vals);
    $vals = join("','", $vals);
    $vals = "'" . $vals . "'";
    $mysql .= "insert into `$table`($keys) values($vals);\r\n";
  } 
} 
$filename = $dbname . date('Ymjgi') . ".sql"; //存放路徑,默認存放到項目最外層
$fp = fopen($filename, 'w');
fputs($fp, $mysql);
fclose($fp);
echo "數據備份成功";
?>

PHP執行Mysql數據庫的備份和還原

使用mysqldump命令備份

mysqldump命令將數據庫中的數據備份成一個文本文件。表的結構和表中的數據將存儲在生成的文本文件中。

mysqldump命令的工作原理很簡單。它先查出需要備份的表的結構,再在文本文件中生成一個CREATE語句。然后,將表中的所有記錄轉換成一條INSERT語句。然后通過這些語句,就能夠創建表并插入數據。

mysqldump基本語法:

mysqldump -u username -p password dbname table1 table2 ...-> BackupName.sql
  • username為數據庫用戶名;

  • password為數據庫密碼

  • dbname參數表示數據庫的名稱;

  • table1和table2參數表示需要備份的表的名稱,為空則整個數據庫備份;

  • BackupName.sql參數表設計備份文件的名稱,文件名前面可以加上一個絕對路徑。通常將數據庫被分成一個后綴名為sql的文件;

$exec="D:/phpstudy/mysql/bin/mysqldump -u".$db_user." -p".$db_pwd." ".$db_name." > ".$name;
exec($exec);
//前面要設置mysql執行文件的路徑。

注意:這里的-p后面的password不要有空格,否則可能只會生成空的sql文件,后面$name是生成文件路徑及名稱。

簡單的備份數據庫就完成了。

還原使用mysqldump命令備份的數據庫的語法

mysql -u root -p password dbname < backup.sql

參數跟備份時一樣,backup.sql是需要還原的數據庫文件,文件路徑為絕對路徑。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

曲松县| 新丰县| 天水市| 汕头市| 辰溪县| 普陀区| 鄯善县| 凤台县| 九寨沟县| 朝阳县| 英吉沙县| 烟台市| 叙永县| 香格里拉县| 蕲春县| 保山市| 霍城县| 绥德县| 花莲县| 常宁市| 姜堰市| 淮安市| 洪洞县| 贵州省| 南昌市| 乐陵市| 塔河县| 凭祥市| 界首市| 昌乐县| 娱乐| 泰安市| 曲松县| 安阳县| 石棉县| 深泽县| 修水县| 新泰市| 北海市| 玛曲县| 聂拉木县|