mysqldump以及如何使其工作?

时间:2011-03-14 14:41:25

标签: php mysql mysqldump

在之前的一个问题中,我询问了SQL命令LOAD DATA FILE的使用情况,并且在我使用mysqldump处理数据库备份的回复中,我得到了一点帮助,理解这个功能但是我现在非常困难,试图让它发挥作用。

以下是我的代码,请看看,如果你能看到我出错的地方,你可以解释并显示在哪里吗?我已经不知疲倦地在网上试图找到如何使我的代码工作,但无济于事,

//Database Information
    $dbhost = "localhost";
    $dbname = "foobar";
    $dbuser = "foo";
    $dbpass = "bar";

    if (isset($_POST['backup'])):

        $command = "mysqldump --opt -host=$dbhost --user=$dbuser 
                    --password=$dbpass $dbname > /sql/backup/verypc.sql";
        system($command);

    endif;

非常感谢任何人提供帮助。

3 个答案:

答案 0 :(得分:1)

首先,您必须确保您的托管允许您使用php运行shell命令。要实现这一点,您应该从简单的ls开始,看看它是否显示。

Otherwize,你可以找到一些用php编写的mysql-backup脚本。

答案 1 :(得分:1)

您有-host=$dbhost而不是--host=$dbhost

答案 2 :(得分:0)

使用exec,而不是系统。

另外,考虑使用cronjob。我用它来每小时备份一次数据库:

mysqldump --opt -Q -u [username] -p[password] [username] > /home/[username]/backups/`date --iso-8601`.sql