Starting a Storage Manager

A Storage Manager (SM) may have already been started when you created the database. For more information, see Creating a Database. Having created an archive and a database, you may start an SM using the nuocmd start process command.

nuocmd start process --db-name <database name> --engine-type SM  --archive-id <archive ID> --server-id <server ID>

The start process command is used to explicitly start one or more SMs. You can also start one or more SMs implicitly using the start database command. For more information, see Restarting a Database.

The start process command and the start database command are issued using NuoDB Command (nuocmd). For more information on NuoDB Command and other command line tools, see Command Line Tools.

An SM serving a storage group SG may only be started if one or both of the following are true:

  1. One or more SMs serving SG are already in the RUNNING state.

  2. There are no TEs in the RUNNING state.

An error such as the following is generated if the condition above is not met:

EXIT: SM serving storage group 'SG1' attempting to join a database containing TEs while the storage group is offline

In such cases, shut down all TEs before starting the SM.


This section describes parameters that can be provided when starting a SM.

Parameter Description Comments


The database name associated with the archive previously created.

See Creating an Archive for more information.


The type of process to be started.

SM is case-sensitive.


The unique ID of the archive already created.

For information on the archive ID previously generated, see Creating an Archive.


The unique ID for the admin process on the host machine (where the archive exists).



Starts the database with the database options provided.

Separate options values and options using a space character. For more information about the available database options, see Database Options.


The following example shows how to request an SM on the archive object already created, see Creating an Archive by specifying --archive-id 0 (which is bound to nuoadmin-0).

nuocmd start process --db-name hockey --engine-type SM --archive-id 0 --server-id nuoadmin-0
Process(archive_id=0, db_name=hockey, durable_state=REQUESTED, engine_state=UNKNOWN, engine_type=SM,
labels={}, options={log-over-conn: enable, verbose: error,warn, database: hockey,
region-name: Default, engine-type: SM, archive-id: 0, geo-region: 0, commit: safe, archive:
/var/opt/nuodb/production-archives/hockey}, region_name=Default, server_id=nuoadmin-0, start_id=1)

The create database command documented here specifies:
- The name of the database where the SM is to be started (hockey).
- The type of process to be started (SM).
- The archive ID of the archive previously created (0).
- The NuoDB Admin server where the SM is to started (nuoadmin-0).

The command output includes a non-configurable option log-over-conn.