web-dev-qa-db-ja.com

プライマリサーバーが利用できなくなったときに、セカンダリサーバーのログ配布構成を削除する

SQL Server 2005がインストールされているプラ​​イマリサーバーが故障したため、ログ配布されたデータベースをセカンダリサーバーで起動しました。データベースはセカンダリサーバー上にあり、プライマリサーバーにアクセスできなくなったときに、ログ配布設定を削除するだけです。

sp_delete_log_shipping_secondary_databaseストアドプロシージャは、セカンダリサーバーで実行する必要があります。これにより、 " msdn "に記載されているように、「セカンダリデータベースが削除され、ローカル履歴とリモート履歴が削除されます」。

これにより、データベース自体も削除されますか?それともログ配布設定のみですか?また、プライマリサーバーにアクセスできない場合はどうなりますか?

セカンダリサーバーは既に使用されているため、データベースを失うことはありません。

7
treaschf

Msdbのログ配布テーブルの孤立したエントリと呼ばれるものに直面しています。以下のtsqlを使用して、手動ログ配布の孤立したエントリをクリーンアップできます。あなたのケースでは、利用可能なプライマリデータベースがないので、secondary部分を実行する必要がありますorsp_delete_log_shipping_secondary_database N'secondary_database'。 msdbからセカンダリデータベースの設定を削除するだけです。

----- on primary
delete from [dbo].[log_shipping_monitor_primary]
where primary_database = 'your database name'       -- Change the database name 
go
delete from [dbo].[log_shipping_primary_databases]
where primary_database = 'your database name'        -- Change the database name
go
delete from [dbo].[log_shipping_primary_secondaries]
where secondary_database = 'your database name'      -- Change the database name


----- on Secondary
delete from [dbo].[log_shipping_monitor_secondary]
where secondary_database  = 'your database name'     -- Change the database name
go
delete from [dbo].[log_shipping_secondary]
where primary_database = 'your database name'        -- Change the database name
go
delete from [dbo].[log_shipping_secondary_databases]
where secondary_database = 'your database name'      -- Change the database name

注:上記の方法は安全であり、ログ配布に関連する情報のみを削除します。

9
Kin Shah