MySQL - 备份超过 90 天的数据的最佳方式

MySQL - Best way to back up data older than 90 days

我们有一个很大的 MySQL 数据库(~400 GB)。

目前,我们有 2 年多以前的历史数据。

目前,我们计划只在主数据库中保留最近 90 天的数据,并定期将旧数据移出。

目前,我们正在考虑将数据移动到 Google Big Query,因为它是一个更便宜的选择。

如果客户请求一些旧数据(这种情况并不常见),我们计划提供来自 Big Query 的数据。

我想知道是否有更好的方法/技术来做到这一点?

您的数据量不大。 BigQuery 支持高达 PB 级的规模。还支持导入最大 5 TB 的文件。

我们已经实现了您的用例。 我们定期将 MySql 数据库备份到 BigQuery。

  1. mysql 控制台,SELECT INTO FILE 语法生成 csv 或 tsv。您可能需要替换无效字符。
  2. 上传到google云端
  3. 从 GCS 发出 BQ 导入命令到 BigQuery(您可以使用预定义架构或自动架构)

时间上,第一步和第二步耗时最长,大约20分钟。在 BigQuery 中导入大约需要 30 秒到 1 分钟。