mssqlsql文件
資料庫在使用一段時間後,時常會出現因數據刪除而造成資料庫中空閑空間太多的情況,這時就需要減少分配給資料庫文件和事務日誌文件的磁碟空間,以免浪費磁碟空間。當資料庫中沒有數據時,可以修改資料庫文件屬性直接改變其佔用空間,但當資料庫中有數據時,這樣做會破壞資料庫中的數據,因此需要使用壓縮的方式來縮減資料庫空間。可以在資料庫屬性選項中選擇「Autoshrink」選項,讓系統自動壓縮資料庫,也可以用人工的方法來壓縮。人工壓縮資料庫有以下兩種方式:
1、用EnterpriseManager壓縮資料庫
在EnterpriseManager中在所要壓縮的資料庫上單擊右鍵,從快捷菜單中的「所有任務(AllTasks)」中選擇「ShrinkDatabase(壓縮資料庫)」選項
、用Transact-SQL命令壓縮資料庫
可以使用DBCC和DBCCSHRINKFILE命令來壓縮資料庫。其中DBCC命令對資料庫進行壓縮,DBCCSHRINKFILE命令對資料庫中指定的文件進行壓縮。
(1)DBCC
DBCC命令語法如下:
DBCC(database_name[,target_percent]
[,{NOTRUNCATE|}])
各參數說明如下:
target_percent指定將資料庫壓縮後,未使用的空間占資料庫大小的百分之幾。如果指定的百分比過大,超過了壓縮前未使用空間所佔的比例,則資料庫不會被壓縮。並且壓縮後的資料庫不能比資料庫初始設定的容量小。
NOTRUECATE
將資料庫縮減後剩餘的空間保留在資料庫,中不返還給操作系統。如果不選擇此選項,則剩餘的空間返還給操作系統。
將資料庫縮減後剩餘的空間返還給操作系統。使用此命令時SQLServer將文件縮減到最後一個文件分配,區域但不移動任何數據文件。選擇此項後,target_percent選項就無效了。
壓縮資料庫mytest的未使用空間為資料庫大小的20%。
db(mytest,20)
運行結果如下:
DBCCexecutioncompleted.IfDBCCprintederrormessages,contactyoursystem.
(2)DBCCSHRINKFILE
DBCCSHRINKFILE命令壓縮當前資料庫中的文件。其語法如下:
DBCCSHRINKFILE({file_name|file_id}
{[,target_size]|
[,{EMPTYFILE|NOTRUNCATE|}]})
各參數說明如下:
file_id
指定要壓縮的文件的鑒別號(number,即ID)。文件的ID號可以通過FILE_ID()函數或如本章前面所講述的Sp_helpdb系統存儲過程來得到。
target_size
指定文件壓縮後的大小。以MB為單位。如果不指定此選項,SQLServer就會盡最大可能地縮減文件。
EMPTYFILE
指明此文件不再使用,將移動所有在此文件中的數據到同一文件組中的其它文件中去。執行帶此參數的命令後,此文件就可以用ALTERDATABASE命令來刪除了。
其餘參數NOTRUNCATE和與DBCC命令中的含義相同。
例6-15:壓縮資料庫mydb中的資料庫文件mydb_data2的大小到1MB。usemydbdbshrinkfile(mydb_data2,1)
❷ MSSQL11,MSSQLSERVER在哪個文件夾
在【C:】中可以找到,無論你的SQL裝那裡,他都是建在這里的。
比如查詢分析器isqlw.exe,企業管理器SQLServerEnterpriseManager.MSC,但是是必須重裝才能用,因為它要注冊很多東西。