重命名sql中的agent代理 agent --(sql server 2000 only) use msdbgoif exists (select * from sysobjects where name = n'sp_sqlagent_rename' and type ='p') drop proc dbo.sp_sqlagent_renamegocreate proc dbo.sp_sqlagent_rename @old_server nvarchar(
重命名sql中的agent代理 agent --(sql server 2000 only) use msdbgoif exists (select * from sysobjects where name = n'sp_sqlagent_rename' and type ='p') drop proc dbo.sp_sqlagent_renamegocreate proc dbo.sp_sqlagent_rename @old_server nvarchar(30)asset nocount onif (charindex(n'8.00', @@version, 0) = 0)begin raiserror('sp_sqlagent_rename is only required on sql server 2000, procedure will abort', 11, 1)endif (isnull(is_srvrolemember(n'sysadmin'), 0) = 0)begin raiserror('sp_sqlagent_rename can only be used by sysadmin role members, procedure will abort', 11, 1)enddeclare @new_server nvarchar(30)select @new_server = convert(nvarchar(30), serverproperty(n'servername'))if exists(select * from msdb.dbo.sysjobs where upper(originating_server) = upper(@old_server))begin update msdb.dbo.sysjobs set originating_server = @new_server where originating_server = @old_server raiserror('sp_sqlagent_rename, %d entries updated from %s to %s', 10, 1, @@rowcount, @old_server, @new_server )endelsebegin raiserror('sp_sqlagent_rename, no entries found for @old_server = %s, 0 rows are updates', 10, 1, @old_server)endgo-- sample usage-- exec msdb.dbo.sp_sqlagent_rename @old_server = 'gertd00\dev'