1. 程式人生 > 資料庫 >Oracle資料庫建立使用者與資料庫備份小結(必看篇)

Oracle資料庫建立使用者與資料庫備份小結(必看篇)

前言:使用Oracle開發系統過程中,會涉及到資料庫使用者的建立,及給該使用者分配許可權。剛開始接觸開發的時候,對這些操作是一種茫茫然的狀態。後,經過積累,對這方面有了一定的認識,現總結一些,一則,鞏固自身,也希望收到大家的指正;再則,希望能幫助疑惑的童鞋,實現人生的小价值,嘿嘿嘿。

建立使用者以及授權程式碼:

-- Create the user 
create user myName -- 建立使用者
 identified by myPwd --設定密碼
 default tablespace USERS --預設表空間 USERS
 temporary tablespace TEMP --預設臨時表空間 TEMP
 profile DEFAULT;

-- Grant/Revoke role privileges 給使用者 授予/撤銷 角色許可權

grant ctxapp to myName; --沒有搞清意思,但是沒有這句話,執行時,語句好像報錯
grant exp_full_database to myName; --賦給使用者 exp_full_database許可權 有這個許可權 就可以執行全庫方式的匯出
grant imp_full_database to myName; --賦給使用者 imp_full_database許可權 有這個許可權 就可以執行全庫方式的匯入


-- Grant/Revoke system privileges --給使用者授予/撤銷系統許可權
grant change notification to myName;
grant create any directory to myName;--建立任何資料夾
grant create any table to myName;--建立任何表
grant drop any directory to myName;--刪除任何資料夾
grant execute any procedure to myName;--執行任何儲存過程
grant unlimited tablespace to myName; --無限制的表空間配額

--直接將某些角色所有的許可權轉給使用者 
grant ctxapp to myName; --沒有搞清意思,但是沒有這句話,執行時,語句好像報錯
grant connect to myName;--將connect角色的許可權給myName使用者 
grant dba to myName; --將dba角色的許可權給myName使用者 
grant resource to myName;--將resource角色的許可權給myName使用者

如上程式碼所示,我建立使用者的程式碼共有四個小塊,

第一步是建立使用者,並預設表空間與臨時表空間(這兩個名詞解釋,在網上查閱了一番,還是有些茫然,先給出解釋的連線,再希望有心人能為我解惑),

第二步第三步是授權給該使用者一些具體許可權,各許可權具體功能可參考註釋

第四步是分別將三個角色的許可權轉給使用者,以下詳細介紹這三個角色

DBA:擁有全部特權,是系統最高許可權,只有DBA才可以建立資料庫結構。

RESOURCE:擁有Resource許可權的使用者只可以建立實體,不可以建立資料庫結構(比較疑惑這個概念)。

CONNECT:擁有Connect許可權的使用者只可以登入Oracle,不可以建立實體(實體應該就是資料庫,資料表、欄位、觸發器、儲存過程等吧),不可以建立資料庫結構。

對於普通使用者:授予connect,resource許可權。

對於DBA管理使用者:授予connect,resource,dba許可權。

注:資料庫結構與實體的概念我也有些模糊,對其的理解只是猜測,在網上也沒有查詢到詳細概念,希望專家解惑。。。。

關於各角色的具體許可權也可以通過以下sql語句進行查詢

select grantee,privilege from dba_sys_privs where grantee='RESOURCE' order by privilege;
select grantee,privilege from dba_sys_privs where grantee='CONNECT' order by privilege;
select grantee,privilege from dba_sys_privs where grantee='DBA' order by privilege;

如圖:查詢的是 RESOURCE 角色的許可權

關於建立使用者知識點的總結就到這裡了,還有一些不足的地方,望大家指正。

另附上在cmd 命令框架中,匯出,匯入資料庫的語句,請大家一併笑納,嘿嘿

匯出語句以及例項
exp 使用者名稱/密碼@伺服器IP/ORCL file=e:\0202daochu.dmp owner=(使用者名稱)
exp myName/[email protected]/ORCL file=e:\0202daochu.dmp owner=(myName)

匯入語句以及例項
imp 使用者名稱/密碼@伺服器IP/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log 
imp myName2/[email protected]/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log

以上語句是將 使用者名稱為 myName的資料庫匯出,在E盤生成檔案 0202daochu,

並通過匯入語句,將資料庫內容匯入給myName2使用者,並生成日誌檔案

以上這篇Oracle資料庫建立使用者與資料庫備份小結(必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。

大體操作流程: ctrl+r ,切出執行程式,輸入cmd,在控制檯輸入以上相應語句,即可,如下圖為匯出myName資料庫