次の方法で共有


sp_change_log_shipping_primary_database (Transact-SQL)

適用対象: SQL Server

プライマリ データベースの設定を変更します。

Transact-SQL 構文表記規則

構文

sp_change_log_shipping_primary_database
    [ @database = ] 'database'
    [ , [ @backup_directory = ] N'backup_directory' ]
    [ , [ @backup_share = ] N'backup_share' ]
    [ , [ @backup_retention_period = ] 'backup_retention_period' ]
    [ , [ @monitor_server_security_mode = ] 'monitor_server_security_mode' ]
    [ , [ @monitor_server_login = ] 'monitor_server_login' ]
    [ , [ @monitor_server_password = ] 'monitor_server_password' ]
    [ , [ @backup_threshold = ] 'backup_threshold' ]
    [ , [ @threshold_alert = ] 'threshold_alert' ]
    [ , [ @threshold_alert_enabled = ] 'threshold_alert_enabled' ]
    [ , [ @history_retention_period = ] 'history_retention_period' ]
    [ , [ @backup_compression = ] backup_compression_option ]
[ ; ]

引数

[ @database = ] 'database'

プライマリ サーバー上のデータベースの名前。 @primary_databasesysname で、既定値はありません。

[ @backup_directory = ] N'backup_directory'

プライマリ サーバー上のバックアップ フォルダーへのパス。 @backup_directorynvarchar(500)であり、既定値はなく、 NULLすることはできません。

[ @backup_share = ] N'backup_share'

プライマリ サーバー上のバックアップ ディレクトリへのネットワーク パス。 @backup_sharenvarchar(500)であり、既定値はなく、 NULLすることはできません。

[ @backup_retention_period = ] 'backup_retention_period'

プライマリ サーバーのバックアップ ディレクトリにログ バックアップ ファイルを保持する時間 (分)。 @backup_retention_period は既定値なしで int であり、 NULLすることはできません。

[ @monitor_server_security_mode = ] 'monitor_server_security_mode'

監視サーバーへの接続に使用されるセキュリティ モード。

  • 1 = Windows 認証
  • 0 = SQL Server 認証

@monitor_server_security_modebit 既定値は NULL です。

[ @monitor_server_login = ] 'monitor_server_login'

監視サーバーへのアクセスに使用するアカウントのユーザー名。

[ @monitor_server_password = ] 'monitor_server_password'

監視サーバーへのアクセスに使用するアカウントのパスワード。

[ @backup_threshold = ] 'backup_threshold'

@threshold_alert エラーが発生するまでの最後のバックアップ後の時間 (分単位)。 @backup_thresholdint で、既定値は 60 分です。

[ @threshold_alert = ] 'threshold_alert'

バックアップのしきい値を超えたときに発生するアラート。 @threshold_alertint であり、 NULLすることはできません。

[ @threshold_alert_enabled = ] 'threshold_alert_enabled'

@backup_thresholdを超えたときにアラートを発生するかどうかを指定します。

  • 1:有効
  • 0:無効

threshold_alert_enabledビットでありNULLすることはできません。

[ @history_retention_period = ] 'history_retention_period'

履歴が保持される時間 (分単位)。 @history_retention_periodint です。値 14420 は、何も指定されていない場合に使用されます。

[ @backup_compression = ] backup_compression_option

ログ配布構成で バックアップ圧縮を使用するかどうかを指定します。 このパラメーターは、SQL Server 2008 (10.0.x) (以降のバージョン) および SQL Server 2016 (13.x) Service Pack 1 (以降のバージョン) のすべてのエディションの Enterprise Edition でサポートされています。

リターン コードの値

0 (成功) または 1 (失敗)。

結果セット

ありません。

解説

sp_change_log_shipping_primary_database は、プライマリ サーバー上の master データベースから実行する必要があります。 このストアド プロシージャでは次の処理が行われます。

  1. 必要に応じて、 log_shipping_primary_database レコードの設定を変更します。

  2. 必要に応じて、指定された引数を使用して、プライマリ サーバーの log_shipping_monitor_primary のローカル レコードを変更します。

  3. モニター・サーバーがプライマリ・サーバーと異なる場合は、必要に応じて、指定された引数を使用してモニター・サーバー上の log_shipping_monitor_primary のレコードを変更します。

アクセス許可

このプロシージャを実行できるのは、 sysadmin 固定サーバー ロールのメンバーだけです。

この例では、 sp_change_log_shipping_primary_database を使用して、プライマリ データベース AdventureWorks2022に関連付けられている設定を更新する方法を示します。

EXEC master.dbo.sp_change_log_shipping_primary_database
    @database = N'AdventureWorks',
    @backup_directory = N'c:\LogShipping',
    @backup_share = N'\\tribeca\LogShipping',
    @backup_retention_period = 1440,
    @backup_threshold = 60,
    @threshold_alert = 0,
    @threshold_alert_enabled = 1,
    @history_retention_period = 1440,
    @monitor_server_security_mode = 1,
    @backup_compression = 1;