Welcome to Geeklog Thursday, May 23 2013 @ 06:12 AM EDT
Geeklog is getting a migration feature with a little help from BigDump.
One of my projects for the 2008 Google Summer of Code is to add the ability for a user to install Geeklog from a previous backup. The goal is to make it simple and easy for you, the user, to migrate and install Geeklog from a backup database file.
From a developer's perspective the import process is straightforward, at least for smaller databases. Larger databases pose a bit of a challenge because the import process will likely surpass PHP's internal max_execution_time limit. We can't use PHP's set_time_limit() function, which is used to temporarily extend a script's allowed execution time, because it only affects the runtime of the PHP script itself and so any database queries or calls to system() would not be extended. Additionally, there is the web server timeout which many users on shared hosting are not able to extend.
Turns out Alexey Ozerov has done the hard work for us. His BigDump.php script will perform a "staggered import of large and very large MySQL Dumps even through the web servers with hard runtime limit and those in safe mode. The script executes only a small part of the huge dump and restarts itself. The next session starts where the last was stopped."
For now the migration feature only works with MySQL databases, since Geeklog's databaes backup utility only supports MySQL.
Look for this feature to be included in one of the next Geeklog releases.