XF 2.1 Dummy's Guide to Importing vBulletin from Another Server

BubbaLovesCheese

Active member
This is a guide to help people import their old vBulletin databases in to XenForo.

vBulletin can be on either the same, or a different server.

I wrote this as a supplemental guide to the XenForo manual. It was created to fill in some basic information that might have been overlooked in the official guide.

It most likely can be used with any old forum database, I only tried it with vBulletin.

I hope it helps.

=== PREPARATION ===

Is your old vBulletin forum on the same server as your new XenForo forum?

If YES, then you only need to create 1 database for your new XenForo installation
If NO, then you need to create 2 databases. One for XenForo, and one for your old vBulletin

  • Go in to the server that will host your new XenForo installation
  • In the control panel, create a new database for XenForo
  • Make note of the database name, password, etc
  • Create another database for vBulletin (Only if vBulletin is on another server)
  • Make note of the database name, password, etc

=== INSTALL and SET UP ===

SETUP is pretty straightforward, follow steps 1, 2, and 3 here:


Summary:

  • Download XF from your client area
  • Upload XF to a folder on your server
  • Start Installation by going to the URL in your browser: mywebsite.com/install/

=== INSTALLATION DETAILS ===

  • Input the database details for the new XenForo database you just created
  • Follow installation instructions
  • IMPORTANT: When creating a User, choose a unique UserName and Email that is NOT already registered in your old vBulletin forum

=== GET VBULLETIN DATABASE === IF IT'S ON A DIFFERENT SERVER ===
=== Skip this step if your old vBulletin forum is on the same server as xenforo ===

Only do this if your old vBulletin forum is on a different server.

I did not have cPanel or phpmyadmin installed on my old vBulletin server, so I had to use MySQL Workbench to fetch the old vBulletin Database. Otherwise, you may choose another method that is simpler for you use.

Create an SQL "dump" of your old vBulletin database

  • Open MySQL Workbench
  • Connect to your old server
  • Go to MENU > SERVER > EXPORT DATABASE
  • Select the table that contains your vBulletin data
  • Choose a Save Path for the sql file, like to your desktop or something
  • Start the SQL dump

I received an error because my user did not have LOCK Privileges. So to correct that:

  • In Advanced Option, uncheck 'LOCK TABLES'
  • Start the SQL dump again

=== UPLOAD VBULLETIN DATABASE TO NEW SERVER ===
=== Skip this step if your old vBulletin forum is on the same server as xenforo ===

Once you have the SQL file on your desktop, then you need to import it to the database on your new server.

My phpMyadmin has an upload limit of 128 mb, and my vBulletin file was 800 mb. So I could not import the data directly to the database using phpmyadmin, I had to use an alternate method of uploading the file first, then after, add it to the database.

  • Open an FTP client
  • Connect to the new XenForo server
  • Transfer the SQL from your desktop (or wherever it is) to the root directory of your server (or wherever you want it on your server)
  • The location on the server does not matter, you can delete once we're done. But the root makes it easier to find later

=== IMPORT THE SQL FILE TO THE EMPTY VBULLETIN DATABASE ===
=== Skip this step if your old vBulletin forum is on the same server as xenforo ===

First you need to open an SSH connection, then use a command line to import the uploaded SQL file to your empty vBulletin database. Check you hosting panel for SSH details.

  • Open a CMD prompt and SSH in to the XenForo server
  • Use this generic command line:
  • mysql -u <username> -p <database_name> < <file.sql>
  • Fill it in with the vBulletin database you wrote down during the first step. It should look something like this:
  • mysql -u DB_UserName -p vBulletin_DB_name < vBulletin_dump.sql

Your file.sql name should be the full path. If you uploaded to the root, then you should be okay just using the file name, otherwise you need to use /home/full_path/file.sql

  • Press enter
  • It should ask you for the password
  • Input the password

- Pro tip: If your password is on a notepad, then just copy it <ctrl-c> and in your SSH terminal, right click on your mouse to paste it. You will not see anything happen, but after you press enter, it should work.

- If everything works, go to next the step, skipping the comment below

- If you encounter an error, try this:

My hosting company seems to assign my databases to different sub-servers. For example:

  • my xenforo database was assigned: sql384.your-server.com
  • and my vB database was assigned: sql900.your-server.com

If this is the case, the add an extra -h line to your command, so it looks like this:

  • mysql -u <username> -p -h <new vbulletin database server ip> <database_name> < <file.sql>
  • mysql -u DB_UserName -p -h sql900.your-server.com vBulletin_DB_name < vBulletin.sql
  • Press enter
  • It should ask you for the password
  • Input the password

=== DONE ===

And your done. Now you just need to run the importer.

=== RUNNING THE IMPORTER ===


=== THANKS ===
  • Thank to Chromaniac for getting me started!
  • And thanks to google, stackexchange, superuser, stackoverflow, etc. for filling in the rest of the details.
  • And yes I know dummy's is spelled dummies. :)
 
Can I start off by just importing forums? I need to set up banners and some other stuff. Can I import forums and then import the rest of the stuff at a later time ?
 
The only thing you can do is use the importer for forums, then manually import banners and other stuff, or use the XF API to import other stuff afterwards. But I am not aware of any importer that you can use twice.

P.S. I used the importer to import post, users, and forums, first.... and then the API to import avatars afterwards. It was a pain and I wish I did it all at once.
 
Top Bottom