Sql Server2005不同的表使用表空間的問題
SqlServer2005中,不同的表使用的表空間也是不一樣的,下面就將為您詳細(xì)解讀Sql Server2005不同的表使用表空間的問題,希望對(duì)您學(xué)習(xí)Sql Server2005有所幫助。
在SqlServer2005中,建表時(shí)是默認(rèn)把所有的表都保存在PRIMARY默認(rèn)表空間中的。當(dāng)數(shù)據(jù)庫(kù)中表很多,并且數(shù)據(jù)量很大時(shí),會(huì)導(dǎo)致數(shù)據(jù)庫(kù)性能嚴(yán)重下降,有必要將一些大的表放到不同的表空間中去。
主要的步驟如下所示:
1、建立表空間(數(shù)據(jù)文件)
- USE [master]
- GO
- ALTER DATABASE [TestDB] ADD FILEGROUP [Log1]
- GO
- ALTER DATABASE [TestDB] ADD FILE ( NAME = N'Log1', FILENAME = N'D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\Log1.ndf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) TO FILEGROUP [Log1]
- GO
首先是在TestDB上建立文件組Log1
然后在文件組Log1上加入文件Log1,初始值3M
2、建表時(shí)使用這個(gè)表空間
- USE [TestDB]
- GO
- CREATE TABLE [dbo].[Log](
- [aa] [nchar](10),
- [bb] [nchar](10)
- ) ON [Log1]
3、建索引時(shí)使用不同的表空間
- create index IX_LOG_BB on dbo.log(bb) on [Log2]
另外:
對(duì)一些特別大的表,還需要將一張表的數(shù)據(jù)根據(jù)條件放到不同的表空間中去,這就需要再進(jìn)行表分區(qū)的操作。
【編輯推薦】