К основному контенту

Администратор всея CDB

Раньше для создания административного пользователя достаточно было выдать любому права dba.
Но в 12c, создав пользователя:


grant dba to c##dbax container=all;

Подключившись с cdb$root и запросив gv$session получим отображение только сессий работающих в root'овом контейнере.

Пользователь может видеть сессии работающие в других контейнерах только перейдя в соответствующий контейнер.

alter session set container=axpdb1;

В то же время, при подключении "sys as sysdba" запрос к gv$session возвращает сессии по всей базе.
Хочется администрировать всю инфраструктуру, но не подключаться без нужды под sys'ом.


Решение следующее.


connect system@root -- под sys’ом не получилось.

ALTER USER c##dbax SET CONTAINER_DATA = (CDB$ROOT,AXPDB1) FOR GV$SESSION CONTAINER=CURRENT;

Тут мы разрешаем пользователю c##dbax во время нахождения в контейнере root просматривать информацию из gv$session касающуюся контейнеров CDB$ROOT и AXPDB1.

Комментарии