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/myPwd@127.0.0.1/ORCL file=e:\0202daochu.dmp owner=(myName)

導入語句以及實例
imp 用戶名/密碼@服務器IP/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log 
imp myName2/myPwd2@127.0.0.1/ORCL ignore=y full=y file=e:\0202daochu.dmp log=e:\log0202.log

 

以上語句是將 用戶名為 myName的數據庫導出,在E盤生成文件 0202daochu,

並通過導入語句,將數據庫內容導入給myName2用戶,並生成日志文件

 

大體操作流程:  ctrl+r ,切出運行程序,輸入cmd ,在控制台輸入以上相應語句,即可,如下圖為導出myName數據庫

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM