# mariadb-hotcopy

## NAME



           mariadb-hotcopy - a database backup program (mariadb-hotcopy is
           now a symlink to mariadb-hotcopy)
    


## SYNOPSIS



    
           **mariadb-hotcopy** _arguments_
    


## DESCRIPTION



           **mariadb-hotcopy** is a Perl script that was originally written and
           contributed by Tim Bunce. It uses FLUSH TABLES, LOCK TABLES, and
           cp or scp to make a database backup. It is a fast way to make a
           backup of the database or single tables, but it can be run only on
           the same machine where the database directories are located.
           **mariadb-hotcopy** works only for backing up MyISAM and ARCHIVE
           tables. It runs on Unix and NetWare.
    
           To use **mariadb-hotcopy** , you must have read access to the files for
           the tables that you are backing up, the SELECT privilege for those
           tables, the RELOAD privilege (to be able to execute FLUSH TABLES),
           and the LOCK TABLES privilege (to be able to lock the tables).
    
               shell> **mariadb-hotcopy** _db_name_ **[**_/path/to/new_directory_**]**
    
               shell> **mariadb-hotcopy** _db_name_1_ **...**_db_name_n /path/to/new_directory_
    
           Back up tables in the given database that match a regular
           expression:
    
               shell> **mariadb-hotcopy** _db_name_**./**_regex_**/**
    
           The regular expression for the table name can be negated by
           prefixing it with a tilde (“~”):
    
               shell> **mariadb-hotcopy** _db_name_**./~**_regex_**/**
    
           **mariadb-hotcopy** supports the following options, which can be
           specified on the command line or in the [mariadb-hotcopy] and
           [client] option file groups.
    
           •   **--help** , **-?**
    
               Display a help message and exit.
    
           •   **--addtodest**
    
               Do not rename target directory (if it exists); merely add
               files to it.
    
           •   **--allowold**
    
               Do not abort if a target exists; rename it by adding an _old
               suffix.
    
           •   **--checkpoint=**_db_name_**.**_tbl_name_
    
               Insert checkpoint entries into the specified database _db_name_
               and table _tbl_name_.
    
           •   **--chroot=**_path_
    
               Base directory of the **chroot** jail in which **mariadbd** operates.
               The _path_ value should match that of the **--chroot** option given
               to **mariadbd**.
    
           •   **--debug**
    
               Enable debug output.
    
           •   **--dryrun** , **-n**
    
               Report actions without performing them.
    
           •   **--flushlog**
    
               Flush logs after all tables are locked.
    
           •   **--host=**_host_name_ , **-h** _host_name_
    
               The host name of the local host to use for making a TCP/IP
               connection to the local server. By default, the connection is
               made to localhost using a Unix socket file.
    
           •   **--keepold**
    
               Do not delete previous (renamed) target when done.
    
           •   **--method=**_command_
    
               The method for copying files (cp or scp). The default is cp.
    
           •   **--noindices**
    
               Do not include full index files for MyISAM tables in the
               backup. This makes the backup smaller and faster. The indexes
               for reloaded tables can be reconstructed later with **myisamchk**
               **-rq**.
    
           •   **--old-server**
    
               Connect to old MySQL-server (before v5.5) which doesn't have
               FLUSH TABLES WITH READ LOCK fully implemented..
    
           •   **--password=**_password_ , **-p** _password_
    
               The password to use when connecting to the server. The
               password value is not optional for this option, unlike for
               other MariaDB programs.
    
               Specifying a password on the command line should be considered
               insecure. You can use an option file to avoid giving the
               password on the command line.
    
           •   **--port=**_port_num_ , **-P** _port_num_
    
               The TCP/IP port number to use when connecting to the local
               server.
    
           •   **--quiet** , **-q**
    
               Be silent except for errors.
    
           •   **--record_log_pos=**_db_name_**.**_tbl_name_
    
               Record master and slave status in the specified database
               _db_name_ and table _tbl_name_.
    
           •   **--regexp=**_expr_
    
               Copy all databases with names that match the given regular
               expression.
    
           •   **--resetmaster**
    
               Reset the binary log after locking all the tables.
    
           •   **--resetslave**
    
               Reset the master.info file after locking all the tables.
    
           •   **--socket=**_path_ , **-S** _path_
    
               The Unix socket file to use for connections to localhost.
    
           •   **--suffix=**_str_
    
               The suffix to use for names of copied databases.
    
           •   **--tmpdir=**_path_
    
               The temporary directory. The default is /tmp.
    
           •   **--user=**_user_name_ , **-u** _user_name_
    
               The MariaDB user name to use when connecting to the server.
    
           Use perldoc for additional **mariadb-hotcopy** documentation,
           including information about the structure of the tables needed for
           the **--checkpoint** and **--record_log_pos** options:
    
               shell> **perldoc mariadb-hotcopy**
    


* * *