sql server 数据库分区分表

sql server 数据库分区分表

作为演示,本文使用的数据库 sql server 2017 管理工具 sql server management studio 18,,创建数据库mytest,添加Test表,Test表列为 id和name,具体可以自行创建

sql server 数据库分区分表具体步骤如下

1、选择数据库选择右键 新建查询,内容如下

--数据库分区分表
--1、给数据库mytest添加文件分组
ALTER DATABASE mytest add filegroup group1;
ALTER DATABASE mytest add filegroup group2;
ALTER DATABASE mytest add filegroup group3;

--2、给数据库mytest的文件分组添加分区文件
ALTER DATABASE mytest add file(name=N'group1',filename=N'E:\Databasepartitionsubtable\group1.ndf',size=5Mb,filegrowth=5mb) to filegroup group1;
ALTER DATABASE mytest add file(name=N'group2',filename=N'E:\Databasepartitionsubtable\group2.ndf',size=5Mb,filegrowth=5mb) to filegroup group2;
ALTER DATABASE mytest add file(name=N'group3',filename=N'E:\Databasepartitionsubtable\group3.ndf',size=5Mb,filegrowth=5mb) to filegroup group3;

注意:在添加分区文件的时候这个分区文件的路径   filename  必须是存在的,菲欧泽报错,可以先创建一个路径和文件夹即可,本文是: E:\Databasepartitionsubtable

创建成功之后,可以查看,选择mytest数据库,右键属性 文件组,如下所示

 

 

 

2、数据库mytest中的数据表Test添加分区

--例如:dbo.Test表做分区
--选择dbo.Test表-》右键存储-》创建分区,更具创建分区向导处理即可,在选择分区列时,

--我们选择ID,这样就可以设置分区了,
--如id 为1-10000,存储到主文件组PRIMARY
--如id 为10001-20000,存储到group1
--如id 为20001-30000,存储到group2
--如id 为30000以上,存储到group3

向导如下图

 

 

 

 

 

 

 

 下面分区的范围,左边界和右边界意思就是,分界值存储在房钱分组还是下一个分组

 

 

选择左边界

--我们选择ID,这样就可以设置分区了,
--如id 为1-10000,存储到主文件组PRIMARY
--如id 为10001-20000,存储到group1
--如id 为20001-30000,存储到group2
--如id 为30000以上,存储到group3

 

 

 

 

 

 

 

 

上述操作完成以后,我们的数据库分区分表就完成了,

查看表的分区存储情况

选择Test表右键属性-》存储  可以看到分区和文件组

选择myest数据库右键属性-》文件,  可以看到分区文件、文件组

注意:一盘数据库分区分表建议不要进行全表扫描,可以使用条件查询,这个性能更好,

本文只是问了演示做了id来警醒分区分表存储的,其实如果Table中时间字段的话,并且有按照年分来使用的话,那么可以一句这个书简字段分进行分区分表存储,例如销售数据,2010-12-31,2011-12-31,2012-12-31,2013-12-31等等来进行分区分表。

 

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值