【问题标题】:How can I export MySQL database with a PHP script?如何使用 PHP 脚本导出 MySQL 数据库?
【发布时间】:2015-05-27 22:59:22
【问题描述】:

我需要一个脚本,例如,当我打开script.php 页面时,它将我的一个数据库从 MySQL 导出到一个 SQL 文档,但我不知道如何在 PHP 中执行此操作,有人可以帮助我吗那个?

编辑代码:

<?php

$dbhost   = "localhost";
$dbuser   = "root";
$dbpwd    = "";
$dbname   = "activmanagement";
$dumpfile = $dbname . "_" . date("Y-m-d_H-i-s") . ".sql";

passthru("D:/wamp/bin/mysql/mysql5.6.17/bin/mysqldump --opt --host=$dbhost --user=$dbuser --password=$dbpwd $dbname > $dumpfile");

// report - disable with // if not needed
// must look like "-- Dump completed on ..." 

echo "$dumpfile "; passthru("tail -1 $dumpfile");

?>

这一行:

passthru("D:/wamp/bin/mysql/mysql5.6.17/bin/mysqldump --opt --host=$dbhost --user=$dbuser --password=$dbpwd $dbname > $dumpfile");

【问题讨论】:

  • 那么你会用缓慢低效的方式@PHPglue
  • @Dagon 所以我编辑了我的问题,我使用了该代码并且它有效,但是我像你一样在 wamp 中运行,看看我的网站是否在主机上“这条线”上的部分会有所不同对吗?
  • mysqldump的路径不一样,其他都一样
  • @Dagon 如果我托管我的网站,我如何才能看到正确的路径? :s

标签: php mysql mysql-backup


【解决方案1】:

请参阅PHP - exec() vs system() vs passthru()。你只需要这样的东西


<?php
    $dbhost = 'localhost';
    $dbuser = 'root';
    $dbpass = '';
    $dbname   = 'activmanagement';

    $sql_backup_file = $dbname . date("Y-m-d-H-i-s") . '.gz';
    $dump = "mysqldump --opt -h $dbhost -u $dbuser -p $dbpass $dbname | gzip > $sql_backup_file";

    system($dump);
?>

【讨论】:

    猜你喜欢
    • 2012-04-18
    • 2015-09-09
    • 2014-04-07
    • 1970-01-01
    • 2011-05-06
    • 2012-08-28
    • 1970-01-01
    • 1970-01-01
    • 2012-02-09
    相关资源
    最近更新 更多