创建数据库邮件配置文件

使用 数据库邮件配置向导 或 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 = “Description

    其中 ,@profile_name 是配置文件的名称, @description 是配置文件的说明。 此参数是可选的。

  • 对于每个帐户,请运行存储过程 sysmail_add_profileaccount_sp(Transact-SQL), 如下所示:

    EXECUTEmsdb.dbo.sysmail_add_profileaccount_sp

    @profile_name = “配置文件的名称

    @account_name = “帐户名称

    @sequence_number = 配置文件中帐户的序列号。 '

    其中 @profile_name 是配置文件的名称, @account_name 是要添加到配置文件中的帐户的名称, @sequence_number 确定配置文件中使用帐户的顺序。

  • 对于将使用此配置文件发送邮件的每个数据库角色或用户,请授予对配置文件的访问权限。 为此,请运行存储过程 sysmail_add_principalprofile_sp(Transact-SQL), 如下所示:

    EXECUTEmsdb.sysmail_add_principalprofile_sp

    @profile_name = “配置文件的名称

    @ principal_name = “数据库用户或角色的名称

    @is_default = "默认配置文件状态 "

    其中 @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), 如下所示:

    EXECUTEmsdb.dbo.sysmail_add_profile_sp

    @profile_name = “Profile Name

    @description = “描述

    其中 ,@profile_name 是配置文件的名称, @description 是配置文件的说明。 此参数是可选的。

  • 对于每个帐户,请运行存储过程 sysmail_add_profileaccount_sp(Transact-SQL), 如下所示:

    EXECUTEmsdb.dbo.sysmail_add_profileaccount_sp

    @profile_name = "个人资料名称"

    @account_name = “帐户名称

    @sequence_number = 配置文件中帐户的序列号。 '

    其中 @profile_name 是配置文件的名称, @account_name 是要添加到配置文件中的帐户的名称, @sequence_number 确定配置文件中使用帐户的顺序。

  • 若要授予公共访问权限,请运行存储过程 sysmail_add_principalprofile_sp(Transact-SQL), 如下所示:

    EXECUTEmsdb.sysmail_add_principalprofile_sp

    @profile_name = “配置文件的名称

    @ principal_name = “public or 0

    @is_default = “默认配置文件状态

    其中 @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 ;