2014-11-20 9 views
0

누군가 다음 문제를 설명하고 해결할 수 있습니까? 감사.SQL Server 에이전트 작업에서 sp_send_dbmail이 실패합니다.

Windows Server 2012의 SQL Server 2012에서 실행할 때이 쿼리 문제가 발생했습니다.
쿼리 (@query)는 단독 실행시 매우 잘 실행되지만 SQL Server 에이전트에 배치하면 결과가 표시되지 않습니다 직업 (아래 참조). Intesrestingly

@query = N'SELECT p.name AS [Name] FROM sys.server_principals r 
INNER JOIN sys.server_role_members m ON r.principal_id = m.role_principal_id 
INNER JOIN sys.server_principals p ON p.principal_id = m.member_principal_id 
WHERE r.name = "sysadmin";' 

, 내가 Windows Server 2008에서 실행되는 SQL 서버 2012에서 테스트 할 때, 그것을 실행 완벽하게 모두 혼자 SQL Server 에이전트 작업에 서!?

답변

0

나는 그 원인과 해결책을 발견했다.

SQL Server 에이전트를 실행하는 계정/사용자에게 부여 할 권한이 있습니다. 이 계정은 최소한 데이터베이스 메일 프로필에 액세스 할 수있는 securityadmin 서버 역할이 있어야합니다. 그렇지 않으면 오류를 반환하거나 전혀 메시지를 보내지 않습니다. 필요한 서버 역할을 부여하려면 보안> 로그인으로 이동하여 해당 계정을 새 로그인으로 추가 한 다음 securityadmin 서버 역할을 부여하십시오.

호프는 내가했던 것처럼 똑같은 문제에 부딪히는 사람을 돕습니다.