Je suis en train de configurer l'agent Job SQL Server à l'aide du script suivant:configuration agent de travail serveur sql
USE [msdb]
GO
CREATE USER [mydbuser] FOR LOGIN [mydbuser]
GO
EXEC sp_addrolemember N'db_datareader', N'mydbuser'
GO
EXEC sp_addrolemember N'SQLAgentOperatorRole', N'mydbuser'
GO
EXEC sp_addrolemember N'SQLAgentReaderRole', N'mydbuser'
GO
EXEC sp_addrolemember N'SQLAgentUserRole', N'mydbuser'
go
sp_configure 'show advanced options',1
go
reconfigure with override
go
sp_configure 'xp_cmdshell',1
go
reconfigure with override
go
sp_configure 'show advanced options',0
go
reconfigure with override
use master
go
GRANT EXECUTE on xp_cmdshell to db_job
go
use master
go
EXEC sp_xp_cmdshell_proxy_account 'mydomain\db_job', 'password-1'
go
CREATE CREDENTIAL [Job3] WITH IDENTITY = N'mydomain\mydomainuser', SECRET = N'mydomain\mydomainuser'
GO
USE [msdb]
GO
EXEC msdb.dbo.sp_add_proxy @proxy_name=N'LW_JobRunner',@credential_name=N'Job',
@enabled=1
GO
EXEC msdb.dbo.sp_grant_proxy_to_subsystem @proxy_name=N'LW_JobRunner', @subsystem_id=3
GO
EXEC msdb.dbo.sp_grant_login_to_proxy @proxy_name=N'LW_JobRunner', @login_name=N'mydbuser'
GO
/* Setting up job Category */
DECLARE @ReturnCode INT
SELECT @ReturnCode = 0
EXEC @ReturnCode = msdb.dbo.sp_add_category @class=N'JOB', @type=N'LOCAL', @name=N'MyJob'
go
USE MASTER
GO
EXEC master.dbo.xp_sqlagent_proxy_account N'SET',
N'DEV', -- agent_domain_name
N'Administrator', -- agent_username
N'password' -- agent_password
Mais la dernière étape sur l'exécution du sp xp_sqlagent_proxy_account
, dit
Impossible de trouver le proccure stockée xp_sqlagent_proxy_account.
Je suis sûr que je l'exécuter sur le master
db avec les lettres de créance sa
...
Et à cause de cela sur l'ajout d'un emploi je reçois une erreur comme celle
Impossible de trouver le serveur 'myIpAddress' dans sys.servers. Vérifiez que le nom du serveur correct a été spécifié. Si nécessaire, exécutez la procédure stockée sp_addlinkedserver pour ajouter le serveur à sys.servers
Comment résoudre ce problème?
Je reçois l'erreur suivante @@ drapeau sysadmin_only n'est plus pris en charge par SQLAgent et maintenu ici que pour la rétrocompatibilité – user824910
Vous avez raison. Puisque votre question ne parlait pas de la version SQL, j'ai fait une suggestion générique. Je viens de remarquer la balise SQL 2008. Pardon – Raj