【问题标题】:Migrating database with heroku pg:pull in detached state使用 heroku pg:pull 迁移数据库处于分离状态
【发布时间】:2021-12-17 13:20:14
【问题描述】:

我正在使用Heroku CLI pg:pull 命令将Heroku Postgres 连接的数据库从一个 Heroku 应用 (my-source-app) 迁移到另一个 (my-target-app) - 这两者都在我的控制范围内。

首先,我清除目标应用程序上的数据库;

heroku pg:reset -a my-target-app

然后启动 pg:pull

heroku pg:pull DATABASE $(heroku config:get DATABASE_URL -a my-target-app) --exclude-table-data='table5;table9' -a my-source-app

它似乎开始工作(传输模式,然后逐表传输数据),但速度很慢。原始数据库约为 20GB;大,但不无道理。如果我监控目标数据库的大小(通过 Heroku 仪表板),它的填充速度似乎只有大约 35MB/分钟。

我的问题;

  1. 这个命令是通过我的本地机器路由数据还是直接机器到机器?

  2. 有没有办法从进程中“分离”,然后监视它(我可以使用 Heroku 的 run:detached 命令),这样我就不需要在此期间保持在线?

  3. 有没有更好的方法在这里迁移数据(例如创建一个关注者并以某种方式将其切换到新应用程序;我已经尝试过,但没有成功)

【问题讨论】:

    标签: postgresql heroku heroku-cli


    【解决方案1】:

    回答具体问题;

    1. 在运行命令时,数据没有通过我的本地计算机复制。

    2. 最后,pg:pull 操作完成时,我仍然保持连接;似乎没有办法分离。

    3. 一个类似的功能(复制所有内容)是pg:copy - 请参阅docs - 这是一个可行的替代方案。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-19
      • 2018-03-07
      • 2018-11-22
      • 1970-01-01
      • 2015-11-13
      • 1970-01-01
      • 1970-01-01
      • 2016-09-20
      相关资源
      最近更新 更多