sql server 表空间


在SqlServer2005中,建表时是默认把所有的表都保存在PRIMARY默认表空间中的。当数据库中表很多,并且数据量很大时,会导致数据库性能严重下降,有必要将一些大的表放到不同的表空间中去。
主要的步骤如下所示:

1、建立表空间(数据文件)

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、建表时使用这个表空间

USE [TestDB]
GO
CREATE TABLE [dbo].[Log](
[aa] [nchar](10),
[bb] [nchar](10)
) ON [Log1]
3、建索引时使用不同的表空间

create index IX_LOG_BB on dbo.log(bb) on [Log2]
另外:
对一些特别大的表,还需要将一张表的数据根据条件放到不同的表空间中去,这就需要再进行表分区的操作。

Oracle表空间,是Oracle的逻辑结构。一个Oracle数据库可以有一个或者多个表空间。一个表空间又对应着多个物理的数据库文件。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM