我只有使用此脚本的 FTP 凭据
$r="mysqldump $dbuser $dbpass $dbname wp_posts > table1.sql";
system($r);
但不幸的是,m 在表 1 中得到了一个空白结果.sql
您需要将选项开关添加到您的命令中,请参阅 mysqldump 手册,如下所示
$r="mysqldump -u $dbuser -p $dbpass $dbname wp_posts > table1.sql";
最后我得到了解决方案,这是我的代码:
<?php
$username = "abc";
$password = "xyz";
$hostname = "domain.com";
$database = "test_db";
$username =escapeshellcmd($username);
$password =escapeshellcmd($password);
$hostname =escapeshellcmd($hostname);
$database =escapeshellcmd($database);
$backupFile='url'.date("Y-m-d-H-i-s").$database.'.sql.tgz';
$command = "mysqldump -u$username -p$password -h$hostname $database wp_posts > $backupFile";
system($command, $result);
echo $result;
?>
感谢您的支持,非常感谢。
如果用户具有权限,请尝试以下操作:
mysqldump -u$dbuser -p$dbpass $dbname wp_posts > table1.sql
指定参数(哪个是用户,哪个是密码)
我认为是
mysqldump -u $dbuser -p $dbpass $dbname wp_posts
Apache用户需要具有编写table1的权限.sql并执行mysqldump命令。如果在共享主机上,这是值得怀疑的。