PHPBB / PHPNuke to JForum migration
Migrating from a PHPBB or PHPNuke forum to JForum is quite straightforward. We provide a command line tool that reads all information from a source database - PHPBB or PHPNuke - and convert it to a JForum database.
JForum's Phpbb2JForum is able to import most of the tables, as shown in the table below. Please note that, while there are items marked as no, is doesn't mean that JForum don't have a relative table - It only means that the table's data will not be imported by the tool.
| Table Name | Is data Imported? | Description |
| phpbb_auth_access | no | JForum uses a completely different security model from PHPBB. |
| phpbb_banlist | YES | |
| phpbb_categories | YES | |
| phpbb_config | no | Configurations in JForum are completely different from PHPBB |
| phpbb_confirm | no | |
| phpbb_disallow | no | |
| phpbb_forum_prune | no | Feature not implemented yet |
| phpbb_forums | YES | |
| phpbb_groups | YES | Groups are migrated, but not group roles ('permissions) |
| phpbb_posts | YES | |
| phpbb_posts_text | YES | |
| phpbb_privmsgs | YES | All private messages are imported |
| phpbb_privmsgs_text | YES | |
| phpbb_ranks | YES | |
| phpbb_search_results | no | JForum uses Lucene for search |
| phpbb_search_wordlist | no | Same as above |
| phpbb_search_wordmatch | no | Same as above |
| phpbb_sessions | no | Session information is irrelevant |
| phpbb_smilies | YES | |
| phpbb_themes | no | JForum uses a different template engine |
| phpbb_themes_name | no | |
| phpbb_topics | YES | |
| phpbb_topics_watch | YES | |
| phpbb_user_group | YES | |
| phpbb_users | YES | |
| phpbb_vote_desc | YES | |
| phpbb_vote_results | YES | |
| phpbb_vote_voters | YES | |
| phpbb_words | no | JForum currently does not implement this feature |
Permissions / Access rights
Phpbb2JForum does not import permissions / roles, so, after the importing process is finished, you'll need to manually setup access rights for each for the imported groups. The migration tool only setup Admin access for those users who also are Administrators in the PHPBB version.
Search - Indexing the database
Phpbb2JForum is a command line tool, which means you won't have a nice and fancy window :). Also, you'll need to have Java 1.4.
It comes with the main JForum package
, and it is located in the directory /tools/phpbb2jforum, where you will find two files: phpbb2jforum.bat and phpbb2jforum.sh. The first is to be used in a Windows environment, while the second will work for any Unix based system - Linux, BSD, Mac OS X etc...
The configuration file
Before you run the tool, it is necessary to setup some configurations, like database host and username, as well the table prefixes used in your current PHPBB installation. Open the file
/tools/phpbb2jforum/resource/SystemGlobals.properties in any text editor, and prepare it according to the following table:
| Property | Default value | Description |
| database.jforum.url | jdbc:mysql://localhost/jforum?user=root&password=root | This is the connection string to where JForum tables are in - to where the data will be migrated |
| database.phpbb | phpbb | Name of the PHPBB database. It must be located in the same MySQL server where JForum is (specified by the property database.jforum.url |
| phpbb.table.prefix | phpbb_ | The prefix of the PHPBB tables. Most installations will have the default value. If you are going to migrate from a PHPNuke forum, it is probably that the prefix is nuke_bb |
Those are the only three properties you need to set.
 | Location of the PHPBB PHPNuke database and access rights
In order to properly work, JForum and PHPBB / PHPNuke databases must be in the same MySQL server (not the same database, but same server). Also, the database user should be able to access both databases, as JForum will try to execute queries in either JForum and PHPBB / PHPNuke instances, using the form "SELECT <fields> FROM <phpbb_database.tablename>".
|
Create JForum database structure
The last step before running
Phpbb2JForum is to make sure that JForum's tables are created. You can do this by importing the file
WEB-INF/config/database/mysql/mysql_db_struct.sql. This script will create all tables for you.
Running
 | MySQL table type
If you are using MySQL, it is a good idea to set the table type to MyISAM instead of InnoDB before running the migration tool. This will make the SQL statements run much faster.
After you finish with the data importing, you can set it back to InnoDB.
|
Now, open the CMD Prompt (or a shell, if running some kind of Unix like machine) and go to the directory tools/phpbb2jforum. There are two scripts, one for Windowss - phpbb2jforum.bat - and another for Unix boxes - phpbb2jforum.sh.
As argument, you are required to inform the root directory of JForum (where you unzipped it). Example:
Windows
cd c:\JForum-2.1.8\tools\phpbb2jforum
phpbb2jforum.bat c:\JForum-2.1.8
|
Linux / Mac OS X / *Nix
cd /home/dev/JForum-2.1.8/tools/phpbb2jforum
sh phpbb2jforum.sh /home/dev/JForum-2.1.8
|
Press <ENTER> to start, and wait until the program finishes.
Permissions and first run
As stated before,
Phpbb2JForum does not migrate PHPBB roles. At most, it will try to setup Admin Access for all those users who are considered Admins in PHPBB as well (User Level equals to "1"), which is enough to access the Admin Panel and setup the board according to your needs.
If, for any reason, your PHPBB administrator user cannot see JForum's Admin Panel after the migration, please check http://www.jforum.net/posts/list/399.page
. In this link is shown how to set the administrator's role, which you can use as start to access the Admin Panel.