【问题标题】:incremental backup in codeignitercodeigniter中的增量备份
【发布时间】:2014-02-22 19:01:49
【问题描述】:

我正在使用此功能获取我的 mysql 数据库的完整备份

function backup()
        {   


            date_default_timezone_set("Asia/Kolkata");
            $date  = date("d-m-Y, g:i A");

            $folder = "application/backup";

            $prefs = array(
                    'tables'      => array('table1', 'table2')
                                 );


            $backup =& $this->dbutil->backup($prefs);

            write_file("application/backup/backup $date.sql.gz", $backup);


        }

但我需要每小时在 codeigniter 中获取我的 mysql 数据库的增量备份。获取增量备份需要对此代码进行哪些更改?

【问题讨论】:

  • 如果你想获取整个表,你可以使用 cron 作业来获取整个表的备份。否则创建自定义函数并跟踪本地存储/数据库中的自动递增列号并获取结果并保留备份

标签: php mysql database codeigniter backup


【解决方案1】:

Codeigniter 数据库实用程序类不允许您对数据库进行增量备份。如果您需要,您应该为此创建一个自定义库。库应该能够运行 sql 命令。 mysql增量备份详情请阅读:http://dev.mysql.com/doc/mysql-enterprise-backup/3.7/en/mysqlbackup.incremental.html

【讨论】:

    【解决方案2】:

    在这里,也许你需要试试这个。

    ob_start();
    
    // Generage HTML page here
    generate_full_html_page();
    
    // All magic goes here
    $output = ob_get_clean();
    ignore_user_abort(true);
    set_time_limit(0);
    header("Connection: close");
    header("Content-Length: ".strlen($output));
    header("Content-Encoding: none");
    echo $output.str_repeat(' ', 10000) ."\n\n\n";
    flush();
    
    // Now page is sent and it safe to do all needed stuff here
    cron_task1();
    cron_task2();
    

    我从http://a32.me/2012/01/do-php-cron-without-cron-available/ 读到了这个有趣的技术。也许您可以根据该教程修改您的代码。

    希望能帮到你。

    【讨论】:

      猜你喜欢
      • 2017-05-05
      • 2014-02-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-02
      • 1970-01-01
      • 2013-06-18
      • 1970-01-01
      相关资源
      最近更新 更多