Oracle創(chuàng)建只讀賬號(hào)的詳細(xì)步驟
需求說(shuō)明
現(xiàn)有數(shù)據(jù)庫(kù)賬號(hào):HEPSUSR:具有完整權(quán)限,增刪改查。
需要?jiǎng)?chuàng)建一個(gè)數(shù)據(jù)庫(kù)賬號(hào):HTREADER,對(duì)HEPSUSR賬號(hào)下所有的表具有只讀權(quán)限。
第一步:創(chuàng)建只讀賬號(hào)
--創(chuàng)建只讀賬號(hào) 第一步 CREATE USER htreader identified by 123456;
第二步:賦予賬號(hào)連接數(shù)據(jù)庫(kù)等基本權(quán)限
--賦予htreader連接等常規(guī)權(quán)限 grant connect to htreader; grant create view to htreader; grant create session to htreader; grant create synonym to htreader;
第三步:獲取原賬號(hào)的查詢權(quán)限
獲取原賬號(hào)HEPSUSR用戶的所有查詢表權(quán)限
select 'grant select on '||owner||'.'||object_name||' to htreader;'
from dba_objects
where owner in ('HEPSUSR')
and object_type='TABLE';
--查詢結(jié)果為新賬號(hào)的賦值語(yǔ)句,如下圖

第四步:將原賬號(hào)權(quán)限賦值為新賬號(hào)
在原賬號(hào)HEPSUSR下執(zhí)行,將原賬號(hào)的查詢權(quán)限 賦值給新賬號(hào) ------- grant select on HEPSUSR.ENTRY_CERT to htreader; grant select on HEPSUSR.SUB_MESSAGE_INFO to htreader; grant select on HEPSUSR.ENTRY_CERT_RELATION to htreader; grant select on HEPSUSR.ENTRY_CERT_RELATION to htreader; grant select on HEPSUSR.ENTRY_DECL_TAX to htreader; grant select on HEPSUSR.ENTRY_DOCU to htreader; grant select on HEPSUSR.ENTRY_FEES to htreader; grant select on HEPSUSR.ENTRY_GOODS_TAX to htreader; grant select on HEPSUSR.ENTRY_HEAD to htreader; grant select on HEPSUSR.ENTRY_LIST to htreader; grant select on HEPSUSR.ENTRY_WORKFLOW to htreader; grant select on HEPSUSR.IQ_APPEND to htreader; grant select on HEPSUSR.IQ_CERT to htreader; grant select on HEPSUSR.SUB_SWAP to htreader; grant select on HEPSUSR.VIN_LIST to htreader;
第五步:在新賬號(hào)端創(chuàng)建同位顯示表
因?yàn)樾聞?chuàng)建的只讀賬號(hào),Tables欄中顯示為空,我們需要在PL/SQL顯示欄中為新賬號(hào)登錄界面添加顯示同位元素,如下:
--在原賬號(hào)HEPSUSR端執(zhí)行,獲取需要顯示的表名稱
select 'create or replace SYNONYM htreader.'||object_name|| ' for ' ||owner|| '.'||object_name||';'
from dba_objects
where owner in ('HEPSUSR')
and object_type='TABLE'

第六步:查詢結(jié)果在新賬號(hào)端執(zhí)行
在只讀賬號(hào)HTREADER端執(zhí)行:添加顯示各個(gè)表信息;在SYSNONYM目錄下,tables目錄下無(wú)顯示 create or replace SYNONYM htreader.VIN_LIST for HEPSUSR.VIN_LIST; create or replace SYNONYM htreader.SUB_SWAP for HEPSUSR.SUB_SWAP; create or replace SYNONYM htreader.SUB_MESSAGE_INFO for HEPSUSR.SUB_MESSAGE_INFO; create or replace SYNONYM htreader.IQ_CERT for HEPSUSR.IQ_CERT; create or replace SYNONYM htreader.IQ_APPEND for HEPSUSR.IQ_APPEND; create or replace SYNONYM htreader.ENTRY_WORKFLOW for HEPSUSR.ENTRY_WORKFLOW; create or replace SYNONYM htreader.ENTRY_LIST for HEPSUSR.ENTRY_LIST; create or replace SYNONYM htreader.ENTRY_HEAD for HEPSUSR.ENTRY_HEAD; create or replace SYNONYM htreader.ENTRY_GOODS_TAX for HEPSUSR.ENTRY_GOODS_TAX; create or replace SYNONYM htreader.ENTRY_FEES for HEPSUSR.ENTRY_FEES; create or replace SYNONYM htreader.ENTRY_DOCU for HEPSUSR.ENTRY_DOCU; create or replace SYNONYM htreader.ENTRY_DECL_TAX for HEPSUSR.ENTRY_DECL_TAX; create or replace SYNONYM htreader.ENTRY_CONTAINER for HEPSUSR.ENTRY_CONTAINER; create or replace SYNONYM htreader.ENTRY_CERT_RELATION for HEPSUSR.ENTRY_CERT_RELATION; create or replace SYNONYM htreader.ENTRY_CERT for HEPSUSR.ENTRY_CERT;
第七步:執(zhí)行完成之后 登錄新賬號(hào),查看結(jié)果
新賬號(hào)可以查詢?cè)~號(hào)的所有表結(jié)構(gòu),但是無(wú)法執(zhí)行 增刪改相關(guān)操作

第八步:執(zhí)行刪除、修改sql語(yǔ)句測(cè)試

附錄:Oracle查詢賬號(hào)及權(quán)限詳細(xì)語(yǔ)句
1.查看所有用戶: select * from dba_users; select * from all_users; select * from user_users; 2.查看用戶或角色系統(tǒng)權(quán)限(直接賦值給用戶或角色的系統(tǒng)權(quán)限): select * from dba_sys_privs; select * from user_sys_privs; 3.查看角色(只能查看登陸用戶擁有的角色)所包含的權(quán)限 sql>select * from role_sys_privs; 4.查看用戶對(duì)象權(quán)限: select * from dba_tab_privs; select * from all_tab_privs; select * from user_tab_privs; 5.查看所有角色: select * from dba_roles; 6.查看用戶或角色所擁有的角色: select * from dba_role_privs; select * from user_role_privs;
以上就是Oracle創(chuàng)建只讀賬號(hào)的詳細(xì)步驟的詳細(xì)內(nèi)容,更多關(guān)于Oracle創(chuàng)建只讀賬號(hào)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- Oracle 區(qū)塊鏈表創(chuàng)建過程詳解
- Oracle多表查詢中間表的創(chuàng)建實(shí)例教程
- Oracle數(shù)據(jù)庫(kù)scott用戶創(chuàng)建view視圖權(quán)限的操作方法
- Navicat Premium中Oracle創(chuàng)建主鍵自增的方法
- Navicat for oracle創(chuàng)建數(shù)據(jù)庫(kù)的方法
- Oracle數(shù)據(jù)庫(kù)創(chuàng)建存儲(chǔ)過程的示例詳解
- 通過PLSQL Developer創(chuàng)建Database link,DBMS_Job,Procedure,實(shí)現(xiàn)Oracle跨庫(kù)傳輸數(shù)據(jù)的方法(推薦)
- oracle創(chuàng)建dblink方法示例
- Oracle 給rac創(chuàng)建單實(shí)例dg并做主從切換功能
- Oracle創(chuàng)建設(shè)置查詢權(quán)限用戶的方法
- Oracle創(chuàng)建新undo表空間最佳實(shí)踐(包含段檢查)
- 使用sqlplus命令行工具為oracle創(chuàng)建用戶和表空間
相關(guān)文章
Oracle表中重復(fù)數(shù)據(jù)去重的方法實(shí)例詳解
這篇文章主要介紹了Oracle表中重復(fù)數(shù)據(jù)去重的方法實(shí)例詳解的相關(guān)資料,需要的朋友可以參考下2017-07-07
oracle數(shù)據(jù)庫(kù)導(dǎo)出和oracle導(dǎo)入數(shù)據(jù)的二種方法(oracle導(dǎo)入導(dǎo)出數(shù)據(jù))
這篇文章主要介紹了oracle導(dǎo)入導(dǎo)出數(shù)據(jù)的二種方法,利用PL/SQL Developer工具導(dǎo)出和利用cmd的操作命令導(dǎo)出的出方法,大家參考使用吧2014-01-01
navicat導(dǎo)入oracle導(dǎo)出的dmp文件
現(xiàn)在工作中常用Oracle數(shù)據(jù)庫(kù),但是查詢工具還是Navicat最好用,不論是數(shù)據(jù)導(dǎo)入導(dǎo)出,還是執(zhí)行語(yǔ)句,都很清晰明了,下面這篇文章主要給大家介紹了關(guān)于navicat導(dǎo)入oracle導(dǎo)出的dmp文件的相關(guān)資料,需要的朋友可以參考下2023-05-05
PL/SQL登錄Oracle數(shù)據(jù)庫(kù)報(bào)錯(cuò)ORA-12154:TNS:無(wú)法解析指定的連接標(biāo)識(shí)符已解決(本地未安裝Oracle
這篇文章主要介紹了PL/SQL登錄Oracle數(shù)據(jù)庫(kù)報(bào)錯(cuò)ORA-12154:TNS:無(wú)法解析指定的連接標(biāo)識(shí)符已解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
調(diào)整Oracle數(shù)據(jù)庫(kù)的UNDO_RETENTION參數(shù)的方法
本文介紹了如何調(diào)整Oracle數(shù)據(jù)庫(kù)的UNDO_RETENTION參數(shù),包括查看當(dāng)前值、動(dòng)態(tài)和靜態(tài)調(diào)整方法,以及注意事項(xiàng),感興趣的朋友一起看看吧2025-03-03
oracle中日期與字符串的相互轉(zhuǎn)化的方法詳解
Oracle數(shù)據(jù)庫(kù)系統(tǒng)是世界上最廣泛使用的數(shù)據(jù)庫(kù)管理系統(tǒng)之一,尤其在企業(yè)級(jí)應(yīng)用中占據(jù)主導(dǎo)地位,其中,日期函數(shù)是Oracle SQL中非常重要的組成部分,它們用于處理和操作日期和時(shí)間數(shù)據(jù),本文將給大家介紹oracle中日期與字符串的相互轉(zhuǎn)化的方法,需要的朋友可以參考下2024-09-09
Oracle連接遠(yuǎn)程數(shù)據(jù)庫(kù)的四種方法
這篇文章主要為大家詳細(xì)介紹了Oracle連接遠(yuǎn)程數(shù)據(jù)庫(kù)的四種設(shè)置方法和注意事項(xiàng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-05-05
Oracle的數(shù)據(jù)字典技術(shù)簡(jiǎn)析
Oracle的數(shù)據(jù)字典技術(shù)簡(jiǎn)析...2007-03-03

