Sqlserver
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Sqlserver

Thiết lập kịch bản của thư cơ sở dữ liệu

AFAIK, không có cách nào nhất thiết phải tập lệnh này từ SSMS nhưng bạn có thể tạo một tập lệnh có thể vận chuyển trong TSQL một lần và sử dụng lại nó trên tất cả các máy chủ. Đây là một ví dụ điển hình để bạn bắt đầu với điều này:

USE [master]
GO
sp_configure 'show advanced options',1
GO
RECONFIGURE WITH OVERRIDE
GO
sp_configure 'Database Mail XPs',1
GO
RECONFIGURE 
GO
-- Create a New Mail Profile for Notifications
EXECUTE msdb.dbo.sysmail_add_profile_sp
       @profile_name = 'DBA_Notifications',
       @description = 'Profile for sending Automated DBA Notifications'
GO
-- Set the New Profile as the Default
EXECUTE msdb.dbo.sysmail_add_principalprofile_sp
    @profile_name = 'DBA_Notifications',
    @principal_name = 'public',
    @is_default = 1 ;
GO
-- Create an Account for the Notifications
EXECUTE msdb.dbo.sysmail_add_account_sp
    @account_name = 'SQLMonitor',
    @description = 'Account for Automated DBA Notifications',
    @email_address = '[email protected]',  -- Change This
    @display_name = 'SQL Monitor',
    @mailserver_name = 'smtp.domain.com'  -- Change This
GO
-- Add the Account to the Profile
EXECUTE msdb.dbo.sysmail_add_profileaccount_sp
    @profile_name = 'DBA_Notifications',
    @account_name = 'SQLMonitor',
    @sequence_number = 1
GO

Tùy chọn khác sẽ là tận dụng SMO, thông qua .NET hoặc powershell để tạo các tập lệnh. Tham chiếu SMO cho điều này sẽ là:

Lớp SqlMail

CẬP NHẬT:

Đây là cách thực hiện dễ dàng để viết kịch bản này với Powershell và SMO:

[void][reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo");

#Set the server to script from
$ServerName = "ServerName";

#Get a server object which corresponds to the default instance
$srv = New-Object -TypeName Microsoft.SqlServer.Management.SMO.Server $ServerName

#Script Database Mail configuration from the server
$srv.Mail.Script();



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhật ký giao dịch SQL Server, Phần 1:Khái niệm cơ bản về ghi nhật ký

  2. Tên chính xác cho một bảng kết hợp (mối quan hệ nhiều-nhiều)

  3. Làm thế nào để xây dựng lại chỉ mục trong một cột bảng cụ thể?

  4. SQL NOT IN không hoạt động

  5. SQL:Sử dụng ISNULL với trục động