隨筆 - 6  文章 - 129  trackbacks - 0
          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          常用鏈接

          留言簿(14)

          隨筆檔案(6)

          文章分類(467)

          文章檔案(423)

          相冊(cè)

          收藏夾(18)

          JAVA

          搜索

          •  

          積分與排名

          • 積分 - 827222
          • 排名 - 49

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          轉(zhuǎn)自: http://www.mzwu.com/article.asp?id=2476

          在SQL Server2000中要?jiǎng)h除日志釋放磁盤空間得分兩步進(jìn)行:

          ·執(zhí)行backup log語句來刪除不活動(dòng)日志,但此時(shí)磁盤空間并未釋放;
          ·收縮數(shù)據(jù)庫釋放未使用的磁盤空間;

          下邊詳細(xì)說明:

          ①.執(zhí)行backup log語句刪除不活動(dòng)日志

          執(zhí)行sql語句:backup log Northwind with no_log,不活動(dòng)日志將被刪除,下圖為sql語句執(zhí)行前后數(shù)據(jù)庫大?。?/span>





          但在資源管理器中查看,你會(huì)發(fā)現(xiàn)剩余的磁盤空間并沒有多出來,原因是日志刪除了,但占用的空間未被釋放,所以得再收縮下數(shù)據(jù)庫來釋放磁盤空間。

          說明:這個(gè)步驟也有人是執(zhí)行"dump transaction Northwind with no_log",但SQL Server2000幫助文件中說dump transaction和backup log是同義的,保險(xiǎn)起見這兩句可都執(zhí)行一下。

          SQL Server2000幫助相關(guān)說明:
          引用內(nèi)容
          DUMP DATABASE 和 DUMP TRANSACTION 語句與 BACKUP DATABASE 和 BACKUP LOG 語句同義。在以后的版本中可能會(huì)取消對(duì) DUMP DATABASE 和 DUMP TRANSACTION 語句的支持。 
          考慮刪除所有對(duì) DUMP DATABASE 的引用,并替換為對(duì) BACKUP DATABASE 的引用??紤]刪除所有對(duì) DUMP TRANSACTION 的引用,并替換為對(duì) BACKUP LOG 的引用。


          ②.收縮數(shù)據(jù)庫釋放未使用的磁盤空間

          收縮數(shù)據(jù)庫會(huì)刪除每個(gè)文件中未使用的頁,以釋放出磁盤空間。右鍵單擊數(shù)據(jù)庫,選擇"所有任務(wù)→收縮數(shù)據(jù)庫",點(diǎn)確定,你會(huì)看到剩余磁盤空間多了很多出來,數(shù)據(jù)庫大小也變化了:



          說明:第②步操作也可以通過執(zhí)行sql語句"dbcc shrinkdatabase(Northwind,1) "來進(jìn)行,但實(shí)際發(fā)現(xiàn)執(zhí)行非常慢!后測(cè)試可使用dbcc shrinkfile(n)語句,速度快很多,n的值可執(zhí)行'select * from sysfiles"來獲取!

          總結(jié)t-sql:

          /*第一步:查詢出文件編號(hào),修改@fileid值*/
          select * from sysfiles

          /*第二步:刪除日志并釋放空間*/
          declare @table nvarchar(50),@fileid int
          set @table = 'Northwind'
          set @fileid = 2

          dump transaction @table with no_log
          backup log @table with no_log
          dbcc shrinkfile(@fileid)
          More Information:http://wenku.baidu.com/view/099cf2f24693daef5ef73d32.html



          posted on 2012-05-09 20:42 Ke 閱讀(2471) 評(píng)論(0)  編輯  收藏 所屬分類: sql server
          主站蜘蛛池模板: 湘阴县| 德钦县| 蓝山县| 平乡县| 朝阳市| 龙陵县| 且末县| 昆山市| 漯河市| 思茅市| 苍梧县| 桂林市| 大竹县| 惠水县| 汉源县| 新蔡县| 巨野县| 潜山县| 秦安县| 琼海市| 抚州市| 沙河市| 黄龙县| 腾冲县| 新昌县| 达尔| 百色市| 安吉县| 北流市| 都兰县| 赤壁市| 湟中县| 吴桥县| 七台河市| 北海市| 丰宁| 天峻县| 青河县| 甘谷县| 双辽市| 南康市|