Basically, you upgrade on a copy of your live database so as to leave live database untouched in case you mess up the upgrade.

eva2000's upgrade process

My vB 3.8.x to vB 4.1.x upgrade process which I personally use myself as well as for private paying clients is as follows and assumes:
  1. you have ssh2 telnet access
  2. your vB 3.x forums are only using MySQL default MyISAM/Memory tables with NO InnoDB tables
  3. you have enough free disk space to hold all the backups approximately 3x to 6x times the size of your forum database/files/attachments in free disk space.
  4. public root directory = /home/username/public_html
  5. live database name = livedbname
  6. new databasename name = newdbname

Step 1. Tune php and mysql settings specifically for backup, restore and upgrade process. Tune mysql to ensure enough memory is allocated to buffers to speed things up, increase timeout values for mysql to ensure no mysql timeouts and for php. Ensure mysql server has InnoDB support disabled otherwise youll have to deal with InnoDB tuning parameters before you start as vB4 automatically converts 6 tables to InnoDB if mysql server has InnoDB support enabled. Read the reasons of how and why youd want InnoDB support disabled in my blog post at and if you do decide to use InnoDB storage engine for some database tables, Id also look at upgrading your MySQL...