
В моем экземпляре postgres есть две роли:роль1ироль2.
Я запускаю следующий набор команд как суперпользователь.
GRANT CREATE on DATABASE database1 TO role1;
\c database1;
SET ROLE role1;
CREATE SCHEMA schema1;
SET ROLE "user who is super user";
GRANT USAGE on SCHEMA schema1 TO role2;
GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA schema1 TO role2;
Затем я использую role1 для создания таблиц в схеме schema1. Владелец таблиц — role1.
По какой-то причине, когда я выполняю \dt на database1 как role2, я не вижу никаких таблиц. Разве я не должен видеть таблицы в schema1, поскольку у меня есть все привилегии на все таблицы?