我试图将所有权限授予用户,以便访问公共架构中的表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选项授予对象特权或以超级用户身份授予这些特权时,才能授予对象特权。