【问题标题】:Restore sql file using PHP使用 PHP 恢复 sql 文件
【发布时间】:2022-01-09 12:06:52
【问题描述】:

当我使用 xampp shell 命令行恢复它时,它可以工作,但是当我使用 php 运行它时,它不起作用。这是因为 xampp 配置还是什么?

shell脚本

mysql -u root -h localhost < Triggers.sql

这是我的 php 代码

$command='mysql -u root -p is2020_db < Triggers.sql';

exec($command);

【问题讨论】:

    标签: php mysql


    【解决方案1】:

    在 PHP 上运行您应该使用 shell_exec 执行。像这样:

    <?php
        $output = shell_exec('mysql -u root -p is2020_db < Triggers.sql');
        echo "<pre>$output</pre>";
    ?>
    

    另一种方式

    您的 MySQL 二进制文件应该位于 XAMPP 文件夹下。查找 /bin 文件夹,然后 你会发现 mysql.exe 客户端。假设它在 c:\xampp\mysql\bin,那么你应该在这个启动一个命令提示符 文件夹。

    也就是说,启动“cmd”,然后输入:

    cd c:\xampp\mysql\bin
    mysql.exe -u root -p is2020_db < Triggers.sql
    

    参考: How do I use MySQL through XAMPP?

    Windows 上的示例

    对于那些使用 Windows 操作系统的用户,我可以使用 cmd.exe 中的以下命令将一个大型 mysqldump 文件导入我的本地 XAMPP 安装:

    C:\xampp\mysql\bin>mysql -u root -p is2020_db < /path/to/file/Triggers.sql
    

    但是您必须检查您的主机中是否允许此命令和/或您必须在您的服务器中允许此命令。

    【讨论】:

    • 我正在使用 xampp,我搜索 disable_functions 并删除函数,我将 safe_mode_exec_dir 设置为关闭,但仍然无法正常工作
    • 我添加了更多可以帮助您的提示。
    • 这个仍然不能在 php 端工作,代码返回空
    • 这是我的文件夹路径 C:/xampp/htdocs/myMainFolder/myPhpCode.php C:/xampp/htdocs/myMainFolder/Triggers.sql
    • 试试这个:C:\xampp\mysql\bin>mysql -u root -p is2020_db
    猜你喜欢
    • 2013-02-14
    • 1970-01-01
    • 1970-01-01
    • 2017-07-31
    • 2019-12-07
    • 1970-01-01
    • 2010-09-14
    • 2014-03-23
    • 1970-01-01
    相关资源
    最近更新 更多