use Test
--.创建数据库文件组>>alter database <数据库名> add filegroup <文件组名>
ALTER DATABASE TEST ADD FILEGROUP ByIdGroup1
ALTER DATABASE TEST ADD FILEGROUP ByIdGroup2
ALTER DATABASE TEST ADD FILEGROUP ByIdGroup3 --创建数据文件到文件组里面>>alter database <数据库名称> add file <数据标识> to filegroup <文件组名称>
ALTER DATABASE TEST ADD FILE
(NAME=N'ById1',filename=N'E:\测试项目\sql\分区\ById1.ndf',size=5mb,filegrowth=5mb)
TO FILEGROUP ByIdGroup1
ALTER DATABASE TEST ADD FILE
(NAME=N'ById2',filename=N'E:\测试项目\sql\分区\ById2.ndf',size=5mb,filegrowth=5mb)
TO FILEGROUP ByIdGroup2
ALTER DATABASE TEST ADD FILE
(NAME=N'ById3',filename=N'E:\测试项目\sql\分区\ById3.ndf',size=5mb,filegrowth=5mb)
TO FILEGROUP ByIdGroup3
--直接使用向导>>右键到要分区的表--- >> 存储 --- >> 创建分区 --- >>显示向导视图 --- >> 下一步 --- >> 下一步...
--或者继续看下面用SQL语句完成... --.创建分区函数--以测试表的ID[INT]列为分区列
CREATE PARTITION FUNCTION Fn_Partition(int)
AS RANGE RIGHT
FOR VALUES(,)
--查看分区表是否创建成功
SELECT * FROM SYS.partition_functions --.基于之前的分区函数创建分区架构SCHEME
CREATE PARTITION SCHEME SchemaForPartition
AS PARTITION Fn_Partition -- 这个是刚才创建的分区函数
TO(FileGroup1,[primary],FileGroup1)--FileGroup1是自己添加的文件组,因为有两个分界值,3个分区,所以要指定3个文件组,也可以使用ALL所谓的分区指向一个文件组
--查看已创建的分区架构
SELECT * FROM sys.partition_schemes

SQL--表分区-LMLPHP

引用:

首先第一点,它一定要提的是mdf和ldf分开两个盘放的问题,

第二点,表分区的事情,

第三点文件组的事情,

第四点,可以考虑数据库拆分冷热分离的事情。最后才是分库分表的事情。

05-11 04:14