第17章 复制
发布日期:2021-05-08 00:28:20 浏览次数:27 分类:精选文章

本文共 1851 字,大约阅读时间需要 6 分钟。

MySQL 复制 是 数据库 管理 中 的 一个 重要 但 相对 低调 的 功能。它 的 目 的 是 将 数据 从 一个 MySQL 服务器(称 为 源) 复制 到 一个 或 多个 MySQL 服务器(称 为 副本)。默认情况下,复制 是 异步 的,这意味着 副本 不 需要 始终 与 源 保持 连接 以 接收 更新。然而,复制 的 配置 可 根据 需要 进行 调整,涵盖 数据库 的 全部 数据、特定 数据库,甚至 是 特定的 表。

MySQL 复制 的 优 点

MySQL 复制 提供了 多个 重要 的 优 点:

  • 扩展 解决方案:通过 将 负载 分散 到 多个 副本, 可 以 提高 性能。这种 模型 中,所有 写 操作 和 更新 都 必须 在 源 服务器 上 进行,而 读 操作 可以 在 一 或 多个 副本 中 进行。这种 设计 可以 提高 写 操作 的 性能(因为 源 专门 用于 更新),同时 增加 副本 数量 可以 显著 提高 读 取 速度。

  • 数据 安全性:由于 副本 可以暂停 复制 过程, 因此 可以 在 副本 上 运行 备份 服务,而 不会 影响 源 数据。

  • 分析:可以 在 源 上 创建 实时 数据, 而 对 数据 的 分析 可以 在 副本 上 进行,从而 不 影响 源 的 性能。

  • 远程 数据 分发:通过 复制 创建 数据 的 本地 副本, 可以供 远程 站点 使用,而 无需 直接 对 源 进行 访问。

  • 复制 的 配置 选 项

    MySQL 8.0 支持 不同 的 复制 方式。传统的 复制 方法 基于 源 的 二进制 日志 复制 事件,并 需要 在 源 和 副本 之间 同步 日志 文件 和 其 中 的 位置。新的 基于 全局 事务 标识符(GTIDs)的 方法 是 事务性 的,因此 不 需要 处理 日志 文件 或 其 中 的 位置。这 大大 简化 了 许多 常见 的 复制 任务。只要 在 源 上 提交 的 所有 事务 也 都 应用 在 副本 上,使用 GTIDs 的 复制 就 可以 保证 源 和 副本 之间 的 一致性。

    复制 的 类型

    MySQL 复制 支持 不同 类型 的 同步。原始的 同步 类型 是 单向 的 异步 复制,其中 一个 服务器充当 源,而 另一个 或 多个 服务器充当 副本。这与 NDB 集群 的 同步 复制 形成了鲜明 对比(参见 相关 文档)。在 MySQL 8.0 中,除了 内置 的 异步 复制 外,还 支持 半 同步 复制。在 半 同步 复制 中,在 返回 到 执行 事务 的 会话 之前,直到 至少 有一个 副本 承认 它 已经 接收 到 事务 并 记录 了 事务 的 事件, 才会 在 源 上 执行 提交 操作(参见 相关 文档)。MySQL 8.0 还 支持 延迟 复制,这样 副本 会 故意 比 源 延迟 至少 指定 的 时间(参见 相关 文档)。对于 需要 同步 复制 的 场景,请 使用 NDB 集群(参见 相关 文档)。

    复制 的 应用场景

    有 许多 解决方案 可以 用于 设置 服务器 之间 的 复制, 最佳 的 使用 方法 取决于 数据 的 存储位置 和 您 使用 的 引擎 类型。有关 可用 选项 的 更多 信息,请 参见 相关 文档。

    复制 的 格式

    复制 格式 有 两种 核心 类型:基于 语句 的 复制(SBR), 它 复制整个 SQL 语句;基于 行 复制(RBR), 它 只 复制 更改过 的 行。您 还 可以 使用 第三种 类型,基于 混合 复制(MBR)。有关 不同 复制 格式 的 更多 信息,请 参见 相关 文档。

    复制 的 控制 选项

    复制 是 通过 许多 不同 的 选项 和 变量 来 控制 的。有关 更多 信息,请 参见 相关 文档。可以 将 附加 的 安全措施 应用 到 复制拓扑 中,如 所述。

    复制 的 安全措施

    为了 保障 复制 过程 的 安全性,可以 应用 多种 安全措施到 复制 拓扑 中,如 密钥 交换、访问 控制 列表(ACL)、证书 验证 等。这些 安全措施 可以 防止 未 经 许可 的 访问 或 数据 泄露。

    通过 以上 方法, 复制 不仅 是 数据 备份 的 工具 还 是 系统 故障 应对 的 有力 方案。它 可以 帮助 提高 整体 系统 的 可用性 和 性能。有关 如何 解决 性能、支持 不同 数据库 的 备份 等 问题 的 更多 信息,请 参见 相关 文档。

    上一篇:第6章 安全性
    下一篇:第16章 可供选择的存储引擎

    发表评论

    最新留言

    第一次来,支持一个
    [***.219.124.196]2025年05月02日 00时11分31秒