gpt4 book ai didi

php - 除了使用 system() 函数进行备份之外,还需要一种运行 mysqldump 的方法

转载 作者:行者123 更新时间:2023-11-29 14:19:58 24 4
gpt4 key购买 nike

我将使用 PHP 脚本备份数据库,该脚本使用 system() 函数执行命令。不幸的是,我的共享主机已禁用它。我运行时收到此警告:

Warning: system() has been disabled for security reasons in /path-to-my-file on line 162

这是我的代码:

$filename = 'backup/mybackupfile.sql';
$command = "mysqldump -u myuser -pmypass mydatabase > ". $filename ."";
system($command);

它在我的本地计算机上使用 xampp 运行良好,但在我的共享主机上却出现问题。

因此,我需要另一种方式来运行 mysqldump 命令,而不是使用 system()。我尽量避免使用 cronSELECT * OUTFILE 之类的东西。

最佳答案

正如 Hakra 女士已经说过的,如果您的主机禁用了系统命令的执行,您将根本无法运行 mysqldump

您必须要求他们启用系统命令,或使用 PHP 脚本进行转储。但是,要非常小心周围的 PHP 转储脚本:我的经验表明,许多脚本会创建损坏或不完整的转储。

一些谷歌搜索显示了一些小工具,例如 this one 。但正如所说,要小心并做一些测试来验证准确性。

我所知道的最好的基于 PHP 的导出工具是 PhpMyAdmin。 。也许这会有所帮助。从理论上讲,甚至应该可以隔离其导出库,但据我所知,它不会以任何简单的方式公开它以便在其他脚本中使用。

关于php - 除了使用 system() 函数进行备份之外,还需要一种运行 mysqldump 的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11904011/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com