IceStorm Database Utility

The icestormdb utility is a command-line tool for importing and exporting an IceStorm database. This tool is especially useful when migrating to Ice 3.7, where IceStorm uses a different database implementation and storage format. Using icestormdb, you can export your existing IceStorm 3.6 database and then import the data using the Ice 3.7 version of icestormdb.

On this page:

Usage

The IceStorm Database utility supports the following command-line options:

Usage: icestormdb <options>
Options:
-h, --help             Show this message.
-v, --version          Display version.
--import FILE          Import database from FILE.
--export FILE          Export database to FILE.
--dbhome DIR           The database directory.
-d, --debug            Print debug messages.

Exporting an IceStorm Database

To export an IceStorm database, use the --export option to specify the output file and the --dbhome option to specify the path name of the service's database environment. To discover the location of your database environment, review the service's configuration and look for the setting of Freeze.DbEnv.IceStorm.DbHome. For example, the IceStorm sample programs typically use this setting:

Freeze.DbEnv.IceStorm.DbHome=db

Run the following command to export the database:

$ icestormdb --export icestorm.ixp --dbhome db

The utility will fail with an error message if the given path does not contain an IceStorm database.

Importing an IceStorm Database

To import an IceStorm database, use the --import option to specify the input file and the --dbhome option to specify the path name of the service's database environment. For example, use the following command to import a database into the dbNew directory from a file named icestorm.ixp:

$ icestormdb --import icestorm.ixp --dbhome dbNew

The target directory must be empty.