Timescale Cloud:性能、规模、企业级

自托管产品

MST

MySQL 是一种开源关系型数据库管理系统 (RDBMS)。

本页将指导您如何从运行 MySQL 8 或更早版本的数据库中导入数据到您的 Timescale Cloud 服务。

最佳实践是使用与您的 Timescale Cloud 服务位于同一区域的 Ubuntu EC2 实例作为迁移机器。也就是说,该机器用于运行命令,将数据从源数据库移动到目标 Timescale Cloud 服务。

数据迁移前

  • 创建目标 Timescale Cloud 服务

    每个 Timescale Cloud 服务都有一个单一数据库,支持最流行的扩展。Timescale Cloud 服务不支持表空间,并且没有与服务关联的超级用户。最佳实践是创建一个至少有 8 个 CPU 的 Timescale Cloud 服务,以获得更流畅的体验。更高规格的实例可以显著缩短整个迁移窗口。

  • 为确保在此过程中不进行维护,请调整维护窗口

  • 在您的迁移机器上安装 Docker

    此机器需要足够的空间来存储数据复制过程中发生的缓冲更改。此空间与迁移期间写入 Timescale Cloud 服务的新未压缩数据量成比例。一般经验法则是 100GB 到 500GB 之间。

为了加快数据传输速度,最佳实践是让源数据库、目标服务以及运行数据导入的系统位于同一区域。

从 MySQL 数据库导入数据

  1. 设置目标服务的连接字符串

    此变量保存目标 Timescale Cloud 服务的连接信息。

    在源机器的终端中,设置以下内容

    export TARGET=postgres://tsdbadmin:<PASSWORD>@<HOST>:<PORT>/tsdb?sslmode=require

    您可以在创建服务时下载的配置文件中找到 Timescale Cloud 服务的连接信息。

  2. 设置源数据库的连接字符串

    SOURCE="mysql://<mysql_username>:<mysql_password>@<mysql_host>:<mysql_port>/<mysql_database>?sslmode=require"

    其中

    • <mysql_username>:您的 MySQL 用户名
    • <mysql_password>:您的 MySQL 密码
    • <mysql_host>:MySQL 服务器主机名或 IP 地址
    • <mysql_port>:MySQL 服务器端口,默认是 3306
    • <mysql_database>:您的 MySQL 数据库名称
  3. 导入您的数据

    在您的数据导入机器上,运行以下命令

    docker run -it ghcr.io/dimitri/pgloader:latest pgloader
    --no-ssl-cert-verification \
    "$SOURCE" \
    "$TARGET"
  4. 验证数据是否已正确导入到您的服务中

就是这样,您已从 MySQL 导入了数据。

关键词

在此页面上发现问题?报告问题 或 在 GitHub 上编辑此页面