데이터베이스 메일 프로필

데이터베이스 메일 프로필은 관련 데이터베이스 메일 계정을 정렬하여 모아 놓은 것입니다. 메일을 보내려면 msdb 데이터베이스에서 DatabaseMailUserRole의 멤버여야 하며 적어도 하나 이상의 데이터베이스 메일 프로필에 액세스할 수 있어야 합니다. 프로필을 사용하면 데이터베이스 관리자가 응용 프로그램 코드를 변경하지 않고 전자 메일을 사용하는 저장 프로시저와 데이터베이스 응용 프로그램을 다시 구성할 수 있습니다. 예를 들어 응용 프로그램을 개발 및 테스트하는 동안 전자 메일 계정 집합 한 개로 프로필을 구성한 다음 응용 프로그램이 프로덕션으로 이동할 때 다른 계정 집합으로 프로필을 업데이트할 수 있습니다. 응용 프로그램은 같은 프로필 이름을 사용하지만 다른 전자 메일 서버 목록을 사용하여 전자 메일을 보냅니다.

[!참고] 데이터베이스 메일은 MAPI(메시징 응용 프로그래밍 인터페이스)를 사용하지 않으므로 데이터베이스 메일 프로필은 MAPI 메일 프로필이 아닙니다. 데이터베이스 메일은 SQL 메일 프로필을 사용하지 않습니다.

프로필을 사용하면 전자 메일 서버에 연결할 수 없거나 전자 메일 서버가 메시지를 처리할 수 없는 경우 안정성이 향상됩니다. 프로필의 계정마다 시퀀스 번호가 있습니다. 시퀀스 번호는 데이터베이스 메일에서 프로필의 계정을 사용하는 순서를 결정합니다. 데이터베이스 메일은 메시지를 성공적으로 보낸 마지막 계정을 새 전자 메일 메시지에 사용합니다. 그러나 아직 보낸 메시지가 없는 경우에는 시퀀스 번호가 가장 낮은 계정을 사용합니다. 해당 계정이 실패하면 데이터베이스 메일에서는 시퀀스 번호가 다음으로 높은 계정을 사용하여 메시지가 성공적으로 전송될 때까지 또는 시퀀스 번호가 가장 높은 계정이 실패할 때까지 작업을 계속합니다. 시퀀스 번호가 가장 높은 계정이 실패하면 데이터베이스 메일은 sysmail_configure_spAccountRetryDelay 매개 변수에서 구성한 기간 동안 메일을 보내려는 시도를 일시 중지했다가 가장 낮은 시퀀스 번호에서 시작하여 다시 메일을 보내려는 시도를 시작합니다. sysmail_configure_spAccountRetryAttempts 매개 변수를 사용하여 외부 메일 프로세스가 지정한 프로필의 각 계정을 사용하여 전자 메일 메시지를 보내려고 시도하는 횟수를 구성합니다.

시퀀스 번호가 같은 계정이 둘 이상 있으면 데이터베이스 메일은 지정된 전자 메일 메시지에 대해 해당 계정 중 하나만 사용합니다. 이 경우 데이터베이스 메일에서 항상 특정 시퀀스 번호에 대해 해당 계정이 사용되거나 메시지 간 동일한 계정이 사용되는 것은 아닙니다.

또한 프로필을 사용하면 데이터베이스 관리자가 전자 메일 액세스를 제어할 수 있습니다. 데이터베이스 메일을 보내려면 DatabaseMailUserRole의 멤버 자격이 필요합니다. 프로필이 있으면 관리자는 메일을 보내는 사람과 사용되는 계정을 유연하게 제어할 수 있습니다. 각 개인 프로필에 대해서는 데이터베이스 메일이 해당 프로필을 사용하여 전자 메일을 보낼 수 있는 사용자 목록을 유지 관리합니다. 공개 프로필은 DatabaseMailUserRole의 멤버이면서 msdb 데이터베이스의 사용자 또는 역할이 사용할 수 있습니다.

기본적으로 프로필은 개인 프로필이므로 아무도 프로필에 액세스할 수 없습니다. 프로필을 공개 프로필로 만들려면 사용자 'public' 또는 사용자 ID 0에 대한 액세스 권한을 부여하십시오. 프로필 액세스 권한 부여에 대한 자세한 내용은 sysmail_add_principalprofile_sp(Transact-SQL)를 참조하십시오.

프로필은 기본 프로필일 수 있습니다. 이 경우 사용자는 명시적으로 프로필을 지정하지 않고 이 프로필을 사용하여 전자 메일을 보낼 수 있습니다. 전자 메일 메시지를 보내는 사용자에게 기본 개인 프로필이 있을 경우 이 프로필이 사용됩니다. 사용자에게 기본 개인 프로필이 없을 경우 sp_send_dbmail은 데이터베이스의 기본 공개 프로필을 사용합니다. 사용자의 기본 개인 프로필과 데이터베이스의 기본 공개 프로필이 둘 다 없을 경우 sp_send_dbmail은 오류를 반환합니다. 어떤 경우에든 데이터베이스 메일을 보내려면 사용자는 DatabaseMailUserRole의 멤버여야 합니다.

참고 항목

작업

방법: 데이터베이스 메일 개인 프로필 만들기(Transact-SQL)
방법: 데이터베이스 메일의 공개 프로필 만들기(Transact-SQL)
데이터베이스 메일 문제 해결

관련 자료

데이터베이스 메일 구성 마법사
구성 작업 선택(데이터베이스 메일)

도움말 및 정보

SQL Server 2005 지원 받기