我尝试为用户提供所有特权,以便在公共架构中访问表pg_largeobject
:
GRANT ALL PRIVILEGES ON SCHEMA PUBLIC TO my_user ;
甚至使用此:
GRANT ALL PRIVILEGES ON TABLE PG_LARGEOBJECT TO my_user;
返回此错误:
ERROR: permission denied for schema public
我如何赋予该用户特权,或者我应该使用具有超级用户特权的postgres
连接到数据库?
您必须是超级用户才能授予pg_largeobjects
的权限。
但是您永远不要那样做。
无需直接修改该系统目录,否则将危害PostgreSQL数据库的完整性。
要删除大对象,请使用
SELECT lo_unlink(4711);
这里4711是您要删除的大对象的OID。
仅当使用GRANT选项被授予这些特权或您以超级用户身份授予这些特权时,才可以授予对象特权。