手机
当前位置:查字典教程网 >编程开发 >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 维护计划无法删除?】相关文章:

MySQL server has gone away 问题的解决方法

MySQL Order By用法分享

安装sql server 2008 报错等问题怎么解决

sql server自增长列归零方法

mysql 远程连接数据库的方法集合

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

SQLServer 2005 自动备份数据库的方法分享(附图解教程)

MySQL Administrator 登录报错的解决方法

sqlserver2000数据压缩解决方法

SQL Server中text或ntext 字段内容替换方法

精品推荐
分类导航