다음을 통해 공유


데이터베이스 메일 프로필 만들기

데이터베이스 메일 구성 마법사 또는 Transact-SQL을 사용하여 데이터베이스 메일 공개 프로필 및 개인 프로필을 만들 수 있습니다.

  • 시작하기 전 주의 사항 필수 구성 요소, 보안

  • 데이터베이스 메일 개인 프로필을 만들려면 다음을 사용합니다. 데이터베이스 메일 구성 마법사, Transact-SQL

  • 데이터베이스 메일 공개 프로필을 만들려면 다음을 사용합니다. 데이터베이스 메일 구성 마법사, Transact-SQL

시작하기 전에

필수 구성 요소

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

보안

공개 프로필을 사용하여 msdb 데이터베이스에 액세스할 수 있는 모든 사용자는 해당 프로필을 사용하여 전자 메일을 보낼 수 있습니다. 개인 프로필은 사용자 또는 역할에 의해 사용될 수 있습니다. 프로필에 대한 액세스 권한을 역할에 부여하면 보다 쉽게 유지 관리되는 아키텍처가 생성됩니다. 메일을 보내려면 msdb 데이터베이스에서 DatabaseMailUserRole의 멤버여야 하며 적어도 하나 이상의 데이터베이스 메일 프로필에 액세스할 수 있어야 합니다.

사용 권한

프로필 계정을 만들고 저장 프로시저를 실행하는 사용자는 sysadmin 고정 서버 역할의 멤버여야 합니다.

[맨 위]

데이터베이스 메일 구성 마법사 사용

데이터베이스 메일 프로필을 만들려면

  • 개체 탐색기에서 데이터베이스 메일을 구성할 SQL Server 인스턴스에 연결한 다음 서버 트리를 확장합니다.

  • 관리 노드를 확장합니다.

  • 데이터베이스 메일을 두 번 클릭하여 데이터베이스 메일 구성 마법사를 엽니다.

  • 구성 태스크 선택 페이지에서 데이터베이스 메일 계정 및 프로필 관리 옵션을 선택하고 다음을 클릭합니다.

  • 프로필 및 계정 관리 페이지에서 새 프로필 만들기 옵션을 선택하고 다음을 클릭합니다.

  • 새 프로필 페이지에서 프로필 이름과 설명을 지정하고 프로필에 포함할 계정을 추가한 후 다음을 클릭합니다.

  • 마법사 완료 페이지에서 수행할 동작을 검토하고 마침을 클릭하여 새 프로필 만들기를 완료합니다.

  • 데이터베이스 메일 개인 프로필을 구성하려면

    • 데이터베이스 메일 구성 마법사를 엽니다.

    • 구성 태스크 선택 페이지에서 데이터베이스 메일 계정 및 프로필 관리 옵션을 선택하고 다음을 클릭합니다.

    • 프로필 및 계정 관리 페이지에서 프로필 보안 관리 옵션을 선택하고 다음을 클릭합니다.

    • 개인 프로필 탭에서 구성하려는 프로필에 대한 확인란을 선택하고 다음을 클릭합니다.

    • 마법사 완료 페이지에서 수행할 동작을 검토하고 마침을 클릭하여 프로필 구성을 완료합니다.

  • 데이터베이스 메일 공개 프로필을 구성하려면

    • 데이터베이스 메일 구성 마법사를 엽니다.

    • 구성 태스크 선택 페이지에서 데이터베이스 메일 계정 및 프로필 관리 옵션을 선택하고 다음을 클릭합니다.

    • 프로필 및 계정 관리 페이지에서 프로필 보안 관리 옵션을 선택하고 다음을 클릭합니다.

    • 공개 프로필 탭에서 구성하려는 프로필에 대한 확인란을 선택하고 다음을 클릭합니다.

    • 마법사 완료 페이지에서 수행할 동작을 검토하고 마침을 클릭하여 프로필 구성을 완료합니다.

[맨 위]

Transact-SQL 사용

데이터베이스 메일 개인 프로필을 만들려면

  • SQL Server 인스턴스에 연결합니다.

  • 새 프로필을 만들려면 시스템 저장 프로시저 sysmail_add_profile_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.dbo.sysmail_add_profile_sp

    @profile\_name = 'Profile Name'

    @description = 'Desciption'

    여기서 @profile\_name은 프로필의 이름이고 @description은 프로필에 대한 설명입니다. 이 매개 변수는 선택 사항입니다.

  • 각 계정에 대해 저장 프로시저 sysmail_add_profileaccount_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.dbo.sysmail_add_profileaccount_sp

    @profile\_name = 'Name of the profile'

    @account\_name = 'Name of the account'

    @sequence\_number = 'sequence number of the account within the profile. '

    여기서 @profile\_name은 프로필의 이름이고, @account\_name은 프로필에 추가할 계정의 이름이며, @sequence\_number는 프로필에서 계정이 사용되는 순서를 결정합니다.

  • 이 프로필을 사용하여 메일을 보내는 각 데이터베이스 역할 또는 사용자에게 프로필에 대한 액세스 권한을 부여합니다. 이렇게 하려면 저장 프로시저 sysmail_add_principalprofile_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.sysmail_add_principalprofile_sp

    @profile\_name = 'Name of the profile'

    @ principal_name = 'Name of the database user or role'

    @is\_default = 'Default Profile status '

    여기서 @profile\_name은 프로필의 이름이고, @principal\_name은 데이터베이스 사용자 또는 역할의 이름이며, @is\_default는 이 프로필이 데이터베이스 사용자 또는 역할에 대한 기본값인지 여부를 결정합니다.

다음 예에서는 데이터베이스 메일 계정을 만들고, 데이터베이스 메일 개인 프로필을 만든 다음 프로필에 계정을 추가하며, msdb 데이터베이스의 DBMailUsers 데이터베이스 역할에 해당 프로필에 대한 액세스 권한을 부여합니다.

-- Create a Database Mail account
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'AdventureWorks Administrator',
    @description = 'Mail account for administrative e-mail.',
    @email_address = 'dba@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 Administrator Profile',
    @description = 'Profile used for administrative mail.' ;

-- Add the account to the profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'AdventureWorks Administrator Profile',
    @account_name = 'AdventureWorks Administrator',
    @sequence_number =1 ;

-- Grant access to the profile to the DBMailUsers role
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'AdventureWorks Administrator Profile',
    @principal_name = 'ApplicationUser',
    @is_default = 1 ;

[맨 위]

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

  • SQL Server 인스턴스에 연결합니다.

  • 새 프로필을 만들려면 시스템 저장 프로시저 sysmail_add_profile_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.dbo.sysmail_add_profile_sp

    @profile\_name = 'Profile Name'

    @description = ' Desciption'

    여기서 @profile\_name은 프로필의 이름이고 @description은 프로필에 대한 설명입니다. 이 매개 변수는 선택 사항입니다.

  • 각 계정에 대해 저장 프로시저 sysmail_add_profileaccount_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.dbo.sysmail_add_profileaccount_sp

    @profile\_name = 'Name of the profile'

    @account\_name = 'Name of the account'

    @sequence\_number = 'sequence number of the account within the profile. '

    여기서 @profile\_name은 프로필의 이름이고, @account\_name은 프로필에 추가할 계정의 이름이며, @sequence\_number는 프로필에서 계정이 사용되는 순서를 결정합니다.

  • 공개 액세스 권한을 부여하려면 저장 프로시저 sysmail_add_principalprofile_sp(Transact-SQL)를 다음과 같이 실행합니다.

    EXECUTE msdb.sysmail_add_principalprofile_sp

    @profile\_name = 'Name of the profile'

    @ principal_name = 'public 또는 0'

    @is\_default = 'Default Profile status '

    여기서 @profile\_name은 프로필의 이름이고, @principal\_name은 이 프로필이 공개 프로필임을 나타내며, @is\_default는 이 프로필이 데이터베이스 사용자 또는 역할에 대한 기본값인지 여부를 결정합니다.

다음 예에서는 데이터베이스 메일 계정을 만들고, 데이터베이스 메일 개인 프로필을 만든 다음 프로필에 계정을 추가하며, 프로필에 대한 공개 액세스 권한을 부여합니다.

-- 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 ;

[맨 위]