SQL Server 数据库分区分表(水平分表)详细步骤

目录 1、需求说明 2、实现思路 2.1分区原理 2.2水平分区优点 2.3实现思路 3、实现步骤 3.1代码创建分区表 3.1.1创建数据库 3.1.2添加文件组 3.1.3添加文件 3.1.4定义分区函数 3.1.5定义分区架构

                        目录1、 需求说明2、实现思路2.1分区原理2.2 水平分区优点2.3 实现思路3、实现步骤3.1代码创建分区表3.1.1  创建数据库3.1.2  添加文件组3.1.3  添加文件3.1.4  定义分区函数3.1.5  定义分区架构3.1.6  定义分区表3.2  界面向导表分区3.2.1 创建数据库3.2.2 创建文件组3.2.3 添加文件3.2.4 定义分区表3.2.5 添加分区函数和分区架构3.3 动态添加分割点4、测试数据4.1      添加测试数据4.1.1  新建测试表4.1.2 编写T-SQL添加测试数据5、补充说明5.1 分区分表理解5.2 水平分区分表疑惑5.3 其它说明<p></p>

1、 需求说明

将数据库Demo中的表按照日期字段进行水平分区分表。要求数据文件按一年一个文件存储,且分区的分割点会根据时间的增长自动添加(例如现在是2017年1月1日,将其作为一个分割点,即将2017年1月1日之前的数据存储到数据文件A中,将2017年1月1日的之后的数据存储到数据文件B中;当时间到2018年1月1日时,自动将2018年1月1日添加为一个新的分区分割点,并将2017年1月1日至2018年1月1日的数据存储在数据文件B中,将2018年1月1日之后的数据存储在一个新的数据文件C中,以此类推)。

2、实现思路

2.1分区原理

要实现这一功能,首先要了解数据库对水平分区表进行分区存储的原理。

所谓水平分区分表,就是把逻辑上的一个表,在物理上按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下。这样把一个大的文件拆分成多个小文件,便于我们对数据的管理。

2.2 水平分区优点

l  便于存档

l  便于管理:备份恢复时可以单一的备份或者恢复某一个分区

l  提高可用性:一个分区故障,不影响其他分区的正常使用

l  提高性能:提升查询数据的速度

2.3 实现思路

①     创建数据库

②     在创建的数据库中添加文件组

③     在文件组中添加新的文件

④     定义分区函数

⑤     定义分区架构

⑥     定义分区表

⑦     定义代理作业,自动添加分区分割点

⑧     测试数据

注意:

²  分区表依赖于分区架构,而分区架构又依赖与分区函数,所以在穿件分区函数、分区架构、分区表是要按照对应的顺序创建。

²  分区函数并不属于具体的分区架构和分区表,它们之间仅仅是使用关系。

²  分区表只能在创建的时候指定为分区表

3、实现步骤

3.1代码创建分区表