手机
当前位置:查字典教程网 >编程开发 >mysql数据库 >Sql server 2005 维护计划无法删除?
Sql server 2005 维护计划无法删除?
摘要:本文主要讲述Sqlserver2005维护计划无法删除问题(sqlserver2005maintnanceplancannotdelete)...

本文主要讲述Sql server 2005 维护计划无法删除问题(sql server 2005 maintnance plan can not delete),以下为全文:

一台要改IP和主机名的数据库,只把数据库instance修改了,忘记把维护计划删除了等IP和主机名改好重启后,维护计划无法删除了。 原因是这些计划是原来连接上的OLDSvr@usr-plans. 那怎么办呢!

1。先把原数据库连接干掉:

登陆MS SQL Server Management Studio(新HOST),在 视图(view[en]/表示[jp])里的,已登陆服务器(R)调出来,然后把旧host连接删掉

2。保存以下sql,在query里执行一下:

不知道其他版本的mssql可行否,我试验成功的是mssql2005,执行后请刷新下维护计划TAB, 就发现已经删除了原主机名下的维护计划。

--Delete maintanace plan after chghostname
use [msdb]
set nocount on
begin tran
declare @SubPlanName varchar(200)
set @SubPlanName='Subplan_1'

--Get constraint foreign key columns
declare @subPlan_id varchar(100),@job_id varchar(100)
,@msx_job_id varchar(100),@Schedule_id varchar(100)
select @job_id=job_id,@msx_job_id=msx_job_id,
@subPlan_id=subPlan_id from sysmaintplan_SubPlans where SubPlan_name=@SubPlanName

--Delete record by order
if (@SubPlan_id is not null and @SubPlan_id<>'')
delete from sysmaintplan_log where SubPlan_id=@SubPlan_id

if (@SubPlanName<>'' and @SubPlanName is not null)
delete from sysmaintplan_SubPlans where SubPlan_Name=@SubPlanName

if (@Schedule_id is not null and @Schedule_id <>'')
delete from SysSchedules where Schedule_id=@Schedule_id

if (@job_id is not null and @job_id<>'')
delete from sysjobs where job_id=@job_id

--After Above, you can still see these god damn maintnance plan in that tab
--now use code below to refresh the msdb view

delete
FROM msdb.dbo.sysmaintplan_plans
commit tran
if @@error<>0 Print 'job failure ;-('
else Print 'job down! ;-)'

set nocount off

【Sql server 2005 维护计划无法删除?】相关文章:

如何正确查看 SQL Server 2005 版本号?

mysql命令行下用户管理方法分享

SQL Server数据库崩溃的方法

在SQL Server数据库中求计算列和平均值

sql server自增长列归零方法

MySQL Administrator 登录报错的解决方法

MySQL order by性能优化方法实例

MySQL 添加列,修改列,删除列

sqlserver数据实时同步到mysql

mysql 维护常用命令

精品推荐
分类导航