校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > SQLServer中數據庫文件的存放方式,文件和文件組

SQLServer中數據庫文件的存放方式,文件和文件組

熱門標簽:陜西電銷外呼系統好用嗎 最新人工智能電銷機器人 蘭州語音外呼系統運營商 成都電話外呼系統一般多少錢 數字匠心電銷機器人 如何做地圖標注圖鋪 al智能電話機器人 銀川高頻外呼回撥系統多少錢 沒聽見電話機器人幫你接

簡介

    在SQL SERVER中,數據庫在硬盤上的存儲方式和普通文件在Windows中的存儲方式沒有什么不同,僅僅是幾個文件而已.SQL SERVER通過管理邏輯上的文件組的方式來管理文件.理解文件和文件組的概念對于更好的配置數據庫來說是最基本的知識。

理解文件和文件組

    在SQL SERVER中,通過文件組這個邏輯對象對存放數據的文件進行管理.

    先來看一張圖:

       1

    我們看到的邏輯數據庫由一個或者多個文件組構成

    而文件組管理著磁盤上的文件.而文件中存放著SQL SERVER的實際數據.

為什么通過文件組來管理文件

    對于用戶角度來說,需對創建的對象指定存儲的文件組只有三種數據對象:表,索引和大對象(LOB)

    使用文件組可以隔離用戶和文件,使得用戶針對文件組來建立表和索引,而不是實際磁盤中的文件。當文件移動或修改時,由于用戶建立的表和索引是建立在文件組上的,并不依賴具體文件,這大大加強了可管理性.

    還有一點是,使用文件組來管理文件可以使得同一文件組內的不同文件分布在不同的硬盤中,極大的提高了IO性能.

    SQL SERVER會根據每個文件設置的初始大小和增長量會自動分配新加入的空間,假設在同一文件組中的文件A設置的大小為文件B的兩倍,新增一個數據占用三頁(Page),則按比例將2頁分配到文件A中,1頁分配到文件B中.

文件的分類

  •     首要文件:這個文件是必須有的,而且只能有一個。這個文件額外存放了其他文件的位置等信息.擴展名為.mdf
  •     次要文件:可以建任意多個,用于不同目的存放.擴展名為.ndf
  •     日志文件:存放日志,擴展名為.ldf

    在SQL SERVER 2008之后,還新增了文件流數據文件和全文索引文件.

    上述幾種文件名擴展名可以隨意修改,但是我推薦使用默認的擴展名。

    我們可以通過如下語句查看數據庫中的文件情況:

    2

     還有一點要注意的是,如果一個表是存在物理上的多個文件中時,則表的數據頁的組織為N(N為具體的幾個文件)個B樹.而不是一個對象為一個B樹.

創建和使用文件組

    創建文件或是文件組可以通過在SSMS中或者使用T-SQL語句進行。對于一個數據庫來說,既可以在創建時增加文件和文件組,也可以向現有的數據庫添加文件和文件組.這幾種方式大同小異.下面來看一下通過SSMS向現有數據庫添加文件和文件組.

    首先創建文件組:

    3

    文件組創建好后就可以向現有文件組中添加文件了:

    4

下面我們就可以通過語句將創建的表或者索引加入到新的文件組中了:

5

使用多個文件的優點與缺點

    通常情況下,小型的數據庫并不需要創建多個文件來分布數據。但是隨著數據的增長,使用單個文件的弊端就開始顯現。

    首先:使用多個文件分布數據到多個硬盤中可以極大的提高IO性能.

    其次:多個文件對于數據略多的數據庫來說,備份和恢復都會輕松很多.我碰見過遇到一個150G的數據庫,手頭卻沒有這么大的存儲設備…

    但是,在數據庫的世界中,每一項好處往往伴隨著一個壞處:

    顯而易見,使用多文件需要占用更多的磁盤空間。這是因為每個文件中都有自己的一套B樹組織方式,和自己的增長空間。當然了,還有一套自己的碎片-.-但是在大多數情況下,多占點磁盤空間帶來的弊端要遠遠小于多文件帶來的好處.

總結

  本文對SQL SERVER中文件和文件組的概念進行了簡單闡述,并在文中講述了文件和文件組的配置方式。按照業務組織好不同的文件組來分布不同的文件,使得性能的提升,對于你半夜少接幾個電話的幫助是灰常大滴:-)

標簽:遼源 朔州 本溪 巴彥淖爾 邢臺 鹽城 通化 宜春

巨人網絡通訊聲明:本文標題《SQLServer中數據庫文件的存放方式,文件和文件組》,本文關鍵詞  SQLServer,中,數據庫,文件,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQLServer中數據庫文件的存放方式,文件和文件組》相關的同類信息!
  • 本頁收集關于SQLServer中數據庫文件的存放方式,文件和文件組的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 湘西| 昌邑市| 确山县| 梨树县| 太仆寺旗| 安龙县| 宁河县| 喀什市| 安泽县| 海盐县| 施秉县| 忻城县| 松溪县| 新竹市| 彩票| 隆林| 孟村| 正宁县| 南和县| 习水县| 阳高县| 文登市| 淮北市| 股票| 朝阳市| 遵义县| 雷波县| 富民县| 德清县| 孝感市| 洛宁县| 新乐市| 秦安县| 莱阳市| 哈尔滨市| 曲靖市| 台北县| 土默特左旗| 二连浩特市| 潜山县| 沂源县|