Database:Documentation
From OpenSimulator
This page documents the databases tables used in OpenSimulator.
Tables are split up into Common, Services and Simulator.
On a grid, the grid services will contain the Services and Common tables, whilst each simulator instance will access the Simulator tables.
A standalone will contain Common, Services and Simulator tables, with the exception of the regions table, which is not currently persisted for standalones.
SQLite is generally not considered appropriate for this use case and will not be covered here; however the table structures are very similar and most of what is here will be useful in that context as well.
Note that some of these tables may be relics, some may be planned for future use, and some may see heavy use but have columns which are relics, not yet properly updated or not yet used at all.
There is a common package for database code, OpenSim.Data and each database has its own package (e.g. OpenSim.Data.MySQL).
Each database package has to supply implementations for the interfaces in OpenSim.Data. For instance, IAssetData is the asset interface, used by OpenSimulator to store and retrieve asset data.
Organization
OpenSimulator 0.9.x onwards
Robust
|
Simulator
Estates
|
OpenSimulator 0.8.1 onwards
TODO
OpenSimulator 0.7.2 onwards
Migrations supports automatic upgrade to new database formats.
Robust
|
Simulator
Estates
|
Older information
This mainly pertains to OpenSimulator 0.6.9.
Services: | |
agents | Records agent (Avatar/User) login details |
assets | Comprehensive grid assets including textures and avatar inventories |
avatarappearance | Persistence of the visual appearance of avatars between logins |
avatarattachments | Items attached to avatars |
inventoryfolders | Inventory folder-related details *except contents* |
Contents are in the inventoryitems table and point back to inventoryfolders | |
inventoryitems | All inventory item details (including folder associations) except contents |
Contents are referenced in the assets table | |
migrations | Supports 'automagic' migration to new database formats |
regions | Regions known to the grid |
userfriends | Friends list registration |
users | Stored user profile |
Simulator: | |
estate groups | Narrowly purposed at present. Appears to associate UUIDs under an Estate ID |
estate managers | Associates UUIDs with Estate ID |
estate map | Associates Regions with Estates By Estate ID |
estate settings | Settings for Estates |
estate users | Users allowed on the Estate |
estateban | Users banned from the Estate |
land | Parcel Properties |
landaccesslist | Parcel Access List |
migrations | Supports 'automagic' upgrade to new database formats |
primitems | Contains the prim's inventory, which is not at all unlike the avatars |
inventory with the exception of folders | |
prims | All rezzed prim details *except shape and contents* |
primshapes | Properties of all rezzed prims |
regionban | Per-Region ban list |
regionsettings | Per-Region settings |
terrain | Terrain mesh revision history |