Microsoft® SQL Server™ 2000 可根據(jù)在創(chuàng)建數(shù)據(jù)庫時所定義的增長參數(shù),自動擴(kuò)充數(shù)據(jù)庫。通過在現(xiàn)有的數(shù)據(jù)庫文件上分配其它的文件空間,或者在另一個新文件上分配空間,還可以手動擴(kuò)充數(shù)據(jù)庫。如果現(xiàn)有的文件已經(jīng)充滿,則可能需要擴(kuò)充數(shù)據(jù)或事務(wù)日志空間。如果數(shù)據(jù)庫已經(jīng)用完分配給它的空間而又不能自動增長,則會出現(xiàn) 1105 錯誤。
擴(kuò)充數(shù)據(jù)庫時,必須按至少 1 MB 增加該數(shù)據(jù)庫的大小。擴(kuò)充數(shù)據(jù)庫的權(quán)限默認(rèn)授予數(shù)據(jù)庫所有者,并自動與數(shù)據(jù)庫所有者身份一起傳輸。數(shù)據(jù)庫擴(kuò)充后,數(shù)據(jù)或事務(wù)日志文件立即可以使用新空間,這取決于哪個文件進(jìn)行了擴(kuò)充。
如果事務(wù)日志沒有設(shè)置為自動擴(kuò)充,則當(dāng)數(shù)據(jù)庫內(nèi)發(fā)生某些類型的活動時,該事務(wù)日志可能會用完所有空間。備份事務(wù)日志時,或者在數(shù)據(jù)庫使用簡單恢復(fù)模型的每個檢查點時,只清除事務(wù)日志中非活動(已提交)的部分。然后 SQL Server 可以重新使用該事務(wù)日志中被截取的、尚未使用的部分。
在備份數(shù)據(jù)庫時,SQL Server 不會截斷事務(wù)日志。
在擴(kuò)充數(shù)據(jù)庫時,建議指定文件的最大允許增長的大小。這樣做可以防止文件無限制地增大,以至用盡整個磁盤空間。若要指定文件的最大大小,請在使用SQL Server 企業(yè)管理器內(nèi)的"屬性"對話框創(chuàng)建數(shù)據(jù)庫時,使用 CREATE DATABASE 語句的 MAXSIZE 參數(shù)或者"將文件增長限制為 (MB)"選項。
擴(kuò)充數(shù)據(jù)庫以增大數(shù)據(jù)或事務(wù)日志空間的過程完全相同。
擴(kuò)充 tempdb
默認(rèn)情況下,在需要空間時 tempdb 數(shù)據(jù)庫會自動增長,因為文件的 MAXSIZE 設(shè)置為 UNLIMITED。因此,tempdb 可以一直增長,直至用完包含 tempdb 的磁盤上的所有空間。若要防止 tempdb 無限制地增長,請使用 ALTER DATABASE 語句或 SQL Server 企業(yè)管理器為 tempdb 設(shè)置 MAXSIZE。
相反,如果 tempdb 已經(jīng)設(shè)置了 MAXSIZE,而又需要增加 tempdb 的大小,則必須執(zhí)行以下操作之一:
◆增加 tempdb 當(dāng)前使用的默認(rèn)文件組中文件的大小。
◆將新文件添加到默認(rèn)文件組。
◆允許 tempdb 使用的文件自動增長。
重要 用戶定義的文件組不能與 tempdb 一起使用。它們只能與默認(rèn)文件組一起使用。
移動 tempdb
更改 tempdb 數(shù)據(jù)庫的物理位置:
1.使用 ALTER DATABASE 語句和 MODIFY FILE 子句更改 tempdb 數(shù)據(jù)庫,以更改 tempdb 中每個文件的物理文件名,使之引用新的物理位置(例如新磁盤)。
2.停止并重新啟動 SQL Server。
3.從原始位置刪除舊的 tempdb 數(shù)據(jù)庫文件。 (責(zé)任編輯:盧兆林)
|