본문 바로가기
Database

오라클 SYNONYM 및 GRANT

by 전재훈 2018. 8. 24.
반응형

오라클 계정_A에서 계정_B의 테이블을 참조할때는 SYSNONYM을 설정하고 GRANT(권한)을 줌으로 참조가 가능합니다.



1. GRANT(권한)


- GRANT SELECT ON 계정_B.테이블명 TO 계정_A;  

  (SELECT 자리에 SELECT, INSERT, UPDATE, DELETE 모두 가능합니다.)


- 이렇게 했을경우 계정_A로 접속 후 

  SELECT * FROM 계정_B.테이블명 으로 조회가 가능합니다.

  그러나 이럴경우 계정명과 테이블명을 같이 적어줘서 쿼리문이 복잡해집니다. 

  그리고 테이블 소유자가 나타나기 때문에 보안상 문제가 될수도 있습니다.

  이것을 해결해주기 위한 방식이 SYNONYM입니다.


2. SYNONYM


- 계정_A에서 계정_B의 특정 테이블을 참조할때 별칭(Alias)를 정해놓고, 참조 시 별칭을 이용할 수 있습니다.


- CREATE OR REPLACE SYNONYM 계정_A.테이블명 FOR 계정_B.테이블명;


- 이렇게 했을 경우 계정_A로 접속 후

  SELECT * FROM 테이블명 으로 조회가 가능하여

  쿼리문의 복잡도를 낮출 수 있고 보안까지 향상 시킬 수 있습니다.


- 추후 별칭을 지울때는 DROP SYNONYM 테이블명을 하시면됩니다.

반응형

댓글