【问题标题】:Google SQL - External Read Replica Not UpdatingGoogle SQL - 外部只读副本未更新
【发布时间】:2021-12-05 14:58:55
【问题描述】:

我们设置了一个 SQL 外部只读副本,它不会从外部源中提取任何更新,但是,副本的大小每天都在增加(源数据库的大小)。

查看一些指标,没有日志条目,也没有读/写操作,但有 CPU 滴答声,内存使用量一直保持不变。

如何确定发生了什么?它每天都在提取整个数据库大小,但不执行任何操作。日志中没有 SQL 错误。

在操作选项卡中,除了初始创建和播种之外,没有列出任何操作

【问题讨论】:

  • 我会伸出手来支持这个。他们可能需要查看帐户/项目,而您不应该这样做。 :)

标签: replication google-cloud-sql


【解决方案1】:

来自this other question

启用二进制日志后,云 sql 的存储空间将不断扩大。对于任何处于相同情况的人,您可以编辑实例并取消选中二进制日志,之后当前的二进制日志将被清除。

我建议检查您是否启用了二进制日志记录,并按照documentation 中的说明检查其大小。

使用SHOW BINARY LOGS MySQL 命令可以查看二进制日志的大小。

enabling binary logging的影响如下:

  • 性能开销
    Cloud SQL 使用基于行的复制和 MySQL 标志 sync_binlog=1innodb_support_xa=true。因此,每次写入操作都需要额外的磁盘fsync,这会降低性能。
  • 存储开销 二进制日志的存储按与常规数据相同的费率收费。二进制日志会自动截断到最旧的自动备份的年龄。 Cloud SQL 当前保留最近的七个自动备份和所有按需备份。二进制日志的大小以及收费金额取决于工作负载。例如,写入繁重的工作负载比读取繁重的工作负载消耗更多的二进制日志空间。

另一件可以增加存储的事情是启用时间点恢复 (PITR),因为它使用二进制日志。如果二进制日志的大小导致您的实例出现问题,documentation 建议:

  • 您可以增加实例存储大小,但磁盘使用量中的二进制日志大小增加可能是暂时的。
  • 我们建议启用automatic storage increase 以避免意外的存储问题。
  • 要删除日志并恢复存储,您可以禁用时间点恢复。但请注意,减少使用的存储空间并不会缩小为实例配置的存储空间的大小。
  • 日志每天清除一次,而不是连续清除。将日志保留时间设置为两天意味着至少保留两天的日志,最多保留三天的日志。我们建议将备份数设置为比日志保留天数多 1 天,以保证至少指定的日志保留天数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多