用于PostgreSQL的谷歌云SQL`work\u mem`

用于PostgreSQL的谷歌云SQL`work\u mem`,postgresql,google-cloud-sql,Postgresql,Google Cloud Sql,在那里。我想调整PostgreSQL的谷歌云SQL实例。目前,我正在努力消除分拣速度下降: Sort Method: external merge Disk: 39592kB 现在work\u mem设置为4MB,看起来太小了。阅读文档后,我没有找到如何更改此设置的方法。通过Web GUI和命令行是不可能的: $ gcloud sql instances patch reporting-dev --database-flags work_mem=128MB The following mes

在那里。我想调整PostgreSQL的谷歌云SQL实例。目前,我正在努力消除分拣速度下降:

Sort Method: external merge Disk: 39592kB 
现在
work\u 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.

对此有何想法?

您可以通过用户或数据库进行更改

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

用户覆盖db,db覆盖postgresql.conf/cluster设置。两个覆盖都改变了系统设置。。。由于安全设置,您可能无法使用它。

根据此设置,您可以在会话中设置它,但仅此而已。您也可以按用户或数据库进行设置。