Oracle資料庫建立只讀使用者
阿新 • • 發佈:2020-12-17
建立一個只讀使用者user2,只能查詢管理員使用者user1下的表,不能增刪改。
操作環境:PL/SQL Developer
1、用管理員使用者user1登入,建立使用者user2、並授權
--建立使用者user1,密碼123456 create user user2 identified by 123456; --授權 grant connect to user2; grant create synonym to user2; grant create session to user2;
2、授予user2的查詢表許可權:複製下面的查詢結果,執行
select 'grant select on'||owner||'.'||object_name||' to user2;' from dba_objects where owner in ('USER1') and object_type in ('VIEW','PROCEDURE','TABLE','FUNCTION');
3、為user2建立同義詞:複製下面的查詢結果,執行
select 'create or replace SYNONYM user2.' || object_name|| ' FOR ' || owner || '.' || object_name|| ';' from dba_objects whereowner in ('USER1') and object_type in ('VIEW','PROCEDURE','TABLE','FUNCTION');
測試:
用user2登入資料庫,查詢正常,增刪改提示沒有許可權。