oracle 是面向使用者的,在 oracle 中一般只有乙個資料庫database,可以在資料庫中建立多個不同的使用者user,給使用者建立許可權和分配角色。而mysql是面向資料庫的,可以建立多個資料庫,在資料庫中建立表、索引等。
oracle 建立使用者
oracle 中可以用create user命令來建立使用者
建立使用者基本語法:
--建立使用者
create user userinfo identified by 123456 account lock
詳細語法:
--建立使用者,使用者名稱,一般為字母數字型和「#」及「_」符號;使用者口令,一般由字母數字型和「#」及「_」符號
create user [使用者名稱] identified by [口令]
--如果新建使用者時指定了identified externally,那麼該使用者只能通過作業系統進行身份驗證
or identified exeternally
--表示使用者名稱由oracle安全域中心伺服器驗證,cn名字表示使用者的外部名
or identified globally as 『cn=user』
--預設表空間,tablespace表空間名稱
[default tablespace tablespace]
--預設臨時表空間,temptablespace臨時表空間名稱
[temporary tablespace temptablespace]
--使用者可以使用的表空間的位元組數
[quota [integer k[m] ] [unlimited] ] on tablespace
--使用者可以使用的臨時表空間的位元組數
[,quota [integer k[m] ] [unlimited] ] on temptablespace
--資源檔名稱
[profiles profile_name]
--用來設定使用者口令過期、失效,強制使用者登入資料庫時候必須修改口令
[password expire]
--使用者是否被加鎖,預設情況下是不加鎖的
[account lock or account unlock]
oracle 分配角色/許可權
乙個新建使用者或者新建角色是沒有任何的許可權的,需要手動分配角色和許可權,語法如下:
grant 角色|許可權 to 使用者|角色
常用的系統許可權:
系統許可權
許可權操作
create user
建立使用者許可權
drop user
刪除使用者許可權
create session
連線資料庫許可權
create view
建立檢視許可權
create sequence
建立序列許可權
create table
使用者框架建立表許可權
create any table
任意框架建立表許可權
drop table
使用者框架刪除表許可權
drop any table
任意框架刪除表許可權
create procedure
建立儲存過程許可權
execute any procedure
任意框架執行儲存過程許可權
create synonym
建立同義詞許可權
為使用者分配系統許可權:
--基本語法
grant 許可權1, 許可權2, ... to user_name ;
--為使用者userinfo 分配連線資料庫、建立使用者和建立檢視的許可權
grant create session, create user, create view to userinfo ;
為使用者分配某種許可權後,使用者才能進行該許可權的操作,例如上面已經為使用者userinfo 分配連線資料庫、建立使用者和建立檢視的許可權,但是沒有分配刪除使用者、建立序列等等的許可權,該使用者就不能進行刪除使用者、建立序列...,所以oracle將許可權進行了封裝,某些許可權封裝成乙個角色,再將角色分配給使用者。
常用角色:
connect角色: 是授予終端使用者的典型權利,最基本的權利,能夠連線到oracle資料庫
alter session ------------------ 修改會話
create cluster------------------ 建立聚簇
create database link---------- 建立資料庫鏈結
create sequence---------------- 建立序列
create session-------------------建立會話
create synonym---------------- 建立同義詞
create view ----------------------建立檢視
resource角色: 是授予開發人員的,提供給使用者另外的許可權,如建立他們的表,序列,過程,觸發器,索引等,但不能建立檢視。
create cluster ------------------建立聚簇
create procedure --------------建立過程
create sequence ----------------建立序列
create table ---------------------建表
create trigger ------------------建立觸發器
create type ----------------------建立型別
dba角色:是授予系統管理員的,dba角色擁有所有的系統許可權,使用者system擁有dba角色
為使用者分配角色:
--將角色賦予使用者
grant connect to userinfo;--允許使用者連線資料庫
grant resource to userinfo;--允許使用者建立相關的資料庫物件,如表,序列等。
--多個角色賦予乙個使用者可合併一條語句
grant connect,resource to userinfo;
oracle 自定義角色
語法:
--建立角色
create role myrole;
--為角色賦予許可權
grant create table, create view to myrole;
--將角色賦予使用者
grant myrole to userinfo;
oracle **角色/許可權
基本語法:
--**角色|許可權語法
rovoke 許可權 [on 使用者.表名稱] from 使用者;
--**userinfo使用者的 myrole 角色
rovoke myrole from userinfo;
oracle刪除使用者
一般以dba的身份去刪除某個使用者,如果用其它使用者去刪除使用者則需要具有drop user的許可權。
基本語法:
--刪除使用者:在刪除使用者時,如果要刪除的使用者,已經建立了表,那麼就需要在刪除的時候帶乙個引數cascade,即把該使用者及表一同刪除;
drop user 使用者名稱 [cascade];
--刪除使用者userinfo(userinfo使用者未建立表)
drop user userinfo;
--刪除使用者userinfo(userinfo使用者已建立表)
drop user userinfo cascade;
oracle修改使用者
--修改使用者的密碼語法
alter user userinfo identified by 654321
--預設為鎖定狀態,解除鎖定
alert user userinfo account unlock
參考部落格: ORACLE資料庫檢視使用者許可權
1.檢視所有使用者 select from dba users select from all users select from user users 2.檢視使用者或角色系統許可權 直接賦值給使用者或角色的系統許可權 select from dba sys privs select from u...
Oracle資料庫(十三) 控制使用者許可權
資料庫安全性 系統許可權 對於資料庫的許可權 物件許可權 運算元據庫物件的許可權 超過一百多種有效的許可權 資料庫管理員 dba 具有高階許可權以完成管理任務,例如 oracle登入使用者為system使用者,system使用者是乙個dba dba使用create user語句建立使用者 使用atg...
Oracle資料庫許可權
oracle系統提供三種許可權 object 物件級 system 系統級 role 角色級。許可權分類 1 系統許可權 系統規定使用者使用資料庫的許可權。系統許可權是對使用者而言 2 實體許可權 某種許可權使用者對其它使用者的表或檢視的訪問許可權。是針對表或檢視而言的 系統許可權主要有 dba 擁...