成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle系統管理員基礎:Oracle數據字典

數據庫 Oracle
Oracle數據字典是Oracle數據庫的重要組成部分,任何一個Oracle系統管理員都需要學習了解的。本文具體介紹了從Oracle數據字典來了解Oracle數據庫的方法。

對于Oracle系統管理員而言,Oracle數據字典就像是一個寶庫:它是ORACLE數據庫的重要組成部分,提供了諸如數據庫結構、數據庫對象空間分配和數據庫用戶等等有關數據庫的信息。本文試圖從數據庫管理系統的若干基本概念出發,具體介紹從ORACLE數據字典來了解ORACLE的方法。

不同的操作系統、不同版本的ORACLE數據字典有所差異,本文均以UNIX操作系統、ORACLE 7為例加以說明。

數據庫系統實例和數據庫標識

ORACLE數據庫系統包含兩個方面,即ORACLE數據庫和ORACLE實例,用戶是通過ORACLE實例來訪問ORACLE數據庫的。

1.數據庫(DATABASE)

數據庫是作為整體看待的數據集合,通常在安裝ORACLE軟件的最后階段創建,用數據庫名加以標識(允許1~8個字符),數據庫名在創建數據庫時確認,且保存在控制文件中。

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

實例是存取和控制數據庫的軟件機制。它由系統全局區(System Global Area,即SGA)和ORACLE進程兩部分組成,和數據庫名一樣,實例也要唯一標識,并且在安裝ORACLE軟件時確認。

我們可以采用下述方法來了解實例標識。

有的系統管理員有意無意地將數據庫名和實例標識取相同的標識符,當然是可以的,有時甚至會帶來某些方便,但筆者認為,還是取不同標識符為宜。

數據庫的初始化參數文件

在數據庫的建立和運行中,都要閱讀一個初始化參數文件,它是個文本文件,可以用一般的編輯程序編輯。

每一個數據庫至少有一個初始化參數文件,一般命名為INIT.ORA,在UNIX系統下,按照缺省規定,其初始化參數文件名的命名原則為INIT后緊跟實例的標識,再加ORA后綴,例如,某實例標識為TEST,其初始化參數文件名為INITTEST.ORA。

數據庫的初始化參數有100多個,前面提到的DB_NAME即是其中之一。此外,還有許多其他參數,如

CONTROL-FILES 控制文件名

ROLLBACK-SEGMENTS 分配給實例的回滾段名

INIT-SQL-FILES 數據庫建立時執行的命令文件

PROCESSES 多進程系統中最大進程數

數據庫的物理結構

數據庫的物理結構是面向操作系統的,它描述數據庫中的數據的存儲形式。在物理上OA

CLE數據庫文件包括數據文件、日志文件和控制文件。

1.數據文件(DATA FILES)

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

我們可以用下述方法來了解數據庫的全部數據文件。

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

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

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

2.日志文件(REDO LOG FILES)

日志文件用于記錄數據庫所做的全部變更,以便在系統發生故障時進行恢復。每一個數據庫至少有兩個日志文件。

3.控制文件(CONTROL FILES)

控制文件雖然是一個較小的二進制文件,但很重要。如果控制文件一旦被破壞,則無法對數據庫進行操作。為防止控制文件被破壞,一般一個數據庫應至少有二個控制文件,且分別放在不同的磁盤上,控制文件的名字是記錄在參數CONTROL_FILES中的。

數據庫的邏輯結構

數據庫的邏輯結構是面向用戶的,數據庫的邏輯結構包含表空間、段、范圍、數據塊和模式對象。從邏輯上看數據庫有以下特點。

一個數據庫(DATABASE)由一個或多個表空間所組成。

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

一個段(SEGMENT)由一組范圍組成。一個范圍(EXTENT)由一組連續的數據塊組成。一個數據塊(DATABASE BLOCK)對應磁盤上的一個或多個物理塊。

在數據庫的邏輯結構中,表空間和回滾段比較重要,下面分別加以介紹。

1.表空間

每一個數據庫都必須包含一個名為SYSTEM的表空間。該表空間在創建數據庫時由系統自動創建,為了保證數據庫能正常運行,SYSTEM表空間必須處于在線狀態。

為了增強對數據庫的控制和維護,一般一個數據庫都包含多個表空間。使用多個表空間有許多優點,例如可以使用戶數據與數據字典相分離,可以在不同的磁盤上存儲不同表空間的數據文件,從而減少I/O沖突,還可以使一些表空間在線,而使另一些表空間離線等等。

2.回滾段

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

在SYSTEM表空間里有一個SYSTEM回滾段,是在創建數據庫時隨之產生的。如果使用多個表空間,至少還應有一個另外的回滾段。回滾段分專用和公用兩種,要使用專用回滾段,需要在初始化參數文件的ROLLBACK-SEGMENTS參數上寫上專用回滾段的段名并且重新啟動數據庫,或者通過回滾段在線命令使它在線。

數據庫的用戶

ORACLE數據庫是個多用戶系統。為了保證數據庫系統的安全,ORACLE數據庫管理系統配制了良好的安全機制。例如,每一個ORACLE數據庫都有一個用戶表,它記載著每一個用戶的有關信息,一旦用戶進入系統,ORACLE系統會通過這張表來檢查用戶的合法性。又如,ORACLE系統通過合理分配用戶的權限來管理用戶。通常,ORACLE將用戶分為三類,即DBA、RESOUCE和CONNECT三類角色,使不同的用戶的權限各不相同。

在創建數據庫時,系統自動建立了兩個用戶,即SYS和SYSTEM用戶,且授給這兩個用戶DB權限,由于DBA具有最高權限,建議將它們的口令及時修改,以免個別用戶以DBA角色進入系統,有意無意地給系統造成損害。

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

假設要建的用戶名為RSXT,口令為RSPASS;默認的表空間為USER,臨時表空間為TEMP,表空間限額為3M,其余默認,則可用下面方法創建新用戶:

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

請注意,該用戶建立后,還要及時授權,否則像上述剛剛建成的用戶,則一無所為,甚至都不能連接數據庫。對一般用戶,通常授予CONNECT和RESOURCE角色權限,命令如下:

SQLDBA>GRANT CONNECT,RESOURCE TO RSXT;

對于一個有著許多用戶的數據庫系統,我們可以通過下述方法來了解數據庫的用戶情況。

1.對于非DBA用戶

對于非DBA用戶,有兩條命令,即:

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

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

其中,從USER-USERS表中,可以了解到該用戶的默認表空間和臨時表空間等信息。

2.對于DBA用戶

對于DBA用戶,有三條命令,即:

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

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

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

其中,從DBA-USERS中,可以了解到所有用戶的詳細信息,因而該命令對于數據庫管理員來說是很有用的。

關于非DBA用戶的信息

由于DBA用戶具有最高權限,為安全起見,只有Oracle系統管理員才授予DBA權限,大多數用戶均為非DBA用戶。盡管相應的權限少了,但是從ORACLE數據字典中,還是可以得到 很多關于非DBA用戶的有用信息。

我們可以采用下述方法來了解有關非DBA用戶的信息。

1.SQL>SELECT*FROM USER-USERS;

可以查看該用戶的默認表空間,臨時表空間和用戶創建時間。

2.SQL>SELECT*FROM USER-TABLES;

可以查看該用戶創建的所有表的詳細信息,由于列名較多,一屏看不了幾個表。

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

SQL>SELECT TABLE-NAME FROM USER-TABLES;

3.SQL〉SELECT*FROM USER-VIEWS;

可以查看該用戶所創建的視圖,包括創建視圖的文本。

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

SQL>SELECT VIEW-NAME FROM USER-VIEWS;

4.SQL>SELECT*FROM USER-TABLESPACES;

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

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

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

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

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

可以查看該用戶的表空間的份額。

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

可以查看該用戶被授予的角色。

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

可以查看該用戶的系統權限及能否再授予其它用戶的權限。

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

可以查看該用戶能訪問其它用戶的表、視圖等的對象權限。

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

可以查看該用戶授予其它用戶的表、視圖等的對象權限。

有關用戶的信息還有很多,這里不再一一列舉,請Oracle系統管理員們自行查看ORACLE數據字典。

【編輯推薦】

  1. 深入Oracle用戶管理與規范
  2. Oracle用戶名更改操作四步走
  3. Oracle用戶表空間兩步就可以了解
  4. Oracle用戶名重建索引方法探究
  5. 全面講解Oracle查詢用戶表空間
責任編輯:yangsai 來源: 百度空間
相關推薦

2009-10-22 16:53:08

2019-09-09 14:45:29

系統管理員SRE

2010-08-10 09:13:52

Unix系統管理員Ubuntu

2010-08-11 17:11:15

2013-03-30 21:59:13

系統管理員必備工具iftop

2010-05-06 18:07:33

Unix命令

2018-08-01 08:12:34

Linux管理員網絡管理

2010-11-10 09:36:38

系統管理員守則

2011-10-20 10:29:22

VMwareVMworld虛擬化

2012-06-06 10:41:37

系統管理員運維

2018-08-15 14:00:18

LinuxBash系統管理員

2013-06-26 09:29:30

系統管理員

2013-08-20 10:11:20

Go系統管理員

2013-09-29 09:50:21

系統管理員Ubuntu JujuJuju

2010-04-12 09:33:58

系統管理員

2019-08-13 19:34:45

容器鏡像DockerLinux

2010-05-07 16:35:44

2011-06-16 09:35:28

系統管理員iPad應用

2012-08-07 09:40:58

系統管理員職業生涯

2019-08-23 08:00:00

系統管理架構
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 欧美一级黄色网 | 7777久久 | 狠狠婷婷综合久久久久久妖精 | 在线看片网站 | 黄色一级电影免费观看 | 一区二区三区影院 | 精品亚洲永久免费精品 | 日韩中文在线 | ririsao久久精品一区 | 99久久婷婷国产综合精品电影 | 午夜免费福利电影 | 国产羞羞视频在线观看 | 欧美一区永久视频免费观看 | 337p日本欧洲亚洲大胆精蜜臀 | 国产一极毛片 | 天天爱av | 91久久久久久久 | 国产一区二区久久久 | 亚洲一区二区视频在线观看 | 日韩欧美国产综合 | 国产精品成人一区二区三区夜夜夜 | 欧美日韩综合一区 | 亚洲理论在线观看电影 | 日本三级日产三级国产三级 | 国产精品久久久久久婷婷天堂 | 中文字幕视频在线观看 | 国产精品亚洲综合 | 日本免费在线 | www.伊人.com| 欧美一区二区激情三区 | www.日韩欧美 | 国产精品久久久久久久久图文区 | 无吗视频 | 亚洲精品久久久久avwww潮水 | 亚洲黄色视屏 | 日韩在线欧美 | 一区二区精品 | 亚洲第一网站 | av超碰 | 国产精品夜夜夜一区二区三区尤 | 婷婷久久五月天 |