{maketoc}
This page contains information on how to convert from databases such as tikiwiki to bitweaver.

!Upgrade Gotcha's
* You may need to increase your PHP.INI __memory_limit__ value (up to ''64M'' or more) and __max_execution_time__ (to ''180'' seconds or more) during upgrades of large sites
* Don't forget to reimport your customised styles into the ''themes/styles'' directory of the new installation
* Don't forget to confirm your start page during the installation

!Generic Database Upgrades / Conversions
bitweaver has a powerfull yet simple upgrader that is part of the InstallPackage. With a single click you can give your old site the power of bitweaver.

Our architecture for upgrading, like all of bitweaver, is modular and powerful. Every BitweaverPackage maintains its own upgrade script. This architecture enables you to upgrade *any* CMS to *any* bitweaver version. Anyone up for a drupal upgrader? *nuke upgrader? TW1.9 upgrader?

Currently it handles TikiWiki 1.8 and bitweaver ReleaseZero updates. It uses a lot of subselects so you will need a real database or at least MySQL 4.1.

!!How does it work?
install/upgrade.php does all the magic by looking at every BitweaverPackage's <package>/admin/upgrade_inc.php. This file has upgrade hashes of SQL *and* php for each package version and particular RDBMS as necessary. Below is a brief example. We suggest you look at liberty/admin/upgrade_inc.php if you are interested in seeing a complete example of how it works, or shoutbox/admin/upgrade_inc.php for a simpler example.

{CODE source=PHP}
$updateHash = array(

'TW18' => array(
'2.0' => array(
'pgsql' => 'ALTER TABLE tiki_pages RENAME `pageId` TO `page_id`'
)
),

'2.0' => array(
'3.0' => array(
'sql92' => "ALTER TABLE tiki_pages ADD foo VARCHAR(20); UPDATE tiki_pages SET foo='bar';",
'php' => 'foreach( $hash as $key ) { doSomething(); } '
)
)

);
{CODE}

Page History
Date/CommentUserIPVersion
18 May 2008 (20:35 UTC)
laetzer85.178.10.624
Current • Source
xing194.152.164.452
View • Compare • Difference • Source
xing194.152.164.451
View • Compare • Difference • Source