PDO简单备份数据库

86 阅读1分钟

数据库备份是对数据库现有的数据文件的部分或全部、相关日志文件或参数文件生成一份副本,其目的主要针对两种突发情况。第一,硬盘介质损坏;第二,人为误操作。

话不多说直接上代码!!!

pdo=new\PDO(mysql:host=localhost;dbname=,username,password);pdo = new \PDO('mysql:host=localhost;dbname=', 'username', 'password'); tables = pdo>query(SHOWTABLESTATUS)>fetchAll(\PDO::FETCHASSOC);foreach(pdo->query('SHOW TABLE STATUS')->fetchAll(\PDO::FETCH_ASSOC); foreach (tables as table) { tableName=table[Name];table['Name']; ts = pdo>query("showcreatetable pdo->query( "show create table `tableName")->fetchAll(\PDO::FETCH_ASSOC); foreach ($ts as $t){ $mysql.=$t['Create Table'].";\r\n"; echo $t; } $data = $pdo->query("SELECT * FROM tableName")>fetchAll(\PDO::FETCHASSOC);foreach(tableName`")->fetchAll(\PDO::FETCH_ASSOC); foreach (data as row) { keys = array_keys(row);row); keys = array_map('addslashes', keys);keys); keys = join(',', keys);keys); keys = "" . $keys . ""; vals=arrayvalues(vals = array_values(row); vals=arraymap(addslashes,vals = array_map('addslashes', vals); vals=join(",",vals = join("','", vals); vals="".vals = "'" . vals . "'"; mysql.="insertinto mysql .= "insert into `tableName`(keys)values(keys) values(vals);\r\n"; } } file_put_contents(DIR . "/1.sql", $mysql);