gcloud sql 导出表权限被拒绝

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

我正在使用 cmd

gcloud sql export
将我所有的数据库转储到存储中。几个月以来,它在 crontab 上运行良好。
现在我收到所有数据库的这个错误
pg_dump: error: query failed: ERROR:  permission denied for table ...

我已经检查了 serviceaccounts 权限,没有问题,我可以创建一个新的数据库并导出它,我已经检查了我在另一个实例上的设置等等。

如果我

grant select on all table in schema public to cloudsqlimportexport
它再次工作,所以问题似乎是用户cloudsqlimportexport突然失去了我所有数据库中的授权?我不明白这怎么可能,为什么我应该在我所有的数据库中再次授予它(我有很多数据库和很多模式!)。

在日志中我没有看到任何特别的东西(我可以准确地看到它附加的那一天),没有进行任何维护并且我不记得在我的实例上做了任何重要的事情。

如果我在最后一次工作导出前一天克隆我的实例,我仍然无法从此克隆中导出。

有解释吗?

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

我也有同样的问题。 在 3 月 15 日,我突然开始收到错误,但在 3 月 21 日,我能够在没有任何更改的环境中使其正常工作。 你的环境有什么变化吗?

据我验证,数据库所有者是cloudsqladmin以外的用户时似乎会发生这种情况。控制台屏幕上的导出功能出现错误。 我能够通过使用 grant 命令使 cloudsqlimportexport 具有与拥有数据库的用户相同的权限来使其工作。

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