欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Oracle新建用戶、角色,授權(quán),建表空間的sql語(yǔ)句

 更新時(shí)間:2012年07月04日 16:37:47   作者:  
Oracle創(chuàng)建用戶操作相信大家都不陌生,下面就為您介紹Oracle創(chuàng)建用戶的語(yǔ)法的相關(guān)知識(shí),希望對(duì)您學(xué)習(xí)Oracle創(chuàng)建用戶的方面能有所幫助
oracle數(shù)據(jù)庫(kù)的權(quán)限系統(tǒng)分為系統(tǒng)權(quán)限與對(duì)象權(quán)限。系統(tǒng)權(quán)限( database system privilege )可以讓用戶執(zhí)行特定的命令集。例如,create table權(quán)限允許用戶創(chuàng)建表,grant any privilege 權(quán)限允許用戶授予任何系統(tǒng)權(quán)限。對(duì)象權(quán)限( database object privilege )可以讓用戶能夠?qū)Ω鱾€(gè)對(duì)象進(jìn)行某些操作。例如delete權(quán)限允許用戶刪除表或視圖的行,select權(quán)限允許用戶通過(guò)select從表、視圖、序列(sequences)或快照(snapshots)中查詢信息。

  每個(gè)oracle用戶都有一個(gè)名字和口令,并擁有一些由其創(chuàng)建的表、視圖和其他資源。oracle角色(role)就是一組權(quán)限(privilege)(或者是每個(gè)用戶根據(jù)其狀態(tài)和條件所需的訪問(wèn)類型)。用戶可以給角色授予或賦予指定的權(quán)限,然后將角色賦給相應(yīng)的用戶。一個(gè)用戶也可以直接給其他用戶授權(quán)。

一、創(chuàng)建用戶

Oracle創(chuàng)建用戶的語(yǔ)法:

Oracle創(chuàng)建用戶(密碼驗(yàn)證用戶),可以采用CREATE USER命令。

CREATE USER username IDENTIFIED BY password

OR IDENTIFIED EXETERNALLY

OR IDENTIFIED GLOBALLY AS ‘CN=user'

[DEFAULT TABLESPACE tablespace]

[TEMPORARY TABLESPACE temptablespace]

[QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace

[,QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace

[PROFILES profile_name]

[PASSWORD EXPIRE]

[ACCOUNT LOCK or ACCOUNT UNLOCK]

其中,

CREATE USER username:用戶名,一般為字母數(shù)字型和“#”及“_”符號(hào)。

IDENTIFIED BY password:用戶口令,一般為字母數(shù)字型和“#”及“_”符號(hào)。

IDENTIFIED EXETERNALLY:表示用戶名在操作系統(tǒng)下驗(yàn)證,該用戶名必須與操作系統(tǒng)中所定義的用戶名相同。

IDENTIFIED GLOBALLY AS ‘CN=user':用戶名由Oracle安全域中心服務(wù)器驗(yàn)證,CN名字表示用戶的外部名。

[DEFAULT TABLESPACE tablespace]:默認(rèn)的表空間。

[TEMPORARY TABLESPACE tablespace]:默認(rèn)的臨時(shí)表空間。

[QUOTA [integer K[M] ] [UNLIMITED] ] ON tablespace:用戶可以使用的表空間的字節(jié)數(shù)。

[PROFILES profile_name]:資源文件的名稱。

[PASSWORD EXPIRE]:立即將口令設(shè)成過(guò)期狀態(tài),用戶再登錄前必須修改口令。

[ACCOUNT LOCK or ACCOUNT UNLOCK]:用戶是否被加鎖,默認(rèn)情況下是不加鎖的。

  oracle內(nèi)部有兩個(gè)建好的用戶:system和sys。用戶可直接登錄到system用戶以創(chuàng)建其他用戶,因?yàn)閟ystem具有創(chuàng)建別 的用戶的 權(quán)限。 在安裝oracle時(shí),用戶或系統(tǒng)管理員首先可以為自己建立一個(gè)用戶。例 如 :

復(fù)制代碼 代碼如下:

create user user01 identified by u01;

  該命令還可以用來(lái)設(shè)置其他權(quán)限,詳細(xì)情況參見(jiàn)自學(xué)資料。要改變一個(gè)口令,可以使用alter user命令:
復(fù)制代碼 代碼如下:

alter user user01 identified by usr01;

現(xiàn)在user01的口令已由“u01”改為“usr01”。

  除了alter user命令以外,用戶還可以使用password命令。如果使用password命令,用戶輸入的新口令將不在屏幕上顯示。有dba特權(quán)的用戶可以通過(guò)password命令改變?nèi)魏纹渌脩舻目诹?其他用戶只能改變自己的口令。

  當(dāng)用戶輸入password命令時(shí),系統(tǒng)將提示用戶輸入舊口令和新口令,如下所示:

  password
  changing password for user01
  old password:
  new password:
  retype new password:

  當(dāng)成功地修改了口令時(shí),用戶會(huì)得到如下的反饋:

  password changed

二 、刪除用戶

  刪除用戶,可以使用drop user命令,如下所示:
復(fù)制代碼 代碼如下:

  drop user user01;

  如果用戶擁有對(duì)象,則不能直接刪除,否則將返回一個(gè)錯(cuò)誤值。指定關(guān)鍵字cascade,可刪除用戶所有的對(duì)象,然后再刪除用戶。下面的例子用來(lái)刪除用戶與其對(duì)象:
復(fù)制代碼 代碼如下:

  drop user user01 cascade;


三 、3種標(biāo)準(zhǔn)角色

  qracle為了兼容以前的版本,提供了三種標(biāo)準(zhǔn)的角色(role):connect、resource和dba。

  1. connect role(連接角色)

  臨時(shí)用戶,特別是那些不需要建表的用戶,通常只賦予他們connectrole。connect是使用oracle的簡(jiǎn)單權(quán)限,這種權(quán)限只有在對(duì)其他用戶的表有訪問(wèn)權(quán)時(shí),包括select、insert、update和delete等,才會(huì)變得有意義。擁有connect role的用戶還能夠創(chuàng)建表、視圖、序列(sequence)、簇(cluster)、同義詞(synonym )、會(huì)話(session)和與其他數(shù)據(jù)庫(kù)的鏈(link)。

  2. resource role(資源角色)

  更可靠和正式的數(shù)據(jù)庫(kù)用戶可以授予resource role。resource提供給用戶另外的權(quán)限以創(chuàng)建他們自己的表、序列、過(guò)程(procedure)、觸發(fā)器(trigger)、索引(index)和簇(cluster)。

  3. dba role(數(shù)據(jù)庫(kù)管理員角色)

  dba role擁有所有的系統(tǒng)權(quán)限----包括無(wú)限制的空間限額和給其他用戶授予各種權(quán)限的能力。system由dba用戶擁有。下面介紹一些dba經(jīng)常使用的典型權(quán)限。

  (1)grant(授權(quán))命令

  下面對(duì)剛才創(chuàng)建的用戶user01授權(quán),命令如下:

  grant connect, resource to user01;

  (2)revoke(撤消)權(quán)限

  已授予的權(quán)限可以撤消。例如撤消(1)中的授權(quán),命令如下:
復(fù)制代碼 代碼如下:

  revoke connect, resource from user01;

  一個(gè)具有dba角色的用戶可以撤消任何別的用戶甚至別的dba的connect、resource 和dba的其他權(quán)限。當(dāng)然,這樣是很危險(xiǎn)的,因此,除非真正需要,dba權(quán)限不應(yīng)隨便授予那些不是很重要的一般用戶。 撤消一個(gè)用戶的所有權(quán)限,并不意味著從oracle中刪除了這個(gè)用戶, 也不會(huì)破壞用戶創(chuàng)建的任何表;只是簡(jiǎn)單禁止其對(duì)這些表的訪問(wèn)。其他要訪問(wèn)這些表的用戶可以象以前那樣地訪問(wèn)這些表。

四、創(chuàng)建角色

  除了前面講到的三種系統(tǒng)角色----connect、resource和dba,用戶還可以在oracle創(chuàng)建自己的role。用戶創(chuàng)建的role可以由表或系統(tǒng)權(quán)限或兩者的組合構(gòu)成。為了創(chuàng)建role,用戶必須具有create role系統(tǒng)權(quán)限。下面給出一個(gè)create role命令的實(shí)例:
復(fù)制代碼 代碼如下:

  create role student;

  這條命令創(chuàng)建了一個(gè)名為student的role。

  一旦創(chuàng)建了一個(gè)role,用戶就可以給他授權(quán)。給role授權(quán)的grant命令的語(yǔ)法與對(duì)對(duì)用戶的語(yǔ)法相同。在給role授權(quán)時(shí),在grant命令的to子句中要使用role的名稱,如下所示:
復(fù)制代碼 代碼如下:

  grant select on class to student;

  現(xiàn)在,擁有student 角色的所有用戶都具有對(duì)class 表的select權(quán)限。

五、刪除角色

  要?jiǎng)h除角色,可以使用drop role命令,如下所示:
復(fù)制代碼 代碼如下:

  drop role student;

  指定的role連同與之相關(guān)的權(quán)限將從數(shù)據(jù)庫(kù)中全部刪除。

六、刪除表的注意事項(xiàng)
 
在刪除一個(gè)表中的全部數(shù)據(jù)時(shí),須使用

Sql代碼 
復(fù)制代碼 代碼如下:

truncate table 表名

因?yàn)橛胐rop table,delete * from 表名時(shí),tablespace表空間該表的占用空間并未釋放,反復(fù)幾次drop,delete操作后,該tablespace上百兆的空間就被耗光了。
作者“技術(shù)總結(jié)”

相關(guān)文章

  • Oracle數(shù)據(jù)庫(kù)備份還原詳解

    Oracle數(shù)據(jù)庫(kù)備份還原詳解

    大家好,本篇文章主要講的是Oracle數(shù)據(jù)庫(kù)備份還原詳解,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下,方便下次瀏覽
    2021-12-12
  • Oracle在表中有數(shù)據(jù)的情況下修改字段類型或長(zhǎng)度的解決方法

    Oracle在表中有數(shù)據(jù)的情況下修改字段類型或長(zhǎng)度的解決方法

    這篇文章主要介紹了Oracle在表中有數(shù)據(jù)的情況下修改字段類型或長(zhǎng)度,修改其某個(gè)字段的類型或改變他的長(zhǎng)度,由于表中有數(shù)據(jù),不能直接修改,需要換個(gè)方法,接下來(lái)通過(guò)本文給大家介紹下解決方法,需要的朋友可以參考下
    2022-10-10
  • oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決

    oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決

    發(fā)現(xiàn)系統(tǒng)數(shù)據(jù)沒(méi)有更新,查看oracle定時(shí)任務(wù),估計(jì)沒(méi)有執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于oracle定時(shí)任務(wù)定時(shí)無(wú)效的原因分析與解決方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Oracle?system/用戶被鎖定的解決方法

    Oracle?system/用戶被鎖定的解決方法

    很多人對(duì)oracle數(shù)據(jù)庫(kù)會(huì)將用戶鎖定感覺(jué)莫名其妙,所以下面這篇文章主要介紹了Oracle?system/用戶被鎖定的解決方法,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-06-06
  • Oracle中正則表達(dá)式的使用實(shí)例教程

    Oracle中正則表達(dá)式的使用實(shí)例教程

    大家對(duì)正則表達(dá)式應(yīng)該都不會(huì)陌生,從linux下的命令到Java等編程語(yǔ)言,正則表達(dá)式無(wú)處不在,雖然我們實(shí)際使用不一定太多,但是當(dāng)我們要處理字符串時(shí),它確實(shí)是一個(gè)強(qiáng)大的工具。這篇文章主要給大家介紹了關(guān)于Oracle中正則表達(dá)式使用的相關(guān)資料,需要的朋友可以參考下。
    2017-10-10
  • Oracle中幾種常見(jiàn)的數(shù)據(jù)庫(kù)錯(cuò)誤類型及處理方法

    Oracle中幾種常見(jiàn)的數(shù)據(jù)庫(kù)錯(cuò)誤類型及處理方法

    處理常見(jiàn)的數(shù)據(jù)庫(kù)錯(cuò)誤是數(shù)據(jù)庫(kù)管理的重要組成部分,以下是幾種常見(jiàn)的數(shù)據(jù)庫(kù)錯(cuò)誤類型及其處理方法,結(jié)合具體代碼示例,以幫助你更好地解決這些問(wèn)題,感興趣的小伙伴跟著小編一起來(lái)看看吧
    2024-09-09
  • sqlplus登錄\連接命令、sqlplus命令的使用大全

    sqlplus登錄\連接命令、sqlplus命令的使用大全

    Oracle的sql*plus是與oracle進(jìn)行交互的客戶端工具。在sqlplus中,可以運(yùn)行sqlplus命令與sqlplus語(yǔ)句
    2013-08-08
  • 一文掌握Oracle中的Dual系統(tǒng)表

    一文掌握Oracle中的Dual系統(tǒng)表

    Dual表是Oracle提供的最小的工作表(其實(shí)是一種虛擬表),是sys用戶下的一張內(nèi)部表,只有一行一列(一列:DUMMY,一列:DUMMY,其數(shù)據(jù)類型為:VARCHAR2(1)),接下來(lái)通過(guò)本文給大家分享Oracle中的Dual系統(tǒng)表,需要的朋友可以參考下
    2022-09-09
  • oracle 數(shù)據(jù)泵導(dǎo)入導(dǎo)出介紹

    oracle 數(shù)據(jù)泵導(dǎo)入導(dǎo)出介紹

    本文將介紹oracle數(shù)據(jù)泵導(dǎo)導(dǎo)出步驟詳細(xì)介紹,需要的朋友可以參考下
    2012-12-12
  • Oracle 數(shù)據(jù)表分區(qū)的策略

    Oracle 數(shù)據(jù)表分區(qū)的策略

    Oracle 數(shù)據(jù)表分區(qū)的策略...
    2007-03-03

最新評(píng)論