最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

PHP后臺(tái)備份MySQL數(shù)據(jù)庫(kù)的源碼實(shí)例

 更新時(shí)間:2019年03月18日 14:08:12   作者:CODETC  
今天小編就為大家分享一篇關(guān)于PHP后臺(tái)備份MySQL數(shù)據(jù)庫(kù)的源碼實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

PHP 備份 mysql 數(shù)據(jù)庫(kù)的源代碼,在完善的 PHP+Mysql 項(xiàng)目中,在后臺(tái)都會(huì)有備份 Mysql 數(shù)據(jù)庫(kù)的功能,有了這個(gè)功能,對(duì)于一些不便自己寫shell腳本備份的VPS來(lái)說(shuō),就不用使用 FTP 或者使用 mysql 的管理工具進(jìn)行 mysql 數(shù)據(jù)庫(kù)備份下載,非常方便。

下面是一個(gè)php數(shù)據(jù)庫(kù)備份的源代碼,大家也可以根據(jù)自己的需求進(jìn)行修改。

<?php 
// 備份數(shù)據(jù)庫(kù)
$host = "localhost";
$user = "root"; //數(shù)據(jù)庫(kù)賬號(hào)
$password = ""; //數(shù)據(jù)庫(kù)密碼
$dbname = "mysql"; //數(shù)據(jù)庫(kù)名稱
// 這里的賬號(hào)、密碼、名稱都是從頁(yè)面?zhèn)鬟^(guò)來(lái)的
if (!mysql_connect($host, $user, $password)) // 連接mysql數(shù)據(jù)庫(kù)
{
 echo '數(shù)據(jù)庫(kù)連接失敗,請(qǐng)核對(duì)后再試';
  exit;
} 
if (!mysql_select_db($dbname)) // 是否存在該數(shù)據(jù)庫(kù)
{
 echo '不存在數(shù)據(jù)庫(kù):' . $dbname . ',請(qǐng)核對(duì)后再試';
  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"; //存放路徑,默認(rèn)存放到項(xiàng)目最外層
$fp = fopen($filename, 'w');
fputs($fp, $mysql);
fclose($fp);
echo "數(shù)據(jù)備份成功";
?>

PHP執(zhí)行Mysql數(shù)據(jù)庫(kù)的備份和還原

使用mysqldump命令備份

mysqldump命令將數(shù)據(jù)庫(kù)中的數(shù)據(jù)備份成一個(gè)文本文件。表的結(jié)構(gòu)和表中的數(shù)據(jù)將存儲(chǔ)在生成的文本文件中。

mysqldump命令的工作原理很簡(jiǎn)單。它先查出需要備份的表的結(jié)構(gòu),再在文本文件中生成一個(gè)CREATE語(yǔ)句。然后,將表中的所有記錄轉(zhuǎn)換成一條INSERT語(yǔ)句。然后通過(guò)這些語(yǔ)句,就能夠創(chuàng)建表并插入數(shù)據(jù)。

mysqldump基本語(yǔ)法:

mysqldump -u username -p password dbname table1 table2 ...-> BackupName.sql
  • username為數(shù)據(jù)庫(kù)用戶名;
  • password為數(shù)據(jù)庫(kù)密碼
  • dbname參數(shù)表示數(shù)據(jù)庫(kù)的名稱;
  • table1和table2參數(shù)表示需要備份的表的名稱,為空則整個(gè)數(shù)據(jù)庫(kù)備份;
  • BackupName.sql參數(shù)表設(shè)計(jì)備份文件的名稱,文件名前面可以加上一個(gè)絕對(duì)路徑。通常將數(shù)據(jù)庫(kù)被分成一個(gè)后綴名為sql的文件;
$exec="D:/phpstudy/mysql/bin/mysqldump -u".$db_user." -p".$db_pwd." ".$db_name." > ".$name;
exec($exec);
//前面要設(shè)置mysql執(zhí)行文件的路徑。

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

簡(jiǎn)單的備份數(shù)據(jù)庫(kù)就完成了。

還原使用mysqldump命令備份的數(shù)據(jù)庫(kù)的語(yǔ)法

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

參數(shù)跟備份時(shí)一樣,backup.sql是需要還原的數(shù)據(jù)庫(kù)文件,文件路徑為絕對(duì)路徑。

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

  • php設(shè)計(jì)模式之單例模式用法經(jīng)典示例分析

    php設(shè)計(jì)模式之單例模式用法經(jīng)典示例分析

    這篇文章主要介紹了php設(shè)計(jì)模式之單例模式用法,結(jié)合具體實(shí)例形式分析了php單例模式的概念、原理、定義及使用方法,需要的朋友可以參考下
    2019-09-09
  • php的常量和變量實(shí)例詳解

    php的常量和變量實(shí)例詳解

    這篇文章主要介紹了php的常量和變量實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • PHP經(jīng)典面試題之設(shè)計(jì)模式(經(jīng)常遇到)

    PHP經(jīng)典面試題之設(shè)計(jì)模式(經(jīng)常遇到)

    php中設(shè)計(jì)模式非常多,但是設(shè)計(jì)模式在php面試題經(jīng)常會(huì)提到,本文主要給大家介紹php經(jīng)典面試題之設(shè)計(jì)模式,需要的朋友一起看看吧
    2015-10-10
  • PHP常用文件操作函數(shù)和簡(jiǎn)單實(shí)例分析

    PHP常用文件操作函數(shù)和簡(jiǎn)單實(shí)例分析

    下面小編就為大家?guī)?lái)一篇PHP常用文件操作函數(shù)和簡(jiǎn)單實(shí)例分析。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • php layui實(shí)現(xiàn)前端多圖上傳實(shí)例

    php layui實(shí)現(xiàn)前端多圖上傳實(shí)例

    在本篇文章里小編給大家整理的是關(guān)于php結(jié)合layui前端實(shí)現(xiàn)多圖上傳的實(shí)例內(nèi)容,有需要的朋友們可以參考下。
    2019-07-07
  • PHPMYADMIN 簡(jiǎn)明安裝教程 推薦

    PHPMYADMIN 簡(jiǎn)明安裝教程 推薦

    簡(jiǎn)單的說(shuō),phpmyadmin就是一種mysql的管理工具,安裝該工具后,即可以通過(guò)web形式直接管理mysql數(shù)據(jù),而不需要通過(guò)執(zhí)行系統(tǒng)命令來(lái)管理,非常適合對(duì)數(shù)據(jù)庫(kù)操作命令不熟悉的數(shù)據(jù)庫(kù)管理者,下面我就說(shuō)下怎么安裝該工具
    2010-03-03
  • PHP框架laravel的.env文件配置教程

    PHP框架laravel的.env文件配置教程

    在之前的版本 Laravel 是使用 config 文件夾下的 php 文件來(lái)完成項(xiàng)目所需要的配置的,后面從大概從 5 開(kāi)始就使用了 .env 來(lái)放置部分配置。那么下面這篇文章主要給大家介紹了關(guān)于PHP框架laravel的.env文件配置的相關(guān)資料,需要的朋友可以參考學(xué)習(xí)。
    2017-06-06
  • 如何在Laravel5.8中正確地應(yīng)用Repository設(shè)計(jì)模式

    如何在Laravel5.8中正確地應(yīng)用Repository設(shè)計(jì)模式

    這篇文章主要介紹了如何在Laravel5.8中正確地應(yīng)用Repository設(shè)計(jì)模式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • Yii CFileCache 獲取不到值的原因分析

    Yii CFileCache 獲取不到值的原因分析

    這篇文章主要介紹了Yii CFileCache 獲取不到值的原因分析,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2017-02-02
  • laravel實(shí)現(xiàn)一個(gè)上傳圖片的接口,并建立軟鏈接,訪問(wèn)圖片的方法

    laravel實(shí)現(xiàn)一個(gè)上傳圖片的接口,并建立軟鏈接,訪問(wèn)圖片的方法

    今天小編就為大家分享一篇laravel實(shí)現(xiàn)一個(gè)上傳圖片的接口,并建立軟鏈接,訪問(wèn)圖片的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-10-10

最新評(píng)論

邹平县| 穆棱市| 佛坪县| 德昌县| 金塔县| 凤城市| 桂阳县| 封开县| 新晃| 南城县| 晴隆县| 云龙县| 麻江县| 天等县| 湖州市| 福鼎市| 永丰县| 博客| 天水市| 张家口市| 大同县| 钟祥市| 乐陵市| 南通市| 彝良县| 泰顺县| 新河县| 昌都县| 偏关县| 鲜城| 安龙县| 枣强县| 醴陵市| 建宁县| 东港市| 南陵县| 海盐县| 甘洛县| 和平县| 会昌县| 营山县|