man pages section 1: User Commands

Exit Print View

Updated: July 2014

mysqlhotcopy (1)


mysqlhotcopy - a database backup program


mysqlhotcopy arguments


MySQL Database System                             MYSQLHOTCOPY(1)

     mysqlhotcopy - a database backup program

     mysqlhotcopy arguments

     mysqlhotcopy 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.  mysqlhotcopy works only
     for backing up MyISAM and ARCHIVE tables. It runs on Unix.

     To use mysqlhotcopy, 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> mysqlhotcopy db_name [/path/to/new_directory]

         shell> mysqlhotcopy db_name_1 ... db_name_n /path/to/new_directory

     Back up tables in the given database that match a regular

         shell> mysqlhotcopy db_name./regex/

     The regular expression for the table name can be negated by
     prefixing it with a tilde ("~"):

         shell> mysqlhotcopy db_name./~regex/

     mysqlhotcopy supports the following options, which can be
     specified on the command line or in the [mysqlhotcopy] and
     [client] groups of an option file. For information about
     option files, see Section, "Using Option Files".

     o   --help, -?

         Display a help message and exit.

     o   --addtodest

         Do not rename target directory (if it exists); merely
         add files to it.

     o   --allowold

         Do not abort if a target exists; rename it by adding an

MySQL 5.5            Last change: 03/22/2013                    1

MySQL Database System                             MYSQLHOTCOPY(1)

         _old suffix.

     o   --checkpoint=db_name.tbl_name

         Insert checkpoint entries into the specified database
         db_name and table tbl_name.

     o   --chroot=path

         Base directory of the chroot jail in which mysqld
         operates. The path value should match that of the
         --chroot option given to mysqld.

     o   --debug

         Enable debug output.

     o   --dryrun, -n

         Report actions without performing them.

     o   --flushlog

         Flush logs after all tables are locked.

     o   --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

     o   --keepold

         Do not delete previous (renamed) target when done.

     o   --method=command

         The method for copying files (cp or scp). The default is

     o   --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.

     o   --password=password, -ppassword

         The password to use when connecting to the server. The
         password value is not optional for this option, unlike

MySQL 5.5            Last change: 03/22/2013                    2

MySQL Database System                             MYSQLHOTCOPY(1)

         for other MySQL programs.

         Specifying a password on the command line should be
         considered insecure. See Section, "End-User
         Guidelines for Password Security". You can use an option
         file to avoid giving the password on the command line.

     o   --port=port_num, -P port_num

         The TCP/IP port number to use when connecting to the
         local server.

     o   --old_server

         As of MySQL 5.5.3, mysqlhotcopy uses FLUSH TABLES
         tbl_list WITH READ LOCK to flush and lock tables. Use
         the --old_server option if the server is older than
         5.5.3, which is when that statement was introduced. This
         option was added in MySQL 5.5.3.

     o   --quiet, -q

         Be silent except for errors.

     o   --record_log_pos=db_name.tbl_name

         Record master and slave status in the specified database
         db_name and table tbl_name.

     o   --regexp=expr

         Copy all databases with names that match the given
         regular expression.

     o   --resetmaster

         Reset the binary log after locking all the tables.

     o   --resetslave

         Reset the file after locking all the tables.

     o   --socket=path, -S path

         The Unix socket file to use for connections to

     o   --suffix=str

         The suffix to use for names of copied databases.

     o   --tmpdir=path

MySQL 5.5            Last change: 03/22/2013                    3

MySQL Database System                             MYSQLHOTCOPY(1)

         The temporary directory. The default is /tmp.

     o   --user=user_name, -u user_name

         The MySQL user name to use when connecting to the

     Use perldoc for additional mysqlhotcopy documentation,
     including information about the structure of the tables
     needed for the --checkpoint and --record_log_pos options:

         shell> perldoc mysqlhotcopy

     Copyright (C) 1997, 2013, Oracle and/or its affiliates. All
     rights reserved.

     This software and related documentation are provided under a
     license agreement containing restrictions on use and
     disclosure and are protected by intellectual property laws.
     Except as expressly permitted in your license agreement or
     allowed by law, you may not use, copy, reproduce, translate,
     broadcast, modify, license, transmit, distribute, exhibit,
     perform, publish, or display any part, in any form, or by
     any means. Reverse engineering, disassembly, or
     decompilation of this software, unless required by law for
     interoperability, is prohibited.

     The information contained herein is subject to change
     without notice and is not warranted to be error-free. If you
     find any errors, please report them to us in writing.

     If this software or related documentation is delivered to
     the U.S. Government or anyone licensing it on behalf of the
     U.S. Government, the following notice is applicable:

     U.S. GOVERNMENT RIGHTS Programs, software, databases, and
     related documentation and technical data delivered to U.S.
     Government customers are "commercial computer software" or
     "commercial technical data" pursuant to the applicable
     Federal Acquisition Regulation and agency-specific
     supplemental regulations. As such, the use, duplication,
     disclosure, modification, and adaptation shall be subject to
     the restrictions and license terms set forth in the
     applicable Government contract, and, to the extent
     applicable by the terms of the Government contract, the
     additional rights set forth in FAR 52.227-19, Commercial
     Computer Software License (December 2007). Oracle USA, Inc.,
     500 Oracle Parkway, Redwood City, CA 94065.

     This software is developed for general use in a variety of
     information management applications. It is not developed or

MySQL 5.5            Last change: 03/22/2013                    4

MySQL Database System                             MYSQLHOTCOPY(1)

     intended for use in any inherently dangerous applications,
     including applications which may create a risk of personal
     injury. If you use this software in dangerous applications,
     then you shall be responsible to take all appropriate fail-
     safe, backup, redundancy, and other measures to ensure the
     safe use of this software. Oracle Corporation and its
     affiliates disclaim any liability for any damages caused by
     use of this software in dangerous applications.

     Oracle is a registered trademark of Oracle Corporation
     and/or its affiliates. MySQL is a trademark of Oracle
     Corporation and/or its affiliates, and shall not be used
     without Oracle's express written authorization. Other names
     may be trademarks of their respective owners.

     This software and documentation may provide access to or
     information on content, products, and services from third
     parties. Oracle Corporation and its affiliates are not
     responsible for and expressly disclaim all warranties of any
     kind with respect to third-party content, products, and
     services. Oracle Corporation and its affiliates will not be
     responsible for any loss, costs, or damages incurred due to
     your access to or use of third-party content, products, or

     This document in any form, software or printed matter,
     contains proprietary information that is the exclusive
     property of Oracle. Your access to and use of this material
     is subject to the terms and conditions of your Oracle
     Software License and Service Agreement, which has been
     executed and with which you agree to comply. This document
     and information contained herein may not be disclosed,
     copied, reproduced, or distributed to anyone outside Oracle
     without prior written consent of Oracle or as specifically
     provided below. This document is not part of your license
     agreement nor can it be incorporated into any contractual
     agreement with Oracle or its subsidiaries or affiliates.

     This documentation is NOT distributed under a GPL license.
     Use of this documentation is subject to the following terms:

     You may create a printed copy of this documentation solely
     for your own personal use. Conversion to other formats is
     allowed as long as the actual content is not altered or
     edited in any way. You shall not publish or distribute this
     documentation in any form or on any media, except if you
     distribute the documentation in a manner similar to how
     Oracle disseminates it (that is, electronically for download
     on a Web site with the software) or on a CD-ROM or similar
     medium, provided however that the documentation is
     disseminated together with the software on the same medium.
     Any other use, such as any dissemination of printed copies

MySQL 5.5            Last change: 03/22/2013                    5

MySQL Database System                             MYSQLHOTCOPY(1)

     or use of this documentation, in whole or in part, in
     another publication, requires the prior written consent from
     an authorized representative of Oracle. Oracle and/or its
     affiliates reserve any and all rights to this documentation
     not expressly granted above.

     For more information on the terms of this license, or for
     details on how the MySQL documentation is built and
     produced, please visit blue]MySQL Contact & Questions].

     For additional licensing information, including licenses for
     third-party libraries used by MySQL products, see Preface
     and Legal Notices.

     For help with using MySQL, please visit either the
     blue]MySQL Forums] or blue]MySQL Mailing Lists] where you
     can discuss your issues with other MySQL users.

     For additional documentation on MySQL products, including
     translations of the documentation into other languages, and
     downloadable versions in variety of formats, including HTML
     and PDF formats, see the blue]MySQL Documentation Library].

     See attributes(5) for descriptions of the following

     |Availability   | database/mysql-55 |
     |Stability      | Uncommitted       |
     For more information, please refer to the MySQL Reference
     Manual, which may already be installed locally and which is
     also available online at

     Oracle Corporation (

     This software was built from source available at  The original
     community source was downloaded from

MySQL 5.5            Last change: 03/22/2013                    6

MySQL Database System                             MYSQLHOTCOPY(1)

     Further information about this software can be found on the
     open source community website at

MySQL 5.5            Last change: 03/22/2013                    7