日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
Oracle系統(tǒng)管理員基礎(chǔ):Oracle數(shù)據(jù)字典

對(duì)于Oracle系統(tǒng)管理員而言,Oracle數(shù)據(jù)字典就像是一個(gè)寶庫(kù):它是ORACLE數(shù)據(jù)庫(kù)的重要組成部分,提供了諸如數(shù)據(jù)庫(kù)結(jié)構(gòu)、數(shù)據(jù)庫(kù)對(duì)象空間分配和數(shù)據(jù)庫(kù)用戶(hù)等等有關(guān)數(shù)據(jù)庫(kù)的信息。本文試圖從數(shù)據(jù)庫(kù)管理系統(tǒng)的若干基本概念出發(fā),具體介紹從ORACLE數(shù)據(jù)字典來(lái)了解ORACLE的方法。

成都地區(qū)優(yōu)秀IDC服務(wù)器托管提供商(創(chuàng)新互聯(lián)).為客戶(hù)提供專(zhuān)業(yè)的成都服務(wù)器托管,四川各地服務(wù)器托管,成都服務(wù)器托管、多線服務(wù)器托管.托管咨詢(xún)專(zhuān)線:028-86922220

不同的操作系統(tǒng)、不同版本的ORACLE數(shù)據(jù)字典有所差異,本文均以UNIX操作系統(tǒng)、ORACLE 7為例加以說(shuō)明。

數(shù)據(jù)庫(kù)系統(tǒng)實(shí)例和數(shù)據(jù)庫(kù)標(biāo)識(shí)

ORACLE數(shù)據(jù)庫(kù)系統(tǒng)包含兩個(gè)方面,即ORACLE數(shù)據(jù)庫(kù)和ORACLE實(shí)例,用戶(hù)是通過(guò)ORACLE實(shí)例來(lái)訪問(wèn)ORACLE數(shù)據(jù)庫(kù)的。

1.數(shù)據(jù)庫(kù)(DATABASE)

數(shù)據(jù)庫(kù)是作為整體看待的數(shù)據(jù)集合,通常在安裝ORACLE軟件的最后階段創(chuàng)建,用數(shù)據(jù)庫(kù)名加以標(biāo)識(shí)(允許1~8個(gè)字符),數(shù)據(jù)庫(kù)名在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)確認(rèn),且保存在控制文件中。

2.實(shí)例(INSTANCE,也譯作例程)

實(shí)例是存取和控制數(shù)據(jù)庫(kù)的軟件機(jī)制。它由系統(tǒng)全局區(qū)(System Global Area,即SGA)和ORACLE進(jìn)程兩部分組成,和數(shù)據(jù)庫(kù)名一樣,實(shí)例也要唯一標(biāo)識(shí),并且在安裝ORACLE軟件時(shí)確認(rèn)。

我們可以采用下述方法來(lái)了解實(shí)例標(biāo)識(shí)。

有的系統(tǒng)管理員有意無(wú)意地將數(shù)據(jù)庫(kù)名和實(shí)例標(biāo)識(shí)取相同的標(biāo)識(shí)符,當(dāng)然是可以的,有時(shí)甚至?xí)?lái)某些方便,但筆者認(rèn)為,還是取不同標(biāo)識(shí)符為宜。

數(shù)據(jù)庫(kù)的初始化參數(shù)文件

在數(shù)據(jù)庫(kù)的建立和運(yùn)行中,都要閱讀一個(gè)初始化參數(shù)文件,它是個(gè)文本文件,可以用一般的編輯程序編輯。

每一個(gè)數(shù)據(jù)庫(kù)至少有一個(gè)初始化參數(shù)文件,一般命名為INIT.ORA,在UNIX系統(tǒng)下,按照缺省規(guī)定,其初始化參數(shù)文件名的命名原則為INIT后緊跟實(shí)例的標(biāo)識(shí),再加ORA后綴,例如,某實(shí)例標(biāo)識(shí)為T(mén)EST,其初始化參數(shù)文件名為INITTEST.ORA。

數(shù)據(jù)庫(kù)的初始化參數(shù)有100多個(gè),前面提到的DB_NAME即是其中之一。此外,還有許多其他參數(shù),如

CONTROL-FILES 控制文件名

ROLLBACK-SEGMENTS 分配給實(shí)例的回滾段名

INIT-SQL-FILES 數(shù)據(jù)庫(kù)建立時(shí)執(zhí)行的命令文件

PROCESSES 多進(jìn)程系統(tǒng)中最大進(jìn)程數(shù)

數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)

數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)是面向操作系統(tǒng)的,它描述數(shù)據(jù)庫(kù)中的數(shù)據(jù)的存儲(chǔ)形式。在物理上OA

CLE數(shù)據(jù)庫(kù)文件包括數(shù)據(jù)文件、日志文件和控制文件。

1.數(shù)據(jù)文件(DATA FILES)

ORACLE數(shù)據(jù)庫(kù)中的數(shù)據(jù),邏輯上存放在表空間里,但物理上卻是存放在數(shù)據(jù)文件里的,數(shù)據(jù)文件有如下特點(diǎn),即每一個(gè)數(shù)據(jù)文件只與一個(gè)數(shù)據(jù)庫(kù)相聯(lián)系,數(shù)據(jù)庫(kù)文件一旦建立,就不能改變大小,一個(gè)表空間可以包含一個(gè)或多個(gè)數(shù)據(jù)文件等。

我們可以用下述方法來(lái)了解數(shù)據(jù)庫(kù)的全部數(shù)據(jù)文件。

(1)SQLDBA>SELECT*FROM DBA-DATA-FILES;結(jié)果中,列名FILE-NAME即為數(shù)據(jù)文件名。

(2)SQLDBA>SELECT*FROM V$DATAFILE;結(jié)果中,列名NAME即為數(shù)據(jù)文件名。

(3)SQLDBA>SELECT*FROM V$DBFILE;結(jié)果中,列名NAME即為數(shù)據(jù)文件名。

2.日志文件(REDO LOG FILES)

日志文件用于記錄數(shù)據(jù)庫(kù)所做的全部變更,以便在系統(tǒng)發(fā)生故障時(shí)進(jìn)行恢復(fù)。每一個(gè)數(shù)據(jù)庫(kù)至少有兩個(gè)日志文件。

3.控制文件(CONTROL FILES)

控制文件雖然是一個(gè)較小的二進(jìn)制文件,但很重要。如果控制文件一旦被破壞,則無(wú)法對(duì)數(shù)據(jù)庫(kù)進(jìn)行操作。為防止控制文件被破壞,一般一個(gè)數(shù)據(jù)庫(kù)應(yīng)至少有二個(gè)控制文件,且分別放在不同的磁盤(pán)上,控制文件的名字是記錄在參數(shù)CONTROL_FILES中的。

數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)

數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)是面向用戶(hù)的,數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)包含表空間、段、范圍、數(shù)據(jù)塊和模式對(duì)象。從邏輯上看數(shù)據(jù)庫(kù)有以下特點(diǎn)。

一個(gè)數(shù)據(jù)庫(kù)(DATABASE)由一個(gè)或多個(gè)表空間所組成。

一個(gè)表空間(TABLESPACE)由段組成,作為SYSTEM表空間,它由自舉段、回滾段、數(shù)據(jù)段、臨時(shí)段等多個(gè)段組成,而作為非SYSTEM表空間,則因用途而異由不同段組成。

一個(gè)段(SEGMENT)由一組范圍組成。一個(gè)范圍(EXTENT)由一組連續(xù)的數(shù)據(jù)塊組成。一個(gè)數(shù)據(jù)塊(DATABASE BLOCK)對(duì)應(yīng)磁盤(pán)上的一個(gè)或多個(gè)物理塊。

在數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)中,表空間和回滾段比較重要,下面分別加以介紹。

1.表空間

每一個(gè)數(shù)據(jù)庫(kù)都必須包含一個(gè)名為SYSTEM的表空間。該表空間在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)由系統(tǒng)自動(dòng)創(chuàng)建,為了保證數(shù)據(jù)庫(kù)能正常運(yùn)行,SYSTEM表空間必須處于在線狀態(tài)。

為了增強(qiáng)對(duì)數(shù)據(jù)庫(kù)的控制和維護(hù),一般一個(gè)數(shù)據(jù)庫(kù)都包含多個(gè)表空間。使用多個(gè)表空間有許多優(yōu)點(diǎn),例如可以使用戶(hù)數(shù)據(jù)與數(shù)據(jù)字典相分離,可以在不同的磁盤(pán)上存儲(chǔ)不同表空間的數(shù)據(jù)文件,從而減少I(mǎi)/O沖突,還可以使一些表空間在線,而使另一些表空間離線等等。

2.回滾段

每一個(gè)表空間是都由段組成。ORACLE數(shù)據(jù)庫(kù)中的段有數(shù)據(jù)段、索引段、臨時(shí)段、回滾段和自舉段。比較重要的是回滾段,它記錄數(shù)據(jù)庫(kù)的變更信息,以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的讀一致性及恢復(fù)工作。

在SYSTEM表空間里有一個(gè)SYSTEM回滾段,是在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)隨之產(chǎn)生的。如果使用多個(gè)表空間,至少還應(yīng)有一個(gè)另外的回滾段?;貪L段分專(zhuān)用和公用兩種,要使用專(zhuān)用回滾段,需要在初始化參數(shù)文件的ROLLBACK-SEGMENTS參數(shù)上寫(xiě)上專(zhuān)用回滾段的段名并且重新啟動(dòng)數(shù)據(jù)庫(kù),或者通過(guò)回滾段在線命令使它在線。

數(shù)據(jù)庫(kù)的用戶(hù)

ORACLE數(shù)據(jù)庫(kù)是個(gè)多用戶(hù)系統(tǒng)。為了保證數(shù)據(jù)庫(kù)系統(tǒng)的安全,ORACLE數(shù)據(jù)庫(kù)管理系統(tǒng)配制了良好的安全機(jī)制。例如,每一個(gè)ORACLE數(shù)據(jù)庫(kù)都有一個(gè)用戶(hù)表,它記載著每一個(gè)用戶(hù)的有關(guān)信息,一旦用戶(hù)進(jìn)入系統(tǒng),ORACLE系統(tǒng)會(huì)通過(guò)這張表來(lái)檢查用戶(hù)的合法性。又如,ORACLE系統(tǒng)通過(guò)合理分配用戶(hù)的權(quán)限來(lái)管理用戶(hù)。通常,ORACLE將用戶(hù)分為三類(lèi),即DBA、RESOUCE和CONNECT三類(lèi)角色,使不同的用戶(hù)的權(quán)限各不相同。

在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),系統(tǒng)自動(dòng)建立了兩個(gè)用戶(hù),即SYS和SYSTEM用戶(hù),且授給這兩個(gè)用戶(hù)DB權(quán)限,由于DBA具有最高權(quán)限,建議將它們的口令及時(shí)修改,以免個(gè)別用戶(hù)以DBA角色進(jìn)入系統(tǒng),有意無(wú)意地給系統(tǒng)造成損害。

除了SYS、SYSTEM用戶(hù)外,其余用戶(hù)都要一一建立,建立用戶(hù)的方法如下:

假設(shè)要建的用戶(hù)名為RSXT,口令為RSPASS;默認(rèn)的表空間為USER,臨時(shí)表空間為T(mén)EMP,表空間限額為3M,其余默認(rèn),則可用下面方法創(chuàng)建新用戶(hù):

 
 
 
  1. SQLDBA>CREATE USER RSXT IDENTIFIED BY RSPASS  
  2. DEFAULT TABLESPACE USER 
  3. TEMPORARY TABLESPACE TEMP 
  4. QUOTA 3M ON USER;  

請(qǐng)注意,該用戶(hù)建立后,還要及時(shí)授權(quán),否則像上述剛剛建成的用戶(hù),則一無(wú)所為,甚至都不能連接數(shù)據(jù)庫(kù)。對(duì)一般用戶(hù),通常授予CONNECT和RESOURCE角色權(quán)限,命令如下:

SQLDBA>GRANT CONNECT,RESOURCE TO RSXT;

對(duì)于一個(gè)有著許多用戶(hù)的數(shù)據(jù)庫(kù)系統(tǒng),我們可以通過(guò)下述方法來(lái)了解數(shù)據(jù)庫(kù)的用戶(hù)情況。

1.對(duì)于非DBA用戶(hù)

對(duì)于非DBA用戶(hù),有兩條命令,即:

(1)SQL>SELECT*FROM ALL-USERS;

(2)SQL>SELECT*FROM USER-USERS;

其中,從USER-USERS表中,可以了解到該用戶(hù)的默認(rèn)表空間和臨時(shí)表空間等信息。

2.對(duì)于DBA用戶(hù)

對(duì)于DBA用戶(hù),有三條命令,即:

(1)SQLDBA>SELECT*FROM ALL-USERS;

(2)SQLDBA>SELECT*FROM USER-USERS;

(3)SQLDBA>SELECT*FROM DBA-USERS;

其中,從DBA-USERS中,可以了解到所有用戶(hù)的詳細(xì)信息,因而該命令對(duì)于數(shù)據(jù)庫(kù)管理員來(lái)說(shuō)是很有用的。

關(guān)于非DBA用戶(hù)的信息

由于DBA用戶(hù)具有最高權(quán)限,為安全起見(jiàn),只有Oracle系統(tǒng)管理員才授予DBA權(quán)限,大多數(shù)用戶(hù)均為非DBA用戶(hù)。盡管相應(yīng)的權(quán)限少了,但是從ORACLE數(shù)據(jù)字典中,還是可以得到 很多關(guān)于非DBA用戶(hù)的有用信息。

我們可以采用下述方法來(lái)了解有關(guān)非DBA用戶(hù)的信息。

1.SQL>SELECT*FROM USER-USERS;

可以查看該用戶(hù)的默認(rèn)表空間,臨時(shí)表空間和用戶(hù)創(chuàng)建時(shí)間。

2.SQL>SELECT*FROM USER-TABLES;

可以查看該用戶(hù)創(chuàng)建的所有表的詳細(xì)信息,由于列名較多,一屏看不了幾個(gè)表。

如果僅僅想查看用戶(hù)所建表的表名,可以用下面的命令:

SQL>SELECT TABLE-NAME FROM USER-TABLES;

3.SQL〉SELECT*FROM USER-VIEWS;

可以查看該用戶(hù)所創(chuàng)建的視圖,包括創(chuàng)建視圖的文本。

同樣,如果僅僅想查看用戶(hù)所建視圖的視圖名,可以用下面的命令:

SQL>SELECT VIEW-NAME FROM USER-VIEWS;

4.SQL>SELECT*FROM USER-TABLESPACES;

可以查看該用戶(hù)可存取的表空間的信息。

5.SQL>SELECT TABLESPACE-NAME,SUM(BYTES),SUM(BLOCKS)

FROM USER-FREE-SPACE GROUP BY TABLESPACE-NAME;

可以查看該用戶(hù)可存取的表空間的剩余空間。

6.SQL>SELECT *FROM USER-TS-QUOTAS;

可以查看該用戶(hù)的表空間的份額。

7.SQL>SELECT *FROM USER-ROLE-PRIVS;

可以查看該用戶(hù)被授予的角色。

8.SQL>SELECT *FROM USER-SYS-PRIVS;

可以查看該用戶(hù)的系統(tǒng)權(quán)限及能否再授予其它用戶(hù)的權(quán)限。

9.SQL>SELECT *FROM USER-TAB-PRIVS-RECD;

可以查看該用戶(hù)能訪問(wèn)其它用戶(hù)的表、視圖等的對(duì)象權(quán)限。

10.SQL>SELECT *FROM USER-TAB-PRIVS-MADE;

可以查看該用戶(hù)授予其它用戶(hù)的表、視圖等的對(duì)象權(quán)限。

有關(guān)用戶(hù)的信息還有很多,這里不再一一列舉,請(qǐng)Oracle系統(tǒng)管理員們自行查看ORACLE數(shù)據(jù)字典。


網(wǎng)站名稱(chēng):Oracle系統(tǒng)管理員基礎(chǔ):Oracle數(shù)據(jù)字典
標(biāo)題URL:http://www.5511xx.com/article/djssohc.html