Upgrading

From OpenSimulator

Revision as of 09:01, 7 December 2008 by Aiaustin (Talk | contribs)

Jump to: navigation, search

Migrating between versions of OpenSim without changing database backends

Upgrading OpenSim so that your data stays intact is not too difficult. If you’re using MySQL or MSSQL as a backend database with standalone OpenSim then all you should have to do is copy over your bin/Regions xml files (and maybe your OpenSim.ini if you don’t want to re-enter your settings manually) to the new OpenSim version and start it.

If you're using grid mode then you will also need to copy the 5 xml files in the bin directory that govern the configuration of the UGAIM servers.

Note that estate_settings.xml if present is used for default values for estates, but the saved settting themselves are in the data base "estate_settings" tables (since r5525).

OpenSim contains code to automatically migrate all your data to conform to the newest formats. However, we would always suggest backing up your database beforehand in case something goes wrong during the conversion (e.g. you have a power cut).

Using sqlite (the default on disk database) is just a little more complicated. As well as copying bin/Regions and possibly OpenSim.ini, you also need to copy all the db files (AssetStorage.db, inventorystore.db, OpenSim.db and userprofile.db) to your new installation.

This process should always work between the last numbered versions (e.g. going from 0.5.9 to 0.6.0). It may also work for older versions (e.g. 0.5.8 to 0.6.0) though this is not guaranteed.


METHOD 1: If Using SQLite in StandAlone Mode

1. Build the latest version from source (or download the binaries)

2. Put this new installation in a new folder

3. Copy the following files from the old \bin to the new \bin
   - All *.db files
   - The opensim.ini file
   - The \bin\regions XML files
   - estate_settings.xml (if it has been amended)

4. Launch the new opensim.exe
METHOD 2: If Using MySQL in StandAlone Mode

1. Build the latest version from source (or download the binaries)

2. Put this new installation in a new folder

3. Copy the following files from the old \bin to the new \bin
   - The opensim.ini file
   - The \bin\regions XML files
   - estate_settings.xml (if it has been amended)

4. Launch the new opensim.exe
METHOD 3: If Using MySQL in Grid Mode

1. Build the latest version from source (or download the binaries)

2. Put this new installation in a new folder

3. Copy the following files from the old \bin to the new \bin
   - The opensim.ini file
   - The \bin\regions XML files
   - The 5 XML config files
   - estate_settings.xml (if it has been amended)

4. Launch services in the following order: UGAIM + R where "R" designates the region server (Opensim)

Migrating databases

Since SQLite is our default database, there often comes a time when people outgrow it and want to move on to another database backend (usually MySQL). There is a script on the forge at [1] which should be able to do the conversion. If it's out of date then just give the author/s a nudge (or patch it!)

An alternative method is to change to each region (change-region)before backing up to a separate filesave out OpenSim region archives (OARs) for each of your regions, change the database backend and then reload them. The disadvantage of this is that it's a little laborious if you have many regions, and your inventory will not be migrated (you would need to rez everything out to the region, convert, and then derez them again to your inventory).

You can use the "command-script" feature of OpenSim.exe to semi-automate this. For example:

Create a file in your "bin" directory, called something like "dobackup", which contains the necessary commands, for example:
change-region My Island 1
save-oar MI1
change-region My Island 2
save-oar MI2
change-region Another Region
save-oar AR
change-region root
This can be run from OpenSim.exe by typing "command-script" followed by the name you gave the script (eg "dobackup"). Note that this will overwrite the previous backup of the same name.
Personal tools
General
About This Wiki