繁体   English   中英

使用 php web 应用程序恢复数据库备份

[英]Restore db backup with php web application

不幸的是,我几天前丢失了我的数据库,但幸运的是我每天都有备份。

不幸的是我几天前丢失了我的数据库(我的一些数据不是整个数据库)但幸运的是我每天都有备份。今天我发现我必须恢复 180 个巨大的数据库。 我需要将每 180 个数据库(备份)与当前数据库(我的数据库)进行比较,并插入不再存在于我的数据库中的数据。 一开始我想使用一些应用程序,如(NAVICAT 或 db forge studio),但不可能花很多时间。 而且我还想将 SQL 测试相互比较,这也是不可能的。

现在我必须构建一个 Web 应用程序(PHP)来恢复数据库,但我不知道如何

如果有人帮助我,我将不胜感激。

谢谢你。

如果它是一个大文件,请不要打开它。 流它。

$backup = fopen("yourBackUp.sql", "r");

// ...

fclose($backup);

如果您有很多文件,请使用GLOB

foreach(glob(dirname(__FILE__) . '/*.sql', GLOB_BRACE) as $sql) {
    $backup = fopen($sql, "r");

    // ...
}

如果您的数据库设置正确,您应该无法插入重复的行。

while (($line = fgets($backup)) !== false)
    try {
        Illuminate\Support\Facades\DB::raw($line);
    } catch ( Exception $e ) { 
        // duplicate row
    }
}

没有看到您所做的事情和您的程序问题,我们无能为力。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM