10bet网址
MySQL 8.0参考手册
相关的文档10bet官方网站 本手册下载 本手册节选

17.4.1.1使用mysqldump备份副本

使用, mysqldump创建一个数据库的副本使您能够以一种格式捕获数据库中的所有数据,这种格式使信息能够导入到MySQL Server的另一个实例(参见第4.5.4节," mysqldump -一个数据库备份程序").因为信息的格式是SQL语句,所以当您在紧急情况下需要访问数据时,可以很容易地分发该文件并将其应用于正在运行的服务器。然而,如果你的数据集非常大,, mysqldump可能是不切实际的。

提示

考虑使用MySQL Shell转储工具提供多线程并行转储、文件压缩、进度信息显示等功能,以及Oracle云基础设施对象存储流、MySQL数据库服务兼容性检查和修改等云特性。可以很容易地将转储导入MySQL服务器实例或MySQL数据库服务数据库系统MySQL Shell加载转储工具.可以找到MySQL Shell的安装说明在这里

当使用, mysqldump,在启动转储之前,您应该停止在副本上的复制,以确保转储包含一致的数据集:

  1. 停止副本处理请求。可以使用在副本上完全停止复制mysqladmin

    壳> mysqladmin stop-slave

    或者,你可以只停止复制SQL线程来暂停事件执行:

    mysql mysql -e 'STOP REPLICA SQL_THREAD;'

    这使副本能够继续从源的二进制日志接收数据更改事件,并使用复制I/O线程将它们存储在中继日志中,但防止副本执行这些事件和更改其数据。在繁忙的复制环境中,允许在备份期间运行复制I/O线程可以在重新启动复制SQL线程时加快追赶进程。

  2. 运行, mysqldump转储数据库。您可以选择转储所有数据库,也可以选择需要转储的数据库。例如,转储所有数据库:

    Shell > mysqldump——all-databases > fulldb.dump
  3. 转储完成后,再次启动复制:

    壳> mysqladmin start-slave

在前面的示例中,您可能希望将登录凭证(用户名、密码)添加到命令中,并将该过程捆绑到一个脚本中,您可以每天自动运行该脚本。

如果使用这种方法,请确保监视复制过程,以确保运行备份所花费的时间不会影响副本跟上源事件的能力。看到第17.1.7.1节,“检查复制状态”.如果副本无法跟上,您可能需要添加另一个副本并分发备份进程。有关如何配置此场景的示例,请参见第17.4.6节,“将不同的数据库复制到不同的副本”