PostgreSQL 15.1:已授权仍提示public schema权限拒绝,求解决方法
解决PostgreSQL创建表时"permission denied for schema public"的问题
可能的原因及解决方案
1. 重新确认并授予Schema权限
权限授予可能未正确生效,重新以超级用户执行以下命令:
GRANT USAGE, CREATE ON SCHEMA public TO pippo;
执行后让pippo用户重新连接数据库,再尝试创建表。
2. 检查并设置用户搜索路径
如果pippo用户的默认搜索路径不包含public,也会触发该错误:
- 以pippo用户连接后,查看当前搜索路径:
SHOW search_path; - 若结果中无
public,临时设置搜索路径:SET search_path TO public; - 要永久配置该用户的搜索路径,以超级用户执行:
ALTER USER pippo SET search_path TO public;
3. 核查public模式的权限配置
以超级用户执行以下命令查看public模式的权限详情:
\dn+ public
确认输出中包含pippo=UC/postgres(U代表USAGE权限,C代表CREATE权限)。如果缺失,重新执行步骤1的授权命令。
内容的提问来源于stack exchange,提问作者Flatline1963
相关产品推荐
相关产品推荐

