一 前言 在實際生產環境中,我們常常會遇到表空間不足的問題,針對此類問題,只要我們的磁碟空間充足,我們可以通過更改數據文件大小、添加新的數據文件等方式來解決; 管理數據文件的操作需要 DM伺服器處於打開狀態下; 二 數據文件管理 2.1 添加數據文件 在達夢資料庫中,一個表空間可以對應磁碟上的多個數 ...
一 前言
在實際生產環境中,我們常常會遇到表空間不足的問題,針對此類問題,只要我們的磁碟空間充足,我們可以通過更改數據文件大小、添加新的數據文件等方式來解決;
管理數據文件的操作需要 DM伺服器處於打開狀態下;
二 數據文件管理
2.1 添加數據文件
在達夢資料庫中,一個表空間可以對應磁碟上的多個數據文件。因此,當表空間的空間被用完的時候,我們可以通過在表空間中增加數據文件的形式,來擴大當前表空間的大小。
1.字元界面
在用戶表空間中添加數據文件。添加的數據文件大小最小為 4096頁大小,如頁大小為 8K,則可添加的文件最小值為 40968k=32M。比如在 bookshop 表空間中添加大小為 64M的數據文件。
ALTER TABLESPACE bookshop ADD DATAFILE 'd:\book.dbf' SIZE 64;
一個表空間中,數據文件和鏡像文件一起不能超過 256個。例如,如果創建表空間的時候已經指定了 1個數據文件,那麼添加數據文件的時候,最多只能添加 255個了。
2.圖形界面
當然,我們也可以通過圖形界面管理工具進行操作,打開管理工具,右鍵點擊表空間名稱,點擊修改,在右側視窗點擊添加,然後設定新文件的路徑信息,初始大小,是否自動擴展等信息,點擊確定即可完成新數據文件的添加;
2.2 擴展數據文件大小
與添加數據文件相同,數據文件大小的擴展也可以通過兩種方式:
1.字元界面
擴展用戶表空間中已存在的數據文件的大小。比如擴展 bookshop表空間中數據文件 book.dbf大小至 128M。
ALTER TABLESPACE bookshop RESIZE DATAFILE 'd:\book.dbf' TO 128;
2.圖形界面
打開管理工具,右鍵點擊表空間名稱,點擊修改,雙擊文件大小處,即可修改增大數據文件的大小(單位是 M)。
2.3 數據文件自動擴展
通過修改數據文件大小固然可以解決問題,但是如果每次都由我們手動來修改大小,第一會降低工作效率,第二是我們並不知道每次應該把文件大小設置為多少才較為合適。為了應對這種情況,達夢資料庫內提供了數據文件自動擴展的機制。當表空間的使用接近上限時,數據文件的大小會自動擴展,從而應對空間不足的情況。
具體操作如下:
1.字元界面
1.1 創建表空間時可指定文件的擴展屬性。如創建表空間時指定數據文件的擴展屬性為可自動擴展,每次擴展大小為 10M,最大可擴展到 100M:
CREATE TABLESPACE bookshop DATAFILE 'd:\book.dbf' SIZE 32 AUTOEXTEND ON NEXT 10 MAXSIZE 100;
1.2 在表空間中添加文件時可指定文件的擴展屬性。如添加數據文件時指定擴展屬性為不可自動擴展:
ALTER TABLESPACE bookshop ADD DATAFILE 'd:\book.dbf' SIZE 1024 AUTOEXTEND OFF;
1.3 可修改表空間中已存在的數據文件的擴展屬性。如修改數據文件的擴展屬性為可自動擴展:
ALTER TABLESPACE bookshop DATAFILE 'd:\book.dbf' AUTOEXTEND ON;
2.圖形界面
打開管理工具,右鍵點擊表空間名稱,點擊修改,然後在彈出的選項框內,修改自動擴充的設定,把自動擴充變成打開即可。需要註意後面兩個選項卡擴充尺寸和擴充上限,分別對應的是每次數據文件擴展的大小,以及該數據文件擴展的上限,0 的話則代表無上限。
說明:
OFF 表示文件不可擴展,ON 表示文件可擴展。文件擴展大小表示當需要擴展文件時,文件一次增大的空間大小,取值範圍是 0—2048,單位是 M。文件限制大小表示文件可擴展的最大空間大小,為 0 或者 UNLIMITED 表示無限制,單位是 M。預設情況下,文件擴展大小是 1M,文件的最大大小是無限制的。
2.4 修改數據文件的路徑
如果出現表空間滿了,而其它文件系統空間充足,那也可以通過數據文件的遷移來釋放空間壓力,具體的操作參見另一篇博客《Linux平臺達夢資料庫V7之數據文件的移動》。