国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

數據庫收縮:NOTRUNCATE與TRUNCATEONLY

2024-07-21 02:46:18
字體:
來源:轉載
供稿:網友
數據庫收縮:NOTRUNCATE與TRUNCATEONLY

在進行數據庫收縮時,我們有2個可用選項:NOTRUNCATETRUNCATEONLY。這篇文章我們會詳細討論下這2個選項的具體區別。

NOTRUNCATE

當你對數據庫收縮命令提供NOTRUNCATE選項時,意味著SQL Server將你數據庫末尾的頁移到前面,那里可以找到一些空閑的未分配空間(將釋放的空間繼續保留在文件中)。唯一的區別是數據文件本身不會收縮。

這就是說在數據庫末尾的未使用空間還是沒有重聲明回給文件系統。用NOTRUNCATE選項進行數據收縮后,最后在你數據文件的末尾會有一些空的可用空間——當然會帶來索引碎片。

TRUNCATEONLY

當你用TRUNCATEONLY參數執行數據庫收縮命令時,SQL Server從末尾到開始,只要在文件末尾有空的可用空間,就會把數據文件清理掉。使用這個選項SQL Server在數據文件里不會移動任何頁。你本人必須確認在你的數據文件末尾會有一些可用空間,這樣TRUNCATEONLY會為你申明一些空間。

如果你已經仔細閱讀了這點,現在你應該能想象當你進行常規的數據庫收縮,不使用這些選項時,SQL Server內部會發生什么:

  • 第1步SQL Server使用NOTRUNCATE選項進行數據庫收縮操作來在你的數據文件末尾獲得一些可用空間。在你的操作系統里,你的文件物理大小沒有發生改變。這一步會帶來一些索引碎片。
  • 第2步SQL Server使用TRUNCATEONLY選項進行數據庫收縮操作,最后在數據文件末尾移除未分配的區。在操作系統里,這也會把文件的物理大小收縮。
小結

數據庫收縮命令提供的任何選項都與你無關:因為從不推薦進行數據庫收縮!如果你知道在你數據文件末尾有未分配的空間,你不想要這些的話,使用TRUNCATEONLY選項進行數據庫收縮更安全,因為你不會引入索引碎片。但一旦你使用了NOTRUNCATE選項,SQL Server需要在你的數據文件里移動頁,這會帶來嚴重的索引碎片。

感謝關注!


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 曲水县| 额济纳旗| 保山市| 德江县| 监利县| 潼关县| 山东省| 平罗县| 翼城县| 绍兴县| 石柱| 千阳县| 监利县| 舟曲县| 永靖县| 元谋县| 卓尼县| 绵阳市| 贵港市| 永新县| 梅河口市| 辽宁省| 潼南县| 临汾市| 湖南省| 彰化县| 福建省| 平乡县| 正蓝旗| 远安县| 延边| 宁阳县| 邓州市| 兴隆县| 泰和县| 丰台区| 平遥县| 阿尔山市| 宜昌市| 温泉县| 化德县|