메뉴 건너뛰기

Korea Oracle User Group

Admin

Fixed Table에 대한 권한은 직접적으로 부여되지 않는다.

 

X$, V$로 시작하는 Fixed Table, Dynamic Performance View의 경우 Select 권한이 직접적으로 부여되지 않는다.

만약 Grant 명령어로 부여하게 되는 경우 아래의 에러를 만나게 된다.

 

ORA-02030: can only select from fixed tables/views

 

Fixed Table(X$)의 경우 View를 생성해 View에 대한 권한을 주는 방식으로 해야 한다.

 

-- X$BH 테이블에 권한은 주려했으나 에러 발생
-- SYS 계정에서 아래와 같이 View 생성
CREATE VIEW IMSI_X$BH AS SELECT * FROM X$BH;
 
-- View 대한 권한을 부여하고 유저가 혼동하지 않도록 같은 명칭으로 Synonym 생성
GRANT SELECT ON IMSI_X$BH TO DB_MON;
 
CREATE SYNONYM DB_MON.X$BH FOR SYS.IMSI_X$BH;
 
-- 권한을 받은 유저에서 아래와 같이 SQL 문장을 수행하면 됨
SELECT *
FROM   DB_MON.X$BH;

 

Dynamic Performance View의 경우는 V$로 시작하는 view는 해당 명칭이 Synonym이므로 아래와 같이 권한을 부여하면 된다.

 

-- 권한 부여
GRANT SELECT ON SYS.V_$SESSION TH DB_MON;

 

 

 

위로