本章將介紹數(shù)據(jù)庫存儲組:
一組存儲路徑用來存儲數(shù)據(jù)庫表或?qū)ο?,是一個存儲組??梢詫⒈砜臻g的存儲組。當創(chuàng)建一個數(shù)據(jù)庫,所有的表空間采取默認存儲組。默認的存儲組的數(shù)據(jù)庫“IBMSTOGROUP”。當創(chuàng)建一個新的數(shù)據(jù)庫,默認的存儲組是活動的,如果通過“AUTOMATIC STOGROUP NO”參數(shù)在“CREATE DATABASE”命令的結(jié)束。該數(shù)據(jù)庫不具有任何默認存儲組。
可以列出數(shù)據(jù)庫中的所有存儲組。
語法:[要查看可用的存儲組列表在當前數(shù)據(jù)庫]
db2 select * from syscat.stogroups
例如:[查看可用的存儲組列表在當前數(shù)據(jù)庫]
db2 select * from syscat.stogroups
下面是在數(shù)據(jù)庫中創(chuàng)建一個存儲組的語法:
語法:[要創(chuàng)建一個新的存儲組。“stogropu_name”表示新的存儲組名字和“path”表示數(shù)據(jù)(表)的存儲位置]
db2 create stogroupon ‘path’
例如:[要創(chuàng)建一個新的存儲組“stg1'在data1文件夾]
db2 create stogroup stg1 on ‘/data1’
輸出
DB20000I The SQL command completed succesfully
這里顯示如何創(chuàng)建存儲組的表空間:
語法:[要使用存在的存儲組中創(chuàng)建一個新的表空間]
db2 create tablespace <tablespace_name> using stogroup <stogroup_name>
例如:要創(chuàng)建一個名為“ts1”使用已有的存儲組“stg1”新表空間]
db2 create tablespace ts1 using stogroup stg1
輸出
DB20000I The SQL command completed succesfully
可以使用下面的語法改變一個存儲組的位置:
語法:[從原來的位置移動存儲組新的位置]
db2 alter stogroupadd ‘location’, ‘location’
例如:[要修改位置路徑從舊位置到新位置的名為“sg1”的存儲組]
db2 alter stogroup sg1 add ‘/path/data3’, ‘/path/data4’
刪除存儲組的文件夾路徑,可以通過使用alter命令存儲組添加新的位置。
語法:[要刪除的存儲組位置舊路徑]
db2 alter stogroupdrop ‘/path’
例如:[從“stg1”刪除存儲組位置]
db2 alter stogroup stg1 drop ‘/path/data1’
重新調(diào)整創(chuàng)建存儲組或表空間的一個新的文件夾,而事務(wù)數(shù)據(jù)庫上進行,表空間已滿的表空間是必需的。重新調(diào)整的更新與新的存儲組數(shù)據(jù)庫配置文件。
語法:[為了重新調(diào)整舊的存儲組路徑,新的存儲組的表空間]
db2 alter tablspace <ts_name> rebalance
例如:[重新調(diào)整]
db2 alter tablespace ts1 rebalance
語法:[修改現(xiàn)有的存儲名稱的名稱]
db2 rename stogroup <old_stg_name> to <new_stg_name>
例如:[從'sg1'以新名字“sgroup1”修改存儲組的名稱]
db2 rename stogroup sg1 to sgroup1
第1步:在刪除任何存儲組,可以為表空間分配一些不同的存儲組。
語法:[指定其他存儲組表空間]
db2 alter tablspace <ts_name> using stogroup <another sto_group_name>
例如:從一個舊存儲組改為名為“sg2”表空間“ts1”的新存儲組]
db2 alter tablespace ts1 using stogroup sg2
第1步:
語法:[ 刪除現(xiàn)有存儲組 ]
db2 drop stogorup <stogroup_name>
例如:[從數(shù)據(jù)庫中刪除存儲組“stg1”]
db2 drop stogroup stg1