我试图导入转储扩展它,从SQL摘录:
CREATE EXTENSION IF NOT EXISTS plpgsql WITH SCHEMA pg_catalog; COMMENT ON EXTENSION plpgsql IS 'PL/pgSQL procedural language'; CREATE EXTENSION IF NOT EXISTS hstore WITH SCHEMA public; COMMENT ON EXTENSION hstore IS 'data type for storing sets of (key, value) pairs';
导入(通过Gcloud SQL UI)失败,出现SET SET SET SET SET SET CREATE EXTENSION ERROR: must be owner of extension plpgsql 。
这是一个可以理解的错误(GCloud服务用户没有权限),但它没有帮助。 如果由UI触发并手动设置所有权,我无法控制恢复过程,Google云SQL不允许授予angular色超级用户权限(并且这样做不是处理此问题的好方法)。
在这种情况下最好的行动是什么?
只要没有人回答,所以我会告诉我如何克服这一点。
以postgres用户身份连接到您的实例,连接到template1 DB并安装所需的扩展(如果它们在受支持的列表中 )。
从Cloud SQL UI中删除并重新创build您的数据库。 也许手动工作,但我决定不testing。 用户界面告诉你,新的数据库将使用template1创build。
在我的情况下,只有plpgsql和hstore扩展,所以没有问题。