导读: 随着技术的发展进步,如今, SQL Server 2005数据库自动化 已经渐渐走近人们的生活,SQL Server 2005 自动化删除 表分区 也已经实现啦,下文中将为大家详细介绍SQL Server 2005 自动化删除表分区设计方案,希望对大家能够有所帮助。
我们的 服务器 的数据已经有了800G,并且每天进数据大概有120W条记录(数据空间大概为7G),而服务器现在已经没有太多的磁盘空间了,面对这样的问题,一般都是使用交换表分区来快速删除数据,并使用之前的分区来存放新进的数据,如果每次都人工的话就太麻烦了,所以我对这个如何进行交换分区删除数据来清理磁盘空间做成了自动化。
分析与设计思路
分区特点:分区使用了自增ID作为分区字段;分区的索引进行存储位置对齐;
设计步骤1:表分区已经确定了各个分区值,我们就用一个表保存可能存在的分区值,并插入到表中,当达到预警值(Change_Value)时,我们就执行交换分区;
设计步骤2:使用一个存储过程来完成交换分区;
1) 创建一个临时表
2) 交换分区数据
3) 删除临时表
4) 修改分区方案
5) 修改分区函数
设计步骤3:使用作业定时执行存储过程,实现自动化;
参考脚本
下面是创建表的脚本和执行交换分区的存储过程,希望对你有帮助。
创建表
CREATE TABLE [dbo].[PartitionManage](
[Id] [int] IDENTITY(1,1) NOT NULL,
[Change_Value] [int] NULL,
[Part_Value] [int] NULL,
[IsDone] [bit] NULL,
CONSTRAINT [PK_PartitionManage] PRIMARY KEY CLUSTERED
)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
插入数据
declare @i int
declare @maxValue int
set @maxValue=100
while @i <= @maxValue
insert into dbo.PartitionManage values(@i-4,@i,0)
set @i = @i + 10
— Create date: <2011.02.22>
— Description: <分区管理>
CREATE PROCEDURE [dbo].[sp_PartitionManage]
DECLARE @Max_value INT
DECLARE @Change_value INT
DECLARE @PARTITION_value INT
SELECT @Max_value = MAX(Id) FROM [dbo].[Archive]
SELECT *** @Change_value = Change_Value,@PARTITION_value= Part_Value
FROM [dbo].[PartitionManage] WHERE IsDone = 0
IF(@Change_value <= @Max_value)–判断是否需要整理分区
创建一个临时表
DECLARE @sql VARCHAR(MAX)
IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N”[dbo].[Temp_Archive]”) AND type in (N”U”))
DROP TABLE [dbo].[Temp_Archive]
EXEC (@sql)
IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N”[dbo].[Temp_Archive]”) AND type in (N”U”))
CREATE TABLE [dbo].[Temp_Archive](
[Id] [int] IDENTITY(1,1) NOT for REPLICATION NOT NULL,
[SiteId] [int] NULL,
[Title] [nvarchar](4000) NULL,
[author] [nvarchar](4000) NULL,
[Content] [nvarchar](max) NULL,
CONSTRAINT [PK_Temp_Archive] PRIMARY KEY CLUSTERED
)WITH( PAD_INDEX = ON, FILLFACTOR = 100, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [Sch_Archive_Id](Id)
) ON [Sch_Archive_Id]([Id])
EXEC (@sql)
–交换分区数据
DECLARE @Min_Id INT
DECLARE @PARTITION_num INT
SELECT @Min_Id = MIN(Id) FROM [dbo].[Archive]
SELECT @PARTITION_num = [Archives].$PARTITION.Fun_Archive_Id(@Min_Id);
ALTER TABLE [dbo].[Archive] SWITCH PARTITION @PARTITION_num TO [dbo].[Temp_Archive] PARTITION @PARTITION_num
删除临时表
DROP TABLE [dbo].[Temp_Archive]
修改分区方案
DECLARE @PARTITION_string varchar(50)

SET @PARTITION_string = ‘FG_Archive_Id_’ + RIGHT(‘0’ + CONVERT(NVARCHAR,@PARTITION_num),2)
SET @sql = ‘ALTER PARTITION SCHEME [Sch_Archive_Id] NEXT USED [‘+@PARTITION_string+’]’
EXEC (@sql)
修改分区函数
SET @sql = ‘ALTER PARTITION funcTION Fun_Archive_Id() SPLIT RANGE (‘+CONVERT(VARCHAR(50),@PARTITION_value)+’)’
EXEC (@sql)
更新表
UPDATE [dbo].[PartitionManage] SET IsDone = 1 WHERE Change_Value = @Change_value
【编辑推荐】
河北工程大学有多少专业?
1)电器学科(2)半导体材料学科(3)高分子材料学科(4)金属材料学科(5)化工过程机械学科(6)热能工程学科(7)管理工程学科(8)机械制造学科(9)应用数学学科(10)应用物理学科(11)工业自动化学科(12)机械电子工程学科(13)汽车与拖拉机学科(14)化工工艺学科(15)微电子学与固体电子学学科大概
机电学院或系都包括哪些专业和课程?
昆明理工大学机电工程学院。学院现有1个博士后流动站、2个博士点、6个硕士点、3个工程硕士领域、4个本科专业、4个重点学科和1个省级重点专业,即:
博士后流动站材料科学与工程
博 士 点机械设计及理论、材料加工工程
硕 士 点机械设计及理论、机械制造及自动化、机械电子工程
材料加工工程、设计艺术学、车辆工程
工程硕士领域机械工程、工业工程、工业设计工程
本 科 专 业机械工程及自动化、工业设计、工业工程、包装工程
省级重点学科金属材料、机械电子工程、光电一体化、材料加工工程
重 点 专 业机械工程及自动化
学院设置机械设计制造及自动化系、机械电子工程系、材料成型与控制工程系、工业设计系、工业工程系、包装工程系,以及工程图学教研室、机械原理与机械设计教研室、金工教研室和实验中心等教学单位。 设有材料保护研究所、材料成型与控制研究所、材料先进制造工程研究所、机电产品开发技术创新研究所、机电技术研究所、模具新技术研究所、振动噪声工程中心、CIMS应用研究中心、流体控制工程研究所、球铁研究所、新材料研究所、虚拟设计及制造技术研究所、产品创新设计研究所、CAID研究所等科研机构。
课程:机械设计、机械原理、机电传动控制、机械制造技术基础、控制工程、材料成型、液压传动、机械振动、可编程控制器原理及应用、单片机原理及应用、数控技术等,为主要的专业课。
此外,还有一些公共课,如:英语、数学、马哲、思修、物理、化学等,还有些选修课不是很重要。
机械加工是干什么的?
务培养目标:业务培养目标:本专业培养具备机械设计、制造、自动化基础知识与应用能力,能在工业生产第一线从事机械工程及自动化领域内的设计制造、科技开发、应用研究、运行管理和经营销售等方面工作的高级技术人才。 业务培养要求:本专业学生主要学习机械设计、制造的基础理论、受到现代机械工程师的基本训练,具有从事机构设计、制造及生产管理、控制的基本能力。 毕业生应获得以下几方面的知识与能力:1. 具有较扎实的自然科学基础,较好的人文、艺术和社会科学基础及正确运用本国语言、文字的表达能力;2.较系统地掌握本专业领域宽广的技术理论基础知识,主要包括力学、机械学、电工与电子学、流体力学、工程热力学、市场经济及企业管理等基础知识;3.具有本专业必需的制图、计算、测试、文献检索和基本工艺操作等基本技能及较强的计算机和外语应用能力;4.具有本专业领域内某个专业方向所必要的专业知识,了解其科学前沿及发展趋势;5.具有较强的自学能力、创新意识和较高的综合素质。 主干课程:主干学科:力学、机械工程主要课程:工程力学、机械设计基础、工程热力学、现代控制理论、材料加工工艺与设备、测试技术、计算机系列课程、经营与管理、电工与电子技术基础理论课程主要实践性教学环节:包括军训、金工、电工、电子实习、认识实习、生产实习、社会实践、课程设计、毕业设计(论文)等,一般应安排40周以上。 修业年限:四年授予学位:工学学士相近专业:机械设计制造及其自动化 材料成型及控制工程 工业设计 过程装备与控制工程 车辆工程 机械工程及自动化 机械电子工程 汽车服务工程 机械类 车辆保险与理赔专业
发表评论