다음을 통해 공유


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

데이터베이스 메일 구성 마법사 또는 데이터베이스 메일 저장 프로시저를 사용하여 공개 데이터베이스 메일 프로필을 만들 수 있습니다. 공개 프로필을 사용하여 msdb 데이터베이스에 액세스할 수 있는 모든 사용자는 해당 프로필을 사용하여 전자 메일을 보낼 수 있습니다.

Transact-SQL로 데이터베이스 메일 공개 프로필을 만들려면

  1. 프로필에 대한 데이터베이스 메일 계정을 하나 이상 만듭니다. 데이터베이스 메일 계정을 만드는 방법은 방법: 데이터베이스 메일 계정 만들기(Transact-SQL)를 참조하십시오.

  2. 프로필을 만들려면 다음을 지정하고 저장 프로시저 msdb.dbo.sysmail_add_profile_sp를 실행합니다.

    • 만들 프로필의 이름

    • 프로필에 대한 선택적 설명

  3. 각 계정마다 msdb.dbo.sysmail_add_profileaccount_sp를 실행하여 프로필에 계정을 추가합니다.

  4. **'public'**을 @principal_name으로 지정하거나 0@principal_id로 지정하고 msdb.sysmail_add_principalprofile_sp 명령을 실행하여 프로필에 공개 액세스 권한을 부여합니다.

다음 예에서는 데이터베이스 메일 계정 및 데이터베이스 메일 프로필을 만듭니다. 그런 다음 프로필에 계정을 추가하고 msdb 데이터베이스의 모든 사용자에게 해당 프로필 액세스 권한을 부여합니다.

-- Create a Database Mail account

EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'AdventureWorks Public Account',
    @description = 'Mail account for use by all database users.',
    @email_address = 'db_users@Adventure-Works.com',
    @replyto_address = 'danw@Adventure-Works.com',
    @display_name = 'AdventureWorks Automated Mailer',
    @mailserver_name = 'smtp.Adventure-Works.com' ;

-- Create a Database Mail profile

EXECUTE msdb.dbo.sysmail_add_profile_sp
    @profile_name = 'AdventureWorks Public Profile',
    @description = 'Profile used for administrative mail.' ;

-- Add the account to the profile

EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks Public Profile',
    @account_name = 'AdventureWorks Public Account',
    @sequence_number =1 ;

-- Grant access to the profile to all users in the msdb database

EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'AdventureWorks Public Profile',
    @principal_name = 'public',
    @is_default = 1 ;