代码之家  ›  专栏  ›  技术社区  ›  sashaegorov

Google Cloud SQL for PostgreSQL `work\u mem`

  •  2
  • sashaegorov  · 技术社区  · 7 年前

    那里我想调音 用于PostgreSQL的Google云SQL 例子目前,我正在努力消除分拣速度下降:

    Sort Method: external merge Disk: 39592kB 
    

    马上 work_mem 设置为 4MB ,看起来太小了。阅读文档后,我没有找到如何更改此设置的方法。通过Web GUI和命令行是不可能的:

    $ gcloud sql instances patch reporting-dev --database-flags work_mem=128MB
    The following message will be used for the patch API method.
    {"project": "xxx-153410", "name": "reporting-dev", "settings": {"databaseFlags": [{"name": "work_mem", "value": "128MB"}]}}
    WARNING: This patch modifies a value that requires your instance to be
     restarted. Submitting this patch will immediately restart your
    instance if it's running.
    
    Do you want to continue (Y/n)?  Y
    
    ERROR: (gcloud.sql.instances.patch) HTTPError 404: Flag requested cannot be set.
    

    有什么想法吗?

    1 回复  |  直到 7 年前
        1
  •  3
  •   Scott Marlowe    7 年前

    您可以按用户或数据库进行更改。

    alter database db1 set work_mem='64MB';
    alter user stan set work_mem='32MB';
    

    用户覆盖db,db覆盖postgresql。配置/群集设置。两者都覆盖更改系统集。。。由于安全设置,您可能无法使用。