## org.h2.tools
Class Backup

    java.lang.Object
      org.h2.util.Tool
          org.h2.tools.Backup

    public class Backup

extends Tool

Creates a backup of a database.
This tool copies all database files. The database must be closed before using this tool. To create a backup while the database is in use, run the BACKUP SQL statement. In an emergency, for example if the application is not responding, creating a backup using the Backup tool is possible by using the quiet mode. However, if the database is changed while the backup is running in quiet mode, the backup could be corrupt.

H2.resource:

Field Summary

Fields inherited from class org.h2.util.Tool
`out`

Constructor Summary
`Backup()`

Method Summary
`static void` `execute(java.lang.String zipFileName, java.lang.String directory, java.lang.String db, boolean quiet)` Backs up database files.
`static void` `main(java.lang.String... args)` Options are case sensitive.
`void` `runTool(java.lang.String... args)` Run the tool with the given output stream and arguments.

Methods inherited from class org.h2.util.Tool
`isOption, printNoDatabaseFilesFound, setOut, showUsage, throwUnsupportedOption`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Backup

    public Backup()

Method Detail

### main

    public static void main(java.lang.String... args)
                     throws java.sql.SQLException

  Options are case sensitive. Supported options are:

  [-help] or [-?] | Print the list of options
  [-file <filename>] | The target file name (default: backup.zip)
  [-dir <dir>] | The source directory (default: .)
  [-db <database>] | Source database; not required if there is only one
  [-quiet] | Do not print progress information

  Parameters:
    `args` - the command line arguments
  Throws:
    `java.sql.SQLException`
  H2.resource:

### runTool

    public void runTool(java.lang.String... args)
                 throws java.sql.SQLException

  Description copied from class: `Tool`
  Run the tool with the given output stream and arguments.

  Specified by:
    `runTool` in class `Tool`
  Parameters:
    `args` - the argument list
  Throws:
    `java.sql.SQLException`

### execute

    public static void execute(java.lang.String zipFileName,
                               java.lang.String directory,
                               java.lang.String db,
                               boolean quiet)
                        throws java.sql.SQLException

  Backs up database files.

  Parameters:
    `zipFileName` - the name of the target backup file (including path)
    `directory` - the source directory name
    `db` - the source database name (null if there is only one database, and and empty string to backup all files in this directory)
    `quiet` - don't print progress information
  Throws:
    `java.sql.SQLException`