1、前言
mysql資料庫的備份方式有很多;
例如:1、使用mysqldump函式
mysqldump -u username -p dbname table1 table2 ... > backupname.sql
dbname引數表示資料庫的名稱
table1和table2引數表示需要備份的表的名稱,為空則整個資料庫備份;
backupname.sql參數列設計備份檔案的名稱,檔名前面可以加上乙個絕對路徑。通常將資料庫被分成乙個字尾名為sql的檔案;
基本使用:
2、管理工具
備份資料庫的方法很多,上面兩種比較常見
而本次主要講解如何通過php函式來自動備份資料庫
2、相關函式介紹
2.1 、fopen
詳情參考:
2.2、array_keys
詳情參考:
2.3、array_values
2.4、implode
詳情參考:
2.5、substr
詳情參考:
2.6、fwrite
詳情參考:
3、實現思路
4、**構成
/*** [copydb description] 備份資料庫
* @param [type] $dbname [description] 資料庫名
* @param [type] $filename [description] 儲存的檔名
* @return [type] [description]
*/publicfunctioncopydb($dbname,$filename)");//切換資料庫$this->changedb($dbname);$tables =$this->link->query('show tables');//獲取當期資料庫所有表名稱while($re =$tables->fetch(pdo::fetch_assoc));";$tablesql =$this->link->query($sql);fwrite($myfile,"drop table if exists ``;\r\n");//加入預設刪除表的遇見//下面備份表結構,這個迴圈之執行一次while($re =$tablesql->fetch(pdo::fetch_assoc))結構
";fwrite($myfile,$re['create table'].";\r\n\r\n");echo "正在備份表結構完成
";}//下面備份表資料echo "正在備份表資料
";$sql ="select * from ;";$valuesql =$this->link->query($sql);while($re =$valuesql->fetch(pdo::fetch_assoc))$keystr =substr($keystr,0,strlen($keystr)-1);//取出最後乙個逗號$valuestr ='';// var_dump($valuearr);foreach ($valuearr as $key =>$value){$valuestr .="'".$value.
php備份資料庫
link mysql connect localhost root dbname test tables mysql list tables dbname while table mysql fetch row tables table cachetables path date y m d tim...
linux自動備份資料庫
bin bash 設定mysql備份目錄 folder data databaseback cd folder day date y m d mkdir day cd day nowday date y m d h m s mkdir nowday cd nowday 資料庫伺服器,一般為local...
oracle如何備份資料庫
1.建立表空間 sql命令 create tablespace jeefh2 gblz17 logging datafile u02 oradata orcl jeefh2 gblz17.dbf 表空間檔案儲存位置 size 1024m 表空間檔案初始大小 autoextend on 表空間自動增長...