ミラーリングが動作するバージョン

SQL Server 2016

  • SQL Server 2016 SP1
  • Microsoft SQL Server Management Studio 16.5.3 <== 17.x はダメ!

設定手順

前提条件

  • プリンシパルサーバーとミラーサーバーにSQL Server Standard Edition以上がインストールされている(同じエディションじゃないとだめ)
  • ミラーリング監視サーバーにSQL Server Express Edition以上がインストールされている
    • 自動フェールオーバーが不要な場合は、ミラーリング監視サーバーは不要
  • プリンシパルサーバーにミラーリングしたいデータベースが作成されている
  • 全サーバーでリモート接続の設定が完了している

ファイアウォール設定

  • 下記ポートを許可する
    • 1433
    • 1434
    • 5022

アカウント作成

  • ワークグループでミラーリングを構成する場合「SQL Server (インタンス名)」ログオンのアカウントは、構成するサーバに同一のローカルアカウントを作成して、そのアカウントを指定する必要がある
  • パスワードも同じものを使用

プリンシパルサーバ(ミラー元サーバ)での作業

バックアップ

  • バックアップは「完全」と「トランザクションログ」の2種類

ミラーサーバの作業

  • 「完全」のみを先に1度復元
    • 上書きするにチェックをして復旧状態は「RESTORE WITH RECOVERY」のままで行う
  • もう1度データベースの復元を開いて、今度は「データベース」と「ログ」にチェックしたままで「オプション」を設定
    • 上書きにチェックして復旧状態は必ず「RESTORE WITH NORECOVERY」に設定
  • 設定ができれば「OK」をクリックして「完全」と「トランザクションログ」を復元

ミラーリング構成の設定

プリンシパルサーバで障害が発生した場合

  • ミラー サーバーに接続します。
  • 次のステートメントを実行
    ALTER DATABASE <database_name> SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS
    ※<database_name> はミラー化されたデータベース名です。
  • ミラー サーバーは直ちにプリンシパル サーバーに切り替わり、データを利用することが可能になる ※ただし、データが損失する場合がある

解除手順

状態確認

SELECT
     DB_NAME(database_id) [DBName]
    ,mirroring_role_desc
    ,mirroring_state_desc
    ,mirroring_witness_state_desc
FROM
    sys.database_mirroring
WHERE
    mirroring_guid IS NOT NULL

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2021-09-30 (木) 14:38:17 (933d)