This API affects only the database partition where the API is run. In DB2® pureScale® environments, this API can be run from any member and can trigger, when needed, a group crash recovery, which performs the crash recovery for all members of the group, or to trigger a member crash recovery.
None
This API establishes a database connection.
db2ApiDf.h
SQL_API_RC SQL_API_FN
db2DatabaseRestart (
db2Uint32 versionNumber,
void * pParmStruct,
struct sqlca * pSqlca);
typedef struct db2RestartDbStruct
{
char *piDatabaseName;
char *piUserId;
char *piPassword;
char *piTablespaceNames;
db2int32 iOption;
} db2RestartDbStruct;
SQL_API_RC SQL_API_FN
db2gDatabaseRestart (
db2Uint32 versionNumber,
void * pParmStruct,
struct sqlca * pSqlca);
typedef struct db2gRestartDbStruct
{
db2Uint32 iDatabaseNameLen;
db2Uint32 iUserIdLen;
db2Uint32 iPasswordLen;
db2Uint32 iTablespaceNamesLen;
char *piDatabaseName;
char *piUserId;
char *piPassword;
char *piTablespaceNames;
} db2gRestartDbStruct;
Call this API if an attempt to connect to a database returns an error message, indicating that the database must be restarted. This action occurs only if the previous session with this database terminated abnormally (due to power failure, for example).
At the completion of this API, a shared connection to the database is maintained if the user has CONNECT privilege, and an SQL warning is issued if any indoubt transactions exist. In this case, the database is still usable, but if the indoubt transactions are not resolved before the last connection to the database is dropped, another call to the API must be completed before the database can be used again.
In the case of circular logging, a database restart operation will fail if there is any problem with the table spaces, such as an I/O error, an unmounted file system, and so on. If losing such table spaces is not an issue, their names can be explicitly specified; this will put them into drop pending state, and the restart operation can complete successfully.
RESTART DATABASE database_alias [USER username USING password]