如何通过 Cloud SQL Admin API 删除所有者不是 cloudsqlsuperuser 的数据库?

问题描述 投票:0回答:1

我们有一个系统,可以在 Cloud SQL for PostgreSQL 实例中以编程方式创建和删除数据库。这些数据库的所有者不是

cloudsqlsuperuser

我们尝试通过

databases.delete
NPM 模块使用
@googleapis/sqladmin
API 调用来删除它们。但是,当我们调用它时,我们会收到此错误:

Invalid request: failed to delete database "DBNAmE".
Detail: pq: must be owner of database lportal.
(Please use psql client to delete database that is not owned by "cloudsqlsuperuser").

虽然我们可以尝试使用

psql
进行删除,或者使用 PostgreSQL Node 客户端来运行
DROP DATABASE
,但我想知道:

有没有办法通过 Cloud SQL Admin API 删除所有者不是

cloudsqlsuperuser
的数据库?

postgresql google-cloud-sql
1个回答
0
投票

有没有办法通过 Cloud SQL Admin API 删除所有者不是 cloudsqlsuperuser 的数据库?

该错误消息给我的印象是不存在。鉴于它已经指出要使用

psql
客户端。

也就是说,我想指出的是

@google-cloud/cloud-sql-connector
是 Google Cloud SDK 团队在
@googleapis/sqladmin
之上构建的一个方便的软件包,它使得连接到 Cloud SQL 实例变得更加简单和安全。

如果您决定使用节点客户端来运行

DROP DATABASE
,我强烈建议您尝试一下,您可以从quickstarterssamplestests开始。

© www.soinside.com 2019 - 2024. All rights reserved.