# SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE system procedure

The `SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE` system procedure backs up the database to a specified backup directory and enables the database for log archive mode.

See "Roll-forward recovery" in the Derby Server and Administration Guide for more information on using this procedure.

## Syntax

    SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE
    (IN BACKUPDIR VARCHAR(32672), IN SMALLINT DELETE_ARCHIVED_LOG_FILES)

No result is returned from the procedure.

BACKUPDIR
  An input argument of type VARCHAR(32672) that specifies the path to a directory, where the backup should be stored. Relative paths are resolved based on the current user directory, user.dir, of the JVM where the database backup is occurring. Relative paths are not resolved based on the derby home directory. To avoid confusion, use the absolute path
DELETE_ARCHIVED_LOG_FILES
  If the input parameter value for the DELETE_ARCHIVED_LOG_FILES parameter is a non-zero value, online archived log files that were created before this backup will be deleted. The log files are deleted only after a successful backup.

## Execute privileges

If authentication and SQL authorization are both enabled, only the database owner has execute privileges on this procedure by default. See "Configuring user authentication" and "Configuring user authorization" in the Derby Security Guide for more information. The database owner can grant access to other users.

## JDBC example

The following example backs up the database to the `c:/backupdir` directory:

    CallableStatement cs = conn.prepareCall
    ("CALL SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE(?, ?)");
    cs.setString(1, "c:/backupdir");
    cs.setInt(2, 0);
    cs.execute();

## SQL examples

The following example backs up the database to the `c:/backupdir` directory, enables log archive mode, and does not delete any existing online archived log files:

    SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE('c:/backupdir', 0)

The following example backs up the database to the `c:/backupdir` directory and, if this backup is successful, deletes existing online archived log files:

    SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE('c:/backupdir', 1)

Parent topic: Built-in system procedures
Related reference
SYSCS_UTIL.SYSCS_CHECK_TABLE system function
SYSCS_UTIL.SYSCS_BACKUP_DATABASE system procedure
SYSCS_UTIL.SYSCS_BACKUP_DATABASE_NOWAIT system procedure
SYSCS_UTIL.SYSCS_BACKUP_DATABASE_AND_ENABLE_LOG_ARCHIVE_MODE_NOWAIT system procedure
SYSCS_UTIL.SYSCS_FREEZE_DATABASE system procedure
SYSCS_UTIL.SYSCS_UNFREEZE_DATABASE system procedure