如何从服务器上的PG DataBase表下载图像到生产机器?

时间:2017-09-28 14:31:20

标签: image postgresql paperclip activeadmin psql

我需要建议如何从服务器上运行的products table数据库中的postgres抓取图像。我们最近更改了应用程序,现在所有产品的图像都应存储在另一个名为images的表中。

因此,我们基本上需要从服务器获取图像,然后通过ActiveAdmin再次将其上传到新的images表。

我之前从未做过这样的事情,我不想弄乱或删除数据库。这就是为什么我在这里问这个问题,而不是在谷歌搜索之后关注一些旧的过时的教程:)

所以我的问题是:

  1. 如何仅将products table的图像下载到本地制作机器。?

  2. 我不想删除数据库或任何东西,只是想将这些图像下载到我的生产机器上。如果图像仍在旧表中,则可以。只想复制/粘贴它们,然后再手动上传它们。

  3. 我可以访问服务器上的psql shell。我的计划是通过shell完成它。我没有将PGAdmin连接到服务器。

  4. 这是图像在products

    中的方式
                               image_file_name                        | image_content_type | image_file_size 
    ---------------------------------------------------------------+--------------------+-----------------
     Green-Pins.png                                                | image/png          |          713679
     500156.jpg                                                    | image/jpeg         |          353280
    

    希望任何人都可以帮助我。

    以下是来自新image表的示例。我刚上传了三张新图片。

        mystore=> SELECT * FROM images;
     id | product_id |            image_file_name             | image_file_size | image_content_type |         created_at         |         updated_at         
    ----+------------+----------------------------------------+-----------------+--------------------+----------------------------+----------------------------
      1 |        104 | Screen_Shot_2016-05-26_at_15.09.50.png |          513442 | image/png          | 2017-09-28 16:19:35.944218 | 2017-09-28 16:19:35.944218
      2 |        104 | Screen_Shot_2016-05-26_at_15.08.32.png |          760101 | image/png          | 2017-09-28 16:19:35.954766 | 2017-09-28 16:19:35.954766
      3 |        104 | Screen_Shot_2016-05-27_at_00.44.39.png |          323387 | image/png          | 2017-09-28 16:19:35.962563 | 2017-09-28 16:19:35.962563
    (3 rows)
    

0 个答案:

没有答案