Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/251.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用PHP获取数据库备份_Php_Database_Mysqli_Backup - Fatal编程技术网

使用PHP获取数据库备份

使用PHP获取数据库备份,php,database,mysqli,backup,Php,Database,Mysqli,Backup,下面是我在互联网上找到的使用php获取数据库备份的代码。代码在本地主机中运行良好。但是当它在在线服务器中时,它不能正常工作。它创建了一个database.sql文件,但该文件为空。有什么问题吗??我认为这是一个服务器权限问题。如何使此代码在我的在线服务器上工作( 你为什么要重新发明轮子 $folder = __DIR__ . DIRECTORY_SEPARATOR . 'Backup_Files/'; if (!is_dir($folder)){ mkdir($folder, 0777,

下面是我在互联网上找到的使用php获取数据库备份的代码。代码在本地主机中运行良好。但是当它在在线服务器中时,它不能正常工作。它创建了一个database.sql文件,但该文件为空。有什么问题吗??我认为这是一个服务器权限问题。如何使此代码在我的在线服务器上工作(


你为什么要重新发明轮子

$folder = __DIR__ . DIRECTORY_SEPARATOR . 'Backup_Files/';
if (!is_dir($folder)){
    mkdir($folder, 0777, true);
    $date = date('m-d-Y'); 
    exec("mysqldump --user=... --password=... --host=... DB_NAME > {$folder}db_backup_{$date}.sql");
}

脚本开头缺少
error\u reporting(E_ALL);
。添加我提到的代码,看看是否有任何特定行产生错误。我想知道为什么要在PHP中实现
mysqldump
。整个过程只需一个命令,如
mysqldump db>backup$(date+%F\ut).sql
PHPMyAdmin中有导出函数,如果您可以使用的话。@RuslanOsmanov请告诉我怎么做。例如,获取备份的确切代码是什么。@ChinthakaUdayasiri,例如,该命令类似于
mysqldump-hlocalhost-uroot dhn\u online\u db>~/backup\u Files/db\u backup$(日期+%m-%d-%Y)。sql
(注意,可以使用
-p
选项指定密码)。将此命令放入
crontab
(需要运行cron守护程序)就像
@daily这个命令一样
。你完成了。他甚至不需要你PHP@RuslanOsmanov同意,但我猜OP出于任何原因想使用php。我需要这个函数在用户从系统注销时创建一个备份文件。
$folder = __DIR__ . DIRECTORY_SEPARATOR . 'Backup_Files/';
if (!is_dir($folder)){
    mkdir($folder, 0777, true);
    $date = date('m-d-Y'); 
    exec("mysqldump --user=... --password=... --host=... DB_NAME > {$folder}db_backup_{$date}.sql");
}