读书人

比较 代码是不是一致支持多服务器【

发布时间: 2012-08-29 08:40:14 作者: rapoo

比较 代码是否一致,支持多服务器【比较老套,但实用】

代码背景:

因现实工作中,需要对上万台服务器的版本进行差异化控制和了解。希望对大家有用

包括

1、服务器运行的环境

2、文件

3、权限

4、应用程序的数量

5、应用程序的个性化要求

6、数据库的数据一致性,包括存储过程、函数、视图、作业、业务逻辑等

说明:以下代码是一个简单的模型,有这种方式可以检查所有。

/*
-- 比较原理:trim 掉 过程代码的 两端空白后,计算md5特征值。比较 模块库 和 目标库的 md5值 判定代码是否唯一?
-- 从模版库上获取 MD5特征值:

-- 从 模块库上 执行
select a.name,a.modify_date,len(b.definition) as [length],database.dbo.MD5V2(rtrim(ltrim(b.definition))) as md5
from database.sys.objects a inner join database.sys.sql_modules b on a.object_id=b.object_id
where name='存储过程名称'

*/

--从 目标库上 执行
if exists (
select *
from database.sys.objects a inner join database.sys.sql_modules b on a.object_id=b.object_id
where a.name='pr_wpbyexcel'
and database.dbo.MD5V2(rtrim(ltrim(b.definition)))<>'703152acfb532c2c5cf525159e4b078a'
)
raiserror('err',14,1)

读书人网 >系统运维

热点推荐