自己整理的學習資料——DB2 V8資料庫基礎(二十四)

rheet1978發表於2008-10-23

 

接前面的表格。

狀態

十六進位制狀態值

描述

示例

Quiesced Share

0x1

當呼叫表空間靜默(quiesce)功能的應用程式和併發應用程式都可以讀(但不能寫)訪問表空間時,該表空間就處於這種狀態。您可以通過執行一條 QUIESCE TABLESPACES FOR TABLE 命令,將表空間顯式地置於 Quiesced Share 狀態。

在將表空間設定為 Quiesced Share 之前,要確保它處於 Normal狀態。
connect to sample;
quiesce tablespaces for table staff reset;
quiesce tablespaces for table staff share;
connect reset;
從另一會話執行下列指令碼:
connect to sample;
select * from staff where id=40;
update staff set salary=50000 where id=40;
list tablespaces;
connect reset;
USERSPACE1
返回的資訊顯示,該表空間處於 Quiesced Share 狀態。

Quiesced Update

0x2

當呼叫表空間靜默(quiesce)功能的應用程式獨佔寫訪問表空間時,該表空間就處於這種狀態。您可以通過執行一條 QUIESCE TABLESPACES FOR TABLE 命令,將表空間顯式地置於 Quiesced Update 狀態。

在將表空間設定為 Quiesced Update 之前,要確保它處於 Normal狀態。
connect to sample;
quiesce tablespaces for table staff reset;
quiesce tablespaces for table staff intent to update;
connect reset;
從另一會話執行下列指令碼:
connect to sample;
select * from staff where id=50;
update staff set salary=50000 where id=50;
list tablespaces;
connect reset;
USERSPACE1
返回的資訊顯示,該表空間處於 Quiesced Update 狀態。

Reorg in Progress

0x400

這是一種只在進行重組(reorg)操作期間才有效的臨時狀態。

執行一條 REORG TABLE 命令:
connect to sample;
reorg table staff;
connect reset;
在執行重組操作時,從另一會話執行下列指令碼:
connect to sample;
1.list tablespaces show detail;
或者
2.get snapshot for tablespaces on sample;
connect reset;
USERSPACE1
返回的資訊顯示,該表空間處於 Reorg in Progress 狀態。注意:涉及 SAMPLE 資料庫的表重組操作很可能在極短的時間內就可以完成,因此,使用這種方法來觀察 Reorg in Progress 狀態可能比較困難。

Restore Pending

0x100

在執行了重定向恢復操作的第一部分之後(即在發出 SET TABLESPACE CONTAINERS 命令之前),資料庫的表空間就處於這種狀態。在使用表空間之前,必須恢復表空間(或者是整個資料庫)。直到成功完成恢復操作,您才可以連線到資料庫,此時, restore_pending資訊資料庫配置引數的值被設為 NO

當處於 Storage May be Defined中的重定向恢復操作的第一部分完成時,所有的表空間都將處於 Restore Pending 狀態。

Restore in Progress

0x2000

這是一種只在執行恢復操作期間才有效的臨時狀態。

update db cfg for sample using logretain recovery;
backup db sample;
backup db sample tablespace (userspace1);
該備份映像的時間戳為:20040611174124
restore db sample tablespace (userspace1) online taken at 20040611174124;
在執行恢復操作時,從另一會話執行下列指令碼:
connect to sample;
1.list tablespaces show detail;
或者
2.get snapshot for tablespaces on sample;
connect reset;
USERSPACE1
返回的資訊顯示,該表空間處於 Restore in Progress 狀態。

Roll Forward Pending

0x80

在對可恢復的資料庫執行恢復操作之後,表空間就處於這種狀態。在使用表空間之前,必須前滾該表空間(或是整個資料庫)。如果 logretain資料庫配置引數被設為 RECOVERY,或者 userexit資料庫配置引數被設為 YES,那麼該資料庫是可恢復的。直到前滾操作成功完成,您才可以啟用或連線到該資料庫,此時, rollfwd_pending資訊資料庫配置引數被設為 NO

當處於 Restore in Progress中的線上表空間完成恢復操作時,表空間 USERSPACE1 處於 Roll Forward Pending 狀態。

Roll Forward in Progress

0x40

這是一種只在執行前滾操作期間才有效的臨時狀態。

已知載入的輸入檔案 staffdata.del 擁有大量資料(例如,20000 條或更多記錄):
update db cfg for sample using logretain recovery;
backup db sample;
connect to sample;
create tablespace ts1 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/ts1c1' 1024);
create table newstaff like staff in ts1;
connect reset;
backup db sample tablespace (ts1) online;
該備份映像的時間戳為:20040630000715
connect to sample;
load from staffdata.del of del insert into newstaff copy yes to /home/melnyk/backups;
connect reset;
restore db sample tablespace (ts1) online taken at 20040630000715;
rollforward db sample to end of logs and stop tablespace (ts1) online;
當執行前滾操作時,從另一會話執行下列指令碼:
connect to sample;
1.list tablespaces show detail;
或者
2.get snapshot for tablespaces on sample;
connect reset;
TS1
返回的資訊顯示,該表空間處於 Roll Forward in Progress 狀態。

Storage May be Defined

0x2000000

在執行了重定向恢復操作的第一部分之後(即在發出 SET TABLESPACE CONTAINERS 命令之前),資料庫的表空間就處於這種狀態。如果您願意,這將允許您重新定義容器(請參閱 DB2 基礎:使用重定向恢復克隆 DB2 資料庫)。

backup db sample;
假定該備份映像的時間戳為:20040613204955
restore db sample taken at 20040613204955 redirect;
list tablespaces;
Information returned by the LIST TABLESPACES
命令返回的資訊顯示,所有的表空間都處於 Storage May be Defined Restore Pending狀態。

Storage Must be Defined

0x1000

在將恢復操作重定向到 資料庫期間,如果省略了設定表空間容器的階段,或者,如果在設定表空間容器的階段期間無法獲得指定的容器,那麼資料庫的表空間就會處於這種狀態。某些時候會出現後一種情況,例如,指定了無效的路徑名,或者是磁碟空間不足。

backup db sample;
假定該備份映像的時間戳為:20040613204955
restore db sample taken at 20040613204955 into mydb redirect;
set tablespace containers for 2 using (path 'ts2c1');
list tablespaces;
LIST TABLESPACES
命令返回的資訊顯示,表空間 SYSCATSPACE 和表空間 TEMPSPACE1 都處於 Storage Must be Defined Storage May be Defined Restore Pending狀態。Storage Must be Defined 狀態比 Storage May be Defined 狀態更重要。

Table Space Creation in Progress

0x40000000

這是一種只在執行建立表空間的操作期間才有效的臨時狀態。

connect to sample;
create tablespace ts1 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc1' 1024);
create tablespace ts2 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc2' 1024);
create tablespace ts3 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc3' 1024);
在執行建立表空間的操作時,從另一會話執行下列指令碼:
connect to sample;
1.list tablespaces show detail; or
2.get snapshot for tablespaces on sample;
connect reset;
TS1
TS2 TS3 返回的資訊顯示,這些表空間處於 Table Space Creation in Progress 狀態。

Table Space Deletion in Progress

0x20000000

這是一種只在執行刪除表空間的操作期間才有效的臨時狀態。

connect to sample;
create tablespace ts1 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc1' 1024);
create tablespace ts2 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc2' 1024);
create tablespace ts3 managed by database using (file '/home/melnyk/melnyk/NODE0000/SQL00001/tsc3' 1024);
drop tablespace ts1;
drop tablespace ts2;
drop tablespace ts3;
在執行刪除表空間的操作時,從另一會話執行下列指令碼:
connect to sample;
1.list tablespaces show detail;
或者
2.get snapshot for tablespaces on sample;
connect reset;
TS1
TS2 TS3 返回的資訊顯示,這些表空間處於 Table Space Deletion in Progress 狀態。

 

表格完,本節未完。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9524210/viewspace-475075/,如需轉載,請註明出處,否則將追究法律責任。

相關文章