程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> DB2數據庫 >> DB2教程 >> 存儲和文件管理

存儲和文件管理

編輯:DB2教程

存儲和文件管理


存儲和文件管理

目的

(1) 掌握表空間的建立和管理操作。

(2) 掌握OEM下表空間的查看、修改等管理操作。

(3) 掌握數據文件的建立、修改、查看、刪除操作。

(4) 掌握控制文件、日志文件的建立、修改、查看、刪除操作。

要求

(1) 記錄表空間操作過程中基本操作界面。

(2) 記錄利用企業管理器對數據文件、日志文件和控制文件進行管理操作的界面。

(3) 記錄利用SQL*Plus使用語句管理表空間和各類文件的操作。

步驟:

(1)添加表空間。

① 利用企業管理器創建案例表空間“ygbx_tbs”,為表空間“ygbx_tbs”添加一個數據文件“ygbx001.dbf”,路徑為“f:\”,大小為10 MB。如果該數據文件已經存在,則被覆蓋,數據文件具有自動擴展屬性,每次增量為64 KB,最大值為50 MB。

1.在浏覽器的地址欄中輸入登陸oem的地址:https://localhost:1158/em

輸入用戶名和密碼如圖所示:

2. 點擊“server”,如圖所示

3.點擊如圖所示的Storage中的tablespaces

4.點擊頁面右邊的“create”進行創建表空間ygbx_tbs

並且添加數據文件“ygbx001.dbf”,路徑為“F:\oracle\”大小為10 MB,如果該數據文件已經存在,則被覆蓋,數據文件具有自動擴展屬性,每次增量為64 KB,最大值為50 MB。

5.創建成功,如圖所示:

② 利用命令行方式創建一個表空間“ygbx1_tbs”,為表空間“ygbx1_tbs”添加第1個數據文件“ygbx003.dbf”,路徑為“f:\oracle\”,大小為10 MB。如果該數據文件已經存在,則被覆蓋,數據文件具有自動擴展屬性,每次增量為128 KB,最大值為100 MB。第2個數據文件為“ygbx004.dbf”,路徑為“f:\oracle\”,大小為5 MB,沒有自動擴展屬性。

Sql>create tablespace ygbx1_tbs datafile 'F:\oracle\ygbx003.dbf'

size 10m reuse autoextend on next 128k maxsize 100m;

③ 利用企業管理器創建案例表空間“ygbx2_tbs”,為表空間“ygbx2_tbs”添加一個數據文件“ygbx005.dbf”,路徑為“f:\”,大小為10 MB。如果該數據文件已經存在,則被覆蓋,數據文件具有自動擴展屬性,每次增量為64 KB,最大值為50 MB。

注意:表空間在整個數據庫中是惟一的。

步驟如同(1),如圖為所建的表空間

(2) 修改表空間。

① 利用企業管理器修改剛剛創建的表空間“ygbx_tbs”,為表空間“ygbx_tbs”增加數據文件“ygbx002.dbf”,路徑為“f:\oracle\”,大小為10 MB。如果該數據文件已經存在,則被覆蓋,數據文件具有自動擴展屬性,每次增量為64 KB,最大值為50 MB,且將其修改為脫機狀態。

.查找到表空間ygbx_tbs然後在’Actions’ 中選中 add datafiles 點擊‘go’按鈕進行增加數據文件

2)注意如果要增加數據文件,表空間必須在聯機的狀態下進行操作

如上圖為增加數據文件成功後的頁面,

接下來查看表空間對應的信息如下圖所示:

② 利用命令行方式修改表空間“ygbx1_tbs”,為表空間“ygbx1_tbs”增加數據文件“ygbx006.dbf”,路徑為“f:\oracle\”,且將其修改為脫機狀態。

Sql>alter tablespace ygbx1_tbs add datafile ‘F:\oracle\ygbx006.dbf’ ;

Sql>alter database datafile 'F:\oracle\ygbx006.dbf' offline;

(3) 刪除表空間。

① 利用命令行方式刪除表空間“ygbx1_tbs”,同時刪除包含的數據文件。

首先使表空間脫機,然後刪除表空間和數據文件

Sql>alter tablespace ygbx1_tbs offline;

Sql>drop tablespace ygbx1_tbs including contents and datafiles;

② 利用企業管理器方式刪除表空間“ygbx2_tbs”,同時刪除包含的數據文件。

選中‘ygbx2_tbs’然後點中‘delete’進行刪除

(4) 數據文件操作。

① 利用企業管理器修改數據文件ygbx001.dbf的大小為20M。

首先進入datafiles 界面,然後修改數據文件’ygbx001.dbf’ 的file size為20m,如圖點中要修改的數據文件,然後進行編輯

如圖為修改數據文件的大小為20m,然後點擊’apply’生效,

② 利用SQL*Plus修改ygbx003.dbf數據文件的最大值為無限大。

Sql>alter tablespace datafile 'F:\oracle\ygbx003.dbf'maxsize unlimited;

Sql>alter tablespace ygbx_tbs drop datafile ‘F:\orace\ygbx002.dbf’

③ 利用SQL*Plus刪除ygbx002.dbf數據文件。

(5) 查看日志文件、控制文件。

① 利用企業管理器,查看數據庫的控制文件和日志文件,並對其進行管理。

以system的用戶登陸後,點擊server 再點擊storage下的controlfile進入如下界面

同時備份控制文件,如圖所示:

點擊‘ok’按鈕備份成功。

實驗小結:

1. 表空間的大小為該表空間中數據文件大小之和。一個表空間至少包含一個數據文件,一個數據文件只能屬於一個表空間。表空間邏輯存儲對象:永久段-->如表與索引。臨時段-->如臨時表數據與排序段。回滾段-->用於事物回滾或閃回內存的撤銷數據。

2. DATABASE:一個數據庫可劃分為多個稱為表空間的邏輯存儲單元。TABLESPACE:只能屬一個數據庫,包括一個或多個文件。SEGMENT:存在於表空間中,包含一個或多個區。EXTENT:由相鄰的數據塊的組成,這意味著每個區只能存在於一個數據文件中。BLOCK:是數據庫中最小的I/O單元,db_block_size

3. 本地管理表空間的優勢:a.不需要執行遞歸空間管理操作。b.不記錄數據字典表中的的空閒空間,可以減少爭用。c.可自動跟蹤相鄰的空閒空間無需合並空閒空間。d.系統自動確定本地管理區的大小。e.對區位圖進行更改不會生成還原信息,國為這些更改並不更新數據字典中的表(表空間限額信息等特殊情況除外)

4. 刪除沒有對象的表空間: drop tablespace 表空間名;

刪除有對象的表空間,但不刪除物理文件: drop tablespace表空間名including contents;

刪除有對象的表空間和刪除物理文件:drop tablespace表空間名including contents and datafiles cascadeconstraints;

5. 可以使用下面的PL/SQL程序,將任何字典管理的表空間轉換成為本地管理:
Executedbms_space_admin.tablespace_migrage_to_local(‘tablespacename’);

6. 從邏輯上講,數據存儲在段(通常是表)中;從物理上講,數據存儲在數據文件(datafile)中。表空間(tablespace)實體是二者的象,一個表空間可能包含多個段,並由多個數據文件組成。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved