如何创建数据库邮件公共配置文件 (Transact-SQL)

使用数据库邮件配置向导或数据库邮件存储过程来创建数据库邮件公共配置文件。公共配置文件允许有权访问 msdb 数据库的任意用户使用该配置文件发送电子邮件。

使用 Transact-SQL 创建数据库邮件公共配置文件

  1. 为配置文件创建一个或多个数据库邮件帐户。有关创建数据库邮件帐户的详细信息,请参阅如何创建数据库邮件帐户 (Transact-SQL)

  2. 执行存储过程 msdb.dbo.sysmail_add_profile_sp 以创建配置文件,要指定以下内容:

    • 要创建的配置文件的名称。

    • 配置文件的说明(可选)。

  3. 对每个帐户执行 msdb.dbo.sysmail_add_profileaccount_sp,以将帐户添加到配置文件中。

  4. 通过执行 msdb.sysmail_add_principalprofile_sp,并以 'public' 作为 @principal_name 或以 0 作为 @principal_id,授予对配置文件的公共访问权限。

示例

以下示例将创建一个数据库邮件帐户和数据库邮件配置文件。然后,将帐户添加到配置文件中,并为 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 ;