Ⅰ 建立一個資料庫,邏輯名稱為Student,包含1個數據文件和1個日誌文件。數據文件初始大小為10M
sql">ifexists(select*fromsys.sysdatabaseswherename='Student')
begin
usemaster
dropdatabaseStudent
end
go
createdatabaseStudent
on
--路徑根據實際情況自行修改
(name=N'Student',filename=N'E:Student.mdf',size=10mb,maxsize=unlimited,filegrowth=1)
logon
(name=N'Student',filename=N'E:Student_log.ldf',size=10mb,maxsize=unlimited,filegrowth=1)
Ⅱ SQL SERVER2005資料庫主要由哪些邏輯對象組成物理資料庫文件包括哪些文件拜託了各位 謝謝
在Microsoft SQL Server 2005中,用於數據存儲的實用工具是資料庫。資料庫的物理表現是操作系統文件,即在物理上,一個資料庫由一個或多個磁碟上的文件組成。這種物理表現只對資料庫管理員是可見的,而對用戶是透明的。邏輯上,一個資料庫由若干個用戶可視的組件構成,如表、視圖、角色等,這些組件稱為資料庫對象。用戶利用這些邏輯資料庫的資料庫對象存儲或讀取資料庫中的數據,也直接或間接地利用這些對象在不同應用程序中完成存儲、操作和檢索等工作。邏輯資料庫的資料庫對象可以從企業管理器中查看. 每個SQL Server 2005資料庫(無論是系統資料庫還是用戶資料庫)在物理上都由至少一個數據文件和至少一個日誌文件組成。出於分配和管理目的,可以將資料庫文件分成不同的文件組。 數據文件:分為主要數據文件和次要數據文件兩種形式。每個資料庫都有且只有一個主要數據文件。主要數據文件的默認文件擴展名是.mdf。它將數據存儲在表和索引中,包含資料庫的啟動信息,還包含一些系統表,這些表記載資料庫對象及其他文件的位置信息。次要數據文件包含除主要數據文件外的所有數據文件。有些資料庫可能沒有次要數據文件,而有些資料庫則有多個次要數據文件。次要數據文件的默認文件擴展名是.ndf。 日誌文件:SQL Server具有事務功能,以保證資料庫操作的一致性和完整性。所謂事務就是一個單元的工作,該單元的工作要麼全部完成,要麼全部不完成。日誌文件用來記錄資料庫中已發生的所有修改和執行每次修改的事務。SQL Server是遵守先寫日誌再執行資料庫修改的資料庫系統,因此如果出現資料庫系統崩潰,資料庫管理員(DBA)可以通過日誌文件完成資料庫的修復與重建。每個資料庫必須至少有一個日誌文件,但可以 不止一個。日誌文件的默認文件擴展名是.1df。建立資料庫時,SQI。Server會自動建立資料庫的日誌文件。 文件組:一些系統可以通過控制在特定磁碟驅動器上放置的數據和索引來提高自身的性能。文件組可以對此進程提供幫助。系統管理員可以為每個磁碟驅動器創建文件組,然後將特定的表、索引、或表中的text、ntext或image數據指派給特定的文件組。 SQI.Server有兩種類型的文件組:主文件組和用戶定義文件組。主文件組包含主要數據文件和任何沒有明確指派給其他文件組的文件,系統表的所有頁均分配在主文件組中;用戶定義文件組是在CR E_ATE DATA_BASE或AI,TER DATA.BASE語句中,使用FII,EGROUP關鍵字指定的文件組。SQt.Server 2005在沒有文件組時也能有效地工作,因此許多系統不需要指定用戶定義文件組。在這種情況下,所有文件都包含在主文件組中,而且SQI。Server 2005可以在資料庫內的任何位置分配數據。 每個資料庫中都有一個文件組作為默認文件組運行。當SQI。Server給創建時沒有為其指定文件組的表或索引分配頁時,將從默認文件組中進行分配。一次只能有一個文件組作為默認文件組。如果沒有指定默認的文件組,主文件組則成為默認的文件組。
Ⅲ 2. 簡述oracle資料庫的邏輯存儲結構(麻煩知道的告訴下)
Oracle資料庫邏輯存儲結構是Oracle資料庫創建後利用邏輯概念來描述資料庫內部數據的組織和管理形式。包括表空間(tablespace)、段(segment)、區(extent)和塊(block)四種。一個表空間由多個段構成;一個段由多個區構成,一個區由多個塊構成。資料庫是由表空間構成的,數據存儲在表空間中。一個表空間包含一個或多個數據文件,但一個數據文件只能屬於一個表空間。
邏輯存儲結構概念存儲在數據字典中,用戶可通過查詢數據字典獲取邏輯存儲結構信息。
Ⅳ oracle資料庫備份文件包括日誌嗎
歸檔日誌就是重做日誌的備份, 而重做日誌記錄了數據的所有變化(DML,DDL或管理員對數據所作的結構性更改等),可以用戶數據恢復,也可用戶其他文件的恢復。
Ⅳ 資料庫,數據文件和日誌文件三者之間是什麼關系
資料庫是一種數據集合,
資料庫的內容當然得存放在資料庫文件里
然後我們操作資料庫,比如插入,更新啊,都會記錄到日誌文件裡面
明白了嘛?
Ⅵ sql資料庫中包含哪幾種文件
根據作用不同,分為以下三種:
1、主數據文件。
用來存儲資料庫的數據和資料庫的啟動信息。
每個資料庫必須有且只有一個主數據文件,其擴展名為.mdf。
實際的主數據文件都有兩種名稱:操作系統文件名和邏輯文件名(在sql語句中會用到)
2、輔助數據文件
用來存儲資料庫的數據,可以擴展存儲空間。
一個資料庫可以有多個輔助數據文件。擴展名為.ndf
3、事務日誌文件
用來存放資料庫的事務日誌。凡是對資料庫進行的增、刪、改等操作,都會記錄在事務日誌文件中。
每個資料庫至少有一個事務日誌文件。擴展名為.ldf
Ⅶ sql資料庫中包含哪幾種文件
sql資料庫中包含主數據文件、事務日誌文件、輔助數據文件三種文件。
1、主數據文件
該文件包含資料庫的啟動信息,並用於存儲數據。每個資料庫都有一個主要數據文件。
2、事務日誌文件
這些文件包含用於恢復資料庫的日誌信息。每個資料庫都必須至少有一個日誌文件。
3、輔助數據文件
這些文件含有不能置於主要數據文件中的所有數據。如果主文件可以包含資料庫中的所有數據,那麼資料庫就不需要次要數據文件。
(7)從邏輯上看資料庫包括日誌文件嗎擴展閱讀
sql資料庫特點
1、SQL資料庫的數據體系結構基本上是三級結構,但使用術語與傳統關系模型術語不同。在SQL中,關系模式(模式)稱為「基本表」(basetable);存儲模式(內模式)稱為「存儲文件」(storedfile);子模式(外模式)稱為「視圖」(view);元組稱為「行」(row);屬性稱為「列」(column)。
2、sql資料庫是非過程化語言、統一的語言、是所有關系型資料庫的公共語言。
3、SQL用戶可以是應用程序,也可以是終端用戶。SQL語句可嵌入在宿主語言的程序中使用,宿主語言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada語言等。SQL用戶也能作為獨立的用戶介面,供交互環境下的終端用戶使用。
Ⅷ Oracle中邏輯結構和物理結構,他們之間的關系是什麼
1.1、物理結構:由構成資料庫的操作系統文件組成,它是從操作系統的角度來分析資料庫的組成,在操作系統中可以看得到的文件,也就是說它是資料庫在操作系統中的存儲位置。常見的物理結構包括:控制文件、數據文件、重作日誌文件、歸檔日誌文件、初始化參數文件、還有其它文件(密碼文件、報警日誌文件和後台及用戶跟蹤文件)。
1.2、邏輯結構:描述資料庫從邏輯上如何存儲資料庫中的數據。它是從資料庫的角度來分析數據的邏輯存儲。常見的邏輯結構包括:表空間、數據段、擴展區間、塊構成。需要明白的是:
*1、資料庫邏輯上是由一個或多個表空間組成的,常見的表空間包括:系統表空間、系統輔助表空間、UNDO表空間、臨時表空間、用戶表空間
*2、表空間與數據文件是物理上的一對多的關系,既一個表空間對應一個或多個數據文件,但是一個數據文件只能屬於一個表空間
*3、表空間將資料庫的物理結構與邏輯結構相連接
2、物理結構
2.1、控制文件 (Control files):主要記錄資料庫的物理結構及其他的一些控制信息,如資料庫的名稱、數據文件、日誌文件的名稱及位置。通常oracle會保留多個控制文件副本,並分別放在不同的物理位置,一旦其中的某個控制文件損壞,則可以通可其它的副本進行啟動。
參數文件init.ora記錄了控制文件的位置
控制文件包括如下主要信息
�6�1資料庫的名字,檢查點信息,資料庫創建的時間戳
�6�1所有的數據文件,聯機日誌文件,歸檔日誌文件信息
�6�1備份信息等
有了這些信息,Oracle就知道那些文件是數據文件,現在的重做日誌文件是哪些,這些都是系統啟動和運行的基本條件,所以他是Oracle運行的根本。如果沒有控制文件系統是不可能啟動的。控制文件是非常重要的,一般採用多個鏡相復制來保護控制文件,或採用RAID來保護控制文件。控制文件的丟失,將使資料庫的恢復變的很復雜。
控制文件信息可以從v$controlfile中查詢獲得
SQL> select * from v$controlfile;
STATUS NAME
------- --------------------------------------------------------------------------------
C:\ORACLE\ORADATA\ORCL\CONTROL01.CTL
C:\ORACLE\ORADATA\ORCL\CONTROL02.CTL
C:\ORACLE\ORADATA\ORCL\CONTROL03.CTL2.2、數據文件(Data files),注意可以與後面講到的表空間進行對比,數據文件的詳細信息記載在控制文件中。注意:SYSTEM表空間是不允許離線的。在進行資料庫恢復時,很多時候需要先將故障數據文件離線。
可以通過如下方式查看數據文件:
SQL> select name,status,enabled from v$datafile;
NAME STATUS ENABLED
-------------------------------------------------------------------------------- ------- ----------C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSTEM01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\UNDOTBS01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\SYSAUX01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\USERS01.DBF ONLINE READ WRITE
C:\ORACLE\PRODUCT\10.1.0\ORADATA\ORCL\EXAMPLE01.DBF ONLINE READ WRITE
C:\ORACLE\ORADATA\ORCL\TEMP01.DBF ONLINE READ WRITE
2.3、重做日誌文件(Redo files)用戶對資料庫進行的任何操作都會記錄在重做日誌文件。在了解重做日誌之前必須了解重做日誌的兩個概念,重做日誌組和重做日誌組成員(Member),一個資料庫中至少要有兩個日誌組文件,一組寫完後再寫另一組,即輪流寫。每個日誌組中至少有一個日誌成員,一個日誌組中的多個日誌成員是鏡相關系,有利於日誌文件的保護,因為日誌文件的損壞,特別是當前聯機日誌的損壞,對資料庫的影響是巨大的。
聯機日誌組的交換過程叫做切換,需要特別注意的是,日誌切換在一個優化效果不好的資料庫中會引起臨時的「掛起」。掛起大致有兩種情況:
�6�1在歸檔情況下,需要歸檔的日誌來不及歸檔,而聯機日誌又需要被重新利用
�6�1檢查點事件還沒有完成(日誌切換引起檢查點),而聯機日誌需要被重新利用
解決這種問題的常用手段是:
i.增加日誌組
ii.增大日誌文件成員大小
通過v$log可以查看日誌組,v$logfile可以查看具體的成員文件。SQL> select group#,thread#,bytes,archived,members,archived,status from v$log; GROUP# THREAD# BYTES ARC MEMBERS ARC STATUS
---------- ---------- ---------- --- ---------- --- ----------------
1 1 10485760 NO 1 NO CURRENT
2 1 10485760 NO 1 NO INACTIVE
3 1 10485760 NO 1 NO INACTIVE2.4、歸檔日誌文件(Archived files)Oracle可以運行在兩種模式之中,歸檔模式和不歸檔模式。如果不用歸檔模式,當然,你就不會有歸檔日誌,但是,你的系統將不會是一個實用系統,Oracle不能保證數據能夠被正確恢復,因為你可能會丟失數據。但是在歸檔模式中,為了保存用戶的所有修改,在重做日誌文件切換後和被覆蓋之間系統將他們另外保存成一組連續的文件系列,該文件系列就是歸檔日誌文件。
有人或許會說,歸檔日誌文件佔領我大量的硬碟空間,其實,具體想一想,你是願意浪費一點磁碟空間來保護你的數據,還是願意丟失你的數據呢?顯而義見,我們需要保證我們的數據的安全性。其實,歸檔並不是一直佔領你的磁碟空間,你可以把她備份到磁帶上,或則刪除上一次完整備份前的所有日誌文件。2.5、初始化參數文件(Parameter file)initSID.ora或init.ora文件,因為版本的不一樣,其位置也可能會不一樣。在8i或10g中,通常位於$ORACLE_HOME/admin/<SID>/Pfile下
初始化文件記載了許多資料庫的啟動參數,如內存,控制文件,進程數等,在資料庫啟動的時候載入(Nomount時載入),初始化文件記錄了很多重要參數,對資料庫的性能影響很大,如果不是很了解,不要輕易亂改寫,否則會引起資料庫性能下降。2.6、其他文件i . 密碼文件。用於Oracle 的具有sysdba許可權用戶的認證。文件一般位於
$ORACLE_HOME/database/PWD<sid>.ora。
ii. 日誌文件�6�1報警日誌文件(alert.log或alrt<SID>.ora)
記錄資料庫啟動,關閉和一些重要的出錯信息。資料庫管理員應該經常檢查這個文件,並對出現的問題作出即使的反應。你可以通過以下SQL 找到他的路徑
select value from v$PARAMETER where name ='background_mp_dest';
VALUE
--------------------------------------------------------------------------------
C:\oracle\admin\orcl\bmp
�6�1後台或用戶跟蹤文件
系統進程或用戶進程出錯前寫入的信息,一般不可能讀懂,可以通過ORACLE的TKPROF工具轉化為可以讀懂的格式。對於系統進程產生的跟蹤文件與報警日誌文件的路徑一樣,用戶跟蹤文件的路徑,你可以通過以下SQL找到他的路徑
select value from v$PARAMETER where name ='user_mp_dest';
SQL> select value from v$PARAMETER where name ='user_mp_dest';VALUE
--------------------------------------------------------------------------------
C:\oracle\admin\orcl\ump3、邏輯結構
3.1、表空間(tablespace)
表空間是資料庫中的基本邏輯結構,一系列數據文件的集合。一個表空間可以包含多個數據文件,但是一個數據文件只能屬於一個表空間。3.2、 段(Segment)
段是對象在資料庫中佔用的空間,雖然段和資料庫對象是一一對應的,但段是從資料庫存儲的角度來看的。一個段只能屬於一個表空間,當然一個表空間可以有多個段。
表空間和數據文件是物理存儲上的一對多的關系,表空間和段是邏輯存儲上的一對多的關系,段不直接和數據文件發生關系。一個段可以屬於多個數據文件,關於段可以指定擴展到哪個數據文件上面。
段基本可以分為以下四種
�6�1數據段(Data Segment)
�6�1索引段(Index Segment)
�6�1回滾段(Rollback Segment)
�6�1臨時段(Temporary Segment)3.3、區間(Extent)
在一個段中可以存在多個區間,區間是為數據一次性預留的一個較大的存儲空間,直到那個區間被用滿,資料庫會繼續申請一個新的預留存儲空間,即新的區間,一直到段的最大區間數(Max Extent)或沒有可用的磁碟空間可以申請。
在ORACLE8i以上版本,理論上一個段可以無窮個區間,但是多個區間對ORACLE卻是有性能影響的,ORACLE建議把數據分布在盡量少的區間上,以減少ORACLE的管理與磁頭的移動,但是在某些特殊情況下,需要把一個段分布在多個數據文件或多個設備上,適當的加多區間數也是有很大好處的。3.4、Oracle數據塊(Block)
ORACLE最基本的存儲單位,他是OS數據塊的整數倍。ORACLE的操作都是以塊為基本單位,一個區間可以包含多個塊(如果區間大小不是塊大小的整數倍,ORACLE實際也擴展到塊的整數倍)。3.5、基本表空間介紹
3.5.1、系統輔助表空間(sysaux)
SYSAUX表空間在Oracle Database 10g中引入,作為SYSTEM表空間的輔助表空間.
以前一些使用獨立表空間或系統表空間的資料庫組件現在在SYSAUX表空間中創建.
通過分離這些組件和功能,SYSTEM表空間的負荷得以減輕.反復創建一些相關對象及組件引起SYSTEM表空間的碎片問題得以避免。
3.5.2、系統表空間(System)
該表空間包含的數據文件稱為系統數據文件。
該存放系統表和數據字典,一般不放用戶的數據,但是用戶腳本,如過程,函數,包等卻是保存在數據字典中的。
名詞解釋:數據字典
數據字典是一些系統表或視圖,他存放系統的信息,他包括資料庫版本,數據文件信息,表與索引等段信息,系統的運行狀態等各種和系統有關的信息和用戶腳本信息。資料庫管理員可以通過對數據字典的查詢,就可以了解到Oracle的運行狀態。
查看數據數據字典的SQL
select * from dict;
查看內部系統表的SQL
select * from v$fixed_view_definition;
大量的讀少量的寫是該表空間的一個顯著的特點。再次提醒:該表空間不能離線
3.5.3、 臨時表空間(Temporary)
該表空間包含的數據文件稱為臨時數據文件
主要存放用戶的排序等臨時數據,因為沒有辦法在一個永久表空間上開辟臨時段,所以就必須有一個臨時表空間,主要用於不能在內存上進行的排序操作。我們必須為用戶指定一個臨時表空間。
臨時段佔有的空間會在下次系統啟動的時候全部被釋放。
3.5.4、回滾段表空間(Rollback)
如果資料庫進行對數據的修改,那麼就必須使用回滾段,回滾段是用來臨時存放修改前的數據(UNDO)。回滾段通常都放在一個單獨的表空間上(回滾表空間),避免表空間碎片化,這個表空間包含的數據文件就是回滾數據文件。在Oracle9i中,提供了單獨的表空間用於保存回滾段,不再需要手工干預。
*1回滾段在系統中的作用
當資料庫進行更新插入刪除等操作的時候,新的數據被更新到原來的數據文件,而舊的數據(Before Image)就被放到回滾段中,如果數據需要回滾,那麼可以從回滾段將數據再復制到數據文件中。來完成數據的回滾。在系統恢復的時候, 回滾段可以用來回滾沒有被commit 的數據,解決系統的一直性讀。
回滾段在什麼情況下都是大量的寫,一般是少量讀,因此建議把回滾段單獨出來放在一個單獨的設備(如單獨的磁碟或RAID),以減少磁碟的IO爭用。
*2、回滾段的工作方式
�6�1一個回滾表空間可以被劃分成多個回滾段.
�6�1一個回滾段可以保存多個會話的數據.
�6�1回滾段是一個圓形的數據模型
3.5.5、用戶表空間(User)
其包含的數據文件稱為用戶數據文件
一般是由用戶建立,來存取用戶數據的表空間,一般有兩類常見的用戶型數據,數據和索引,一般來說,如果條件許可的話,可以考慮放在不同的磁碟上。
3.5.6 例子表空間(example):例子表空間,可以不管。,它是資料庫在操作系統中的存儲位置。常見的物理結構包括:控制文件、數據文件、重作日誌文件、歸檔日誌文件、初始化參數文件、還有其它文件(密碼文件、報警日誌文件和後台及用戶跟蹤文件)。
Ⅸ 如何查看sql2008資料庫的事務日誌文件
在SQL Server 7.0和SQL Server2000中,可以用下面的命令查看: DBCC log ( {dbiddbname}, [, type={01234}] ) 參數: Dbid or dbname - 任一資料庫的ID或名字 type - 輸出結果的類型: 0 - 最少信息(operation, context, transaction id) 1 - 更多信息(plus flags, tags, row length) 2 - 非常詳細的信息(plus object name, index name,page id, slot id) 3 - 每種操作的全部信息 4 - 每種操作的全部信息加上該事務的16進制信息 默認 type = 0 要查看MSATER資料庫的事務日誌可以用以下命令: DBCC log (master) 釋放日誌空間 1.清空日誌 DUMP TRANSACTION 庫名 WITH NO_LOG 2.截斷事務日誌: BACKUP LOG 資料庫名 WITH NO_LOG 3.收縮資料庫文件(如果不壓縮,資料庫的文件不會減小 企業管理器--右鍵你要壓縮的資料庫--所有任務--收縮資料庫--收縮文件 --選擇日誌文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了 --選擇數據文件--在收縮方式里選擇收縮至XXM,這里會給出一個允許收縮到的最小M數,直接輸入這個數,確定就可以了 也可以用SQL語句來完成 --收縮資料庫 DBCC SHRINKDATABASE(客戶資料) --收縮指定數據文件,1是文件號,可以通過這個語句查詢到:select * from sysfiles DBCC SHRINKFILE(1) 4.為了最大化的縮小日誌文件(如果是sql 7.0,這步只能在查詢分析器中進行) a.分離資料庫: 企業管理器--伺服器--資料庫--右鍵--分離資料庫 b.在我的電腦中刪除LOG文件 c.附加資料庫: 企業管理器--伺服器--資料庫--右鍵--附加資料庫 此法將生成新的LOG,大小隻有500多K 或用代碼: 下面的示例分離 pubs,然後將 pubs 中的一個文件附加到當前伺服器。 a.分離 E X E C sp_detach_db @dbname = 'pubs' b.刪除日誌文件 c.再附加 E X E C sp_attach_single_file_db @dbname = 'pubs', @physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\pubs.mdf' 5.為了以後能自動收縮,做如下設置: 企業管理器--伺服器--右鍵資料庫--屬性--選項--選擇"自動收縮" --SQL語句設置方式: E X E C sp_dboption '資料庫名', 'autoshrink', 'TRUE' 6.如果想以後不讓它日誌增長得太大 企業管理器--伺服器--右鍵資料庫--屬性--事務日誌 --將文件增長限制為xM(x是你允許的最大數據文件大小) --SQL語句的設置方式: alter database 資料庫名 modify file(name=邏輯文件名,maxsize=20) 特別注意: 請按步驟進行,未進行前面的步驟,請不要做後面的步驟 否則可能損壞資料庫. 一般不建議做第4,6兩步 第4步不安全,有可能損壞資料庫或丟失數據 第6步如果日誌達到上限,則以後的資料庫處理會失敗,在清理日誌後才能恢復. 另外提供一種更簡單的方法,建議大家使用。 更簡單的方法: 1。右建資料庫屬性窗口--故障還原模型--設為簡單 2。右建資料庫所有任務--收縮資料庫 3。右建資料庫屬性窗口--故障還原模型--設為大容量日誌記錄
Ⅹ 資料庫有哪幾種文件組成
Microsoft® SQL Server™ 2000
使用一組操作系統文件映射資料庫。資料庫中的所有數據和對象(如表、存儲過程、觸發器和視圖)都存儲在下列操作系統文件中:
主要
該文件包含資料庫的啟動信息,並用於存儲數據。每個資料庫都有一個主要數據文件。
次要
這些文件含有不能置於主要數據文件中的所有數據。如果主文件可以包含資料庫中的所有數據,那麼資料庫就不需要次要數據文件。有些資料庫可能足夠大故需要多個次要數據文件,或使用位於不同磁碟驅動器上的輔助文件將數據擴展到多個磁碟。
事務日誌
這些文件包含用於恢復資料庫的日誌信息。每個資料庫都必須至少有一個日誌文件。
例如,創建簡單的資料庫 sales
時,可以只使用一個包含所有數據和對象的主文件和一個包含事務日誌信息的日誌文件。另一種情況是,創建更復雜的資料庫 orders
時,可以使用一個主文件和五個輔助文件,資料庫內的數據和對象擴展到所有的六個文件中,另外有四個日誌文件包含事務日誌信息。
文件組允許對文件進行分組,以便於管理和數據的分配/放置。例如,可以分別在三個硬碟驅動器上創建三個文件(Data1.ndf、Data2.ndf
和 Data3.ndf),並將這三個文件指派到文件組 fgroup1 中。然後,可以明確地在文件組 fgroup1
上創建一個表。對表中數據的查詢將分散到三個磁碟上,因而性能得以提高。在
RAID(獨立磁碟冗餘陣列)條帶集上創建單個文件也可以獲得相同的性能改善。然而,文件和文件組使您得以在新磁碟上輕易地添加新文件。另外,如果資料庫超過單個
Microsoft Windows NT® 文件的最大大小,則可以使用次要數據文件允許資料庫繼續增長。
文件和文件組的設計規則
文件和文件組的設計規則包括:
文件或文件組不能由一個以上的資料庫使用。例如,文件 sales.mdf 和 sales.ndf 包含 sales
資料庫中的數據和對象,任何其它資料庫都不能使用這兩個文件。
文件只能是一個文件組的成員。
數據和事務日誌信息不能屬於同一文件或文件組。
事務日誌文件不能屬於任何文件組。