오늘은 오라클에서 권한에 대해서 알아보겠습니다^-^good~
[1] 어떤 테이블에 SELECT 권한 주기
ACET 계정에 ORACLE_TEMP 테이블에 SELECT 권한을 줄려고 한다면!!
===============================================
GRANT SELECT ON ORACLE_TEMP TO ACET
===============================================
[2] 함수 조회를 할 수 있도록 실행 권한 주기!
=========================
GRANT execute
ON 함수명
TO 사용자이름(스키마 이름)
=========================
[3] 권한 뭐뭐 있나 알아보자!
SELECT * FROM user_tab_privs_recd;
[4] 위에처럼 했는데도 아래의 에러가 나는 경우!~~(아마 다른 계정으로 SELECT 권한을 주고자 할 때!!)
즉, 디비링크 select * from ORACLE_TEMP@LK_ACET
라고 줬을 때 못찾는경우~~~~!!
바로 SYNONYM을 주지 않아서이다!!(여기에서는 다른계정으로 조회를 할 경우!!)
이럴 경우에는 SYNONYM를 만들어주므로써 해결 할 수 있다^-^
ex) 아래 처럼 기존 오브젝트(USER)를 쓰고자하는 USER로 SYNONYM 해 줌으로써 해결 할 수 있다^-^good
CREATE SYNONYM ACET.ORACLE_TEMP FOR ORG.ORACLE_TEMP
GRANT SELECT ON ORG.ORACLE_TEMP TO ACET
특히!!! SYNONYM 생성 시 어디를 기준으로 만들어줄지 고민이 될 것이다!
ACET에?? 아니면 ORG 계정에???
당연히 쓰고자하는 계정에다가 만들어주면 된다.
ACET에^0^ good~
'DataBase > Oracle' 카테고리의 다른 글
ORA-28001: the password has expired (0) | 2013.10.28 |
---|---|
ora-01031 (0) | 2012.04.24 |
java.sql.SQLException : ORA-00904 (0) | 2012.04.24 |
ORA-01008: not all variables bound (0) | 2012.04.06 |
ORA-12154: TNS:could not resolve service name (0) | 2012.03.22 |