使用 Django 框架代码能连上 PostgreSQL,但是在 pgAdmin 尝试连接这个表,却报错:ERROR: permission denied for table xxx
此时用 pgAdmin 连接其他的表是正常的,就这个表连不上。
先用 SELECT * FROM current_user
和 SELECT USER
,看一下目前 pgAdmin 登录的用户是哪个。
原来 pgAdmin 的连接用户与 Django 的连接使用的不是一个用户呀。
试了 GRANT ALL PRIVILEGED ON DATABASE yyy TO xxx
,发现没用。
再试试 GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA public TO xxx;
,可以了。