MARIADB-HOTCOPY(1)
πΈ MARIADB-HOTCOPY β the manual page, bestie edition πΈ
okay so you opened man mariadb-hotcopy and now you're here, and honestly? iconic of you. this is the mariadb-hotcopy page from the MariaDB Database System, and we're gonna get you fluent in it. no cap.
β¨ NAME β¨
mariadb-hotcopy β a database backup program (and yes, the page says mariadb-hotcopy is now a symlink to mariadb-hotcopy β I know, I know, she's her own twin, we don't question it π
).
π¦ SYNOPSIS π¦
mariadb-hotcopy arguments
that's it. that's the whole vibe. arguments go in, backups come out.
π DESCRIPTION π
so mariadb-hotcopy is a Perl script that was originally written and contributed by Tim Bunce. she uses FLUSH TABLES, LOCK TABLES, and cp or scp to make a database backup. it's a fast way to back up the whole database or just single tables, but bestie, listen β she can only be run on the same machine where the database directories are located. no remote shenanigans. also she works only for backing up MyISAM and ARCHIVE tables. she runs on Unix and NetWare.
to use mariadb-hotcopy, you must have:
- read access to the files for the tables you're backing up π
- the
SELECTprivilege for those tables - the
RELOADprivilege (so you can executeFLUSH TABLES) - the
LOCK TABLESprivilege (so you can, you guessed it, 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
want to back up only the tables in a given database that match a regular expression? say less:
shell> mariadb-hotcopy db_name./regex/
and you can negate that regex 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. π«Ά
π OPTIONS π
--help,-?β display a help message and exit. she's helpful like that.--addtodestβ do not rename the target directory (if it exists); merely add files to it.--allowoldβ do not abort if a target exists; rename it by adding an_oldsuffix.--checkpoint=db_name.tbl_nameβ insert checkpoint entries into the specified databasedb_nameand tabletbl_name.--chroot=pathβ base directory of the chroot jail in whichmariadbdoperates. thepathvalue should match that of the--chrootoption given tomariadbd.--debugβ enable debug output.--dryrun,-nβ report actions without performing them. the dress rehearsal of options. β¨--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 tolocalhostusing a Unix socket file.--keepoldβ do not delete the previous (renamed) target when done.--method=commandβ the method for copying files (cporscp). the default iscp.--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 withmyisamchk -rq.--old-serverβ connect to an old MySQL-server (before v5.5) which doesn't haveFLUSH TABLES WITH READ LOCKfully implemented..--password=password,-ppasswordβ 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. π please, bestie, protect your password.
--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. (her "not me, I'm just chilling" era.)--record_log_pos=db_name.tbl_nameβ record master and slave status in the specified databasedb_nameand tabletbl_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 themaster.infofile after locking all the tables.--socket=path,-S pathβ the Unix socket file to use for connections tolocalhost.--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 info about the structure of the tables needed for the --checkpoint and --record_log_pos options. iykyk. π
shell> perldoc mariadb-hotcopy
π COPYRIGHT π
Copyright 2007-2008 MySQL AB, 2008-2010 Sun Microsystems, Inc., 2010-2025 MariaDB Foundation
this documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.
this documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. see the GNU General Public License for more details.
you should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/.
π§ SEE ALSO π§
for more information, please refer to the MariaDB Documentation, available online at https://mariadb.com/docs/
π AUTHOR π
MariaDB Foundation (http://www.mariadb.org/).
and that's the whole page, bestie. you ate. π β¨
this was MariaDB 11.8, dated 5 March 2025, straight from the MARIADB-HOTCOPY(1) page β go forth and back up responsibly. ππ¦π
π¦ where this page comes from
- alpine 3.24: mariadb-doc 11.8.9-r0 Β· GPL-2.0-only
- arch rolling: mariadb 13.0.2-2 Β· GPL-2.0-only
- arch rolling: mariadb-lts 12.3.3-2 Β· GPL-2.0-only
- centos-stream 10: mariadb11.8-client-utils 3:11.8.8-1.el10 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- centos-stream 9: mariadb-client-utils 3:11.8.8-1.module_el9+1370+ec5ecc2e Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- debian trixie: mariadb-client-compat 1:11.8.6-0+deb13u1 Β· GPL-2.0-only
- fedora 43: mariadb11.8-client-utils 3:11.8.8-1.fc43 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- fedora 43: mariadb12.3-client-utils 3:12.3.2-2.fc43 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- fedora 44: mariadb-client-utils 3:11.8.6-2.fc44 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- fedora 44: mariadb-client-utils 3:11.8.8-3.fc44 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- fedora 44: mariadb12.3-client-utils 3:12.3.2-2.fc44 Β· ( GPL-2.0-only OR Apache-2.0 ) AND ( GPL-2.0-or-later OR Apache-2.0 ) AND BSD-2-Clause AND BSD-3-Clause AND CC-BY-4.0 AND GPL-2.0-only AND GPL-2.0-or-later AND GPL-3.0-or-later AND ( GPL-3.0-or-later WITH Bison-exception-2.2 ) AND LGPL-2.0-only AND LGPL-2.0-or-later AND LGPL-2.1-only AND LGPL-2.1-or-later AND OpenSSL AND MIT AND OFL-1.1 AND CC0-1.0 AND PHP-3.0 AND PHP-3.01 AND zlib AND dtoa AND FSFAP AND blessing AND Info-ZIP AND Boehm-GC
- nixpkgs unstable: mariadb-server 11.8.8
- opensuse-leap 16.0: mariadb-tools 11.8.8-160000.1.1 Β· SUSE-GPL-2.0-with-FLOSS-exception
- opensuse-leap 16.0: mariadb-tools 11.8.8-160000.1.1 Β· SUSE-GPL-2.0-with-FLOSS-exception
- opensuse-leap 16.0: mariadb-tools 11.8.8-160000.1.1 Β· SUSE-GPL-2.0-with-FLOSS-exception
- opensuse-leap 16.0: mariadb-tools 11.8.8-160000.1.1 Β· SUSE-GPL-2.0-with-FLOSS-exception
- ubuntu resolute: mariadb-client-compat 1:11.8.6-5 Β· GPL-2.0-only
- ubuntu resolute: mariadb-client-compat 1:11.8.6-5ubuntu0.1 Β· GPL-2.0-only
- ubuntu stonking: mariadb-client-compat 1:11.8.9+ds-4ubuntu2 Β· GPL-2.0-only
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms