This document describes how to upgrade an existing refbase installation to the most recent version. See the 'UPDATE' file that comes with the refbase package for latest information regarding the update process.

Backup your database & settings

We strongly recommend to backup your existing refbase database before proceeding! You may also want to make a backup copy of your refbase scripts folder. It's especially important that you make a backup copy of the files db.inc.php and ini.inc.php (which are located within the initialize subdirectory of your refbase base directory).

Download and install scripts

Download the latest stable release version (or, alternatively, get the latest development version of refbase from the refbase SVN repository). Then, unpack the download archive (if necessary) and copy all refbase scripts to your server's web directory.

If you haven't done already, you may want to download Bibutils and copy the binaries to an executable path. Bibutils provides additional import and export funtionality to refbase (e.g. support for Endnote & BibTeX). It is optional, but highly recommended. See here for help on how to enable Bibutils for an existing refbase installation.

Re-apply your database settings

Open the new files db.inc.php and ini.inc.php and insert again your modifications from the old db.inc.php and ini.inc.php files which you backed up in step 1. A good text editor (or file comparison tool) that is able to compare two versions of the same file can help to solve this task.

Update MySQL database

There are two methods (web-based & manual) to update the refbase MySQL database. The web-based update method uses the update.php script and is highly recommended since it's update mechanism is generally smarter and more flexible than the manual update method which uses update.sql. In any case, your data should remain untouched by the update operation.

Note that the update process requires a MySQL user that has administrative permissions for the refbase MySQL database, which must include these permissions:

SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, INDEX

Web-based update

Point your web browser to update.php, supply the user name and password of a MySQL user that has administrative permissions for the refbase MySQL database (see above), and click the "Update" button to complete the update process. A detailed log will be generated for all performed update actions.

Manual update

If, for some reason, you cannot use the (recommended) web-based update method, you can use the MySQL structure file (update.sql) that comes with the refbase package to manually add/alter the MySQL tables that were added/changed in the newest refbase version. To perform the database update, open a command line shell, make your deployment directory the current working directory (cd ...) and execute the following command:

mysql -h localhost -uADMINUSER -p --database=DATABASE_NAME < update.sql

where DATABASE_NAME is the database name that you've specified in variable $databaseName (in file initialize/db.inc.php) for refbase. ADMINUSER must be replaced with the name of the MySQL user that has administrative permissions for the refbase MySQL database (see above). You'll be asked for the password of this user to confirm execution of this command.


You should now have a working installation of the most recent refbase version.

Let us know, if you run into any problems!