前言:使用Oracle開發(fā)系統(tǒng)過程中,會涉及到數據庫用戶的建立,及給該用戶分配權限。剛開始接觸開發(fā)的時候,對這些操作是一種茫茫然的狀態(tài)。后,經過積累,對這方面有了一定的認識,現總結一些,一則,鞏固自身,也希望收到大家的指正;再則,希望能幫助疑惑的童鞋,實現人生的小價值,嘿嘿嘿。
創(chuàng)建用戶以及授權代碼:
-- Create the user
create user myName -- 創(chuàng)建用戶
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權限 有這個權限 就可以執(zhí)行全庫方式的導出
grant imp_full_database to myName; --賦給用戶 imp_full_database權限 有這個權限 就可以執(zhí)行全庫方式的導入
-- Grant/Revoke system privileges --給用戶授予/撤銷系統(tǒng)權限
grant change notification to myName;
grant create any directory to myName;--創(chuàng)建任何文件夾
grant create any table to myName;--創(chuàng)建任何表
grant drop any directory to myName;--刪除任何文件夾
grant execute any procedure to myName;--執(zhí)行任何存儲過程
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用戶
如上代碼所示,我創(chuàng)建用戶的代碼共有四個小塊,
第一步是創(chuàng)建用戶,并默認表空間與臨時表空間(這兩個名詞解釋,在網上查閱了一番,還是有些茫然,先給出解釋的連接,再希望有心人能為我解惑),
第二步與第三步是授權給該用戶一些具體權限,各權限具體功能可參考注釋
第四步是分別將三個角色的權限轉給用戶,以下詳細介紹這三個角色
DBA:擁有全部特權,是系統(tǒng)最高權限,只有DBA才可以創(chuàng)建數據庫結構。
RESOURCE:擁有Resource權限的用戶只可以創(chuàng)建實體,不可以創(chuàng)建數據庫結構(比較疑惑這個概念)。
CONNECT:擁有Connect權限的用戶只可以登錄Oracle,不可以創(chuàng)建實體(實體應該就是數據庫,數據表、字段、觸發(fā)器、存儲過程等吧),不可以創(chuàng)建數據庫結構。
對于普通用戶:授予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 角色的權限

關于創(chuàng)建用戶知識點的總結就到這里了,還有一些不足的地方,望大家指正。
另附上在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用戶,并生成日志文件
以上這篇Oracle數據庫創(chuàng)建用戶與數據庫備份小結(必看篇)就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
大體操作流程: ctrl+r ,切出運行程序,輸入cmd ,在控制臺輸入以上相應語句,即可,如下圖為導出myName數據庫

您可能感興趣的文章:- 解決oracle12c創(chuàng)建用戶提示ORA-65096:公用用戶名或角色無效問題
- 使用sqlplus命令行工具為oracle創(chuàng)建用戶和表空間
- oracle創(chuàng)建表空間、授權、創(chuàng)建用戶、導入dmp文件
- Oracle 創(chuàng)建用戶及數據表的方法
- oracle命令行刪除與創(chuàng)建用戶的代碼
- oracle創(chuàng)建用戶過程詳解