mysqldump - MySQL 数据库备份程序


mysqldump 客户端实用程序有助于执行逻辑备份,从而生成一组可以执行的 SQL 语句,以重新生成原始数据库对象定义和表数据。

mysqldump 用法

  • 它转储一个或多个 MySQL 数据库以进行备份或传输到另一个 SQL 服务器。

  • mysqldump 命令还可以生成 CSV、其他分隔文本或 XML 格式的输出。

  • mysqldump 实用程序至少需要转储表的 SELECT 权限、转储视图的 SHOW VIEW 权限、转储触发器的 TRIGGER 权限、如果未使用 --single-transaction 选项则需要 LOCK TABLES 权限,以及如果未使用 --no-tablespaces 选项则需要 PROCESS 权限。

  • 可以克隆数据库以用于开发和 DBA 工作,或者可以用来生成现有数据库的细微变化,这些变化可能需要用于测试目的。

  • 对于大规模备份和恢复,建议进行物理备份,然后以其原始格式复制数据文件,从而快速恢复数据

  • 如果表主要是 InnoDB 表,或者如果混合使用 InnoDB 和 MyISAM 表,则使用 mysqlbackup 命令用于 MySQL Enterprise Backup 产品。它为 InnoDB 备份提供最佳性能,并且干扰最小。

  • mysqldump 还可以用于逐行检索和转储表内容,或者可以用于检索表中的整个内容并在转储之前将其缓冲到内存中。

语法

有三种方法可以使用 mysqldump,转储一组一个或多个表、一组一个或多个完整数据库或整个 MySQL 服务器。它们已在下面显示 -

shell> mysqldump [options] db_name [tbl_name ...]
shell> mysqldump [options] --databases db_name ...
shell> mysqldump [options] --all-databases

如果用户希望转储整个数据库,则不应命名 db_name 后面的表,或者必须使用 --databases 或 --all-databases 选项。

更新时间: 2021年3月10日

361 次浏览

开启你的 职业生涯

完成课程获得认证

开始学习
广告