#author("2019-07-23T06:31:47+00:00","default:admin","admin") #author("2021-09-30T05:38:17+00:00","default:admin","admin") -[[SQL Server 2016 ミラーリング時にエラー:927:http://linkgear.jp/sql-server/20170712232849.html?doing_wp_cron=1525585380.8725419044494628906250]] -[[SQL Server 2016でのミラーリング設定:https://social.technet.microsoft.com/Forums/security/ja-JP/86436863-19fe-42ef-9934-571028ae3810/sql-server-2016?forum=sqlserverja]] -[[SQL Serverでデータベースミラーリング(その1):http://axion.co.jp/blog/post-1383.html]] -[[SQL Serverでデータベースミラーリング(その2):http://axion.co.jp/blog/post-1405.html]] -[[SQL Serverでデータベースミラーリング(その3):http://axion.co.jp/blog/post-1417.html]] -[[SQL Serverでデータベースミラーリング(その4):http://axion.co.jp/blog/post-1433.html]] -[[SQL Server 2014 でデータベースミラーリングを構成する:https://mseeeen.msen.jp/sqlserver-database-mirroring/]] -[[【SQL Server】ミラーリング構築:http://barracudash.blogspot.com/2017/05/sql-server.html]] -[[非推奨機能のMS SQLミラーリングはまだまだ使える話:https://www.hitoriit.com/entry/2018/06/05/154020]] -[[SQL Server 高可用性3台ミラー構成:http://saborin.hatenablog.com/entry/20141031/1414970838]] -[[SQLServer のミラーリングが接続できなくなったので解消したメモ:https://qiita.com/chatii0079/items/a6c84dd7af787a316245]] -[[データベースミラーリングの同期モードによる遅延について:https://blog.engineer-memo.com/2012/08/15/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%99%E3%83%BC%E3%82%B9%E3%83%9F%E3%83%A9%E3%83%BC%E3%83%AA%E3%83%B3%E3%82%B0%E3%81%AE%E5%90%8C%E6%9C%9F%E3%83%A2%E3%83%BC%E3%83%89%E3%81%AB%E3%82%88%E3%82%8B%E9%81%85/]] -[[Microsoft SQL Server - PROJECT GROUP:https://www.projectgroup.info/documents/MSSQL/index.html]] *ミラーリングが動作するバージョン [#z04371f1] **SQL Server 2016 [#h272ce77] -SQL Server 2016 SP1 -Microsoft SQL Server Management Studio 16.5.3 <== 17.x はダメ! *設定手順 [#f5d63af3] **前提条件 [#da791f69] -プリンシパルサーバーとミラーサーバーにSQL Server Standard Edition以上がインストールされている(同じエディションじゃないとだめ) -ミラーリング監視サーバーにSQL Server Express Edition以上がインストールされている --自動フェールオーバーが不要な場合は、ミラーリング監視サーバーは不要 -プリンシパルサーバーにミラーリングしたいデータベースが作成されている -全サーバーでリモート接続の設定が完了している **ファイアウォール設定 [#fd55519a] -下記ポートを許可する --1433 --1434 --5022 **アカウント作成 [#o1df5218] -ワークグループでミラーリングを構成する場合「SQL Server (インタンス名)」ログオンのアカウントは、構成するサーバに同一のローカルアカウントを作成して、そのアカウントを指定する必要がある -パスワードも同じものを使用 **プリンシパルサーバ(ミラー元サーバ)での作業 [#h6df56c3] ***バックアップ [#df4454b1] -バックアップは「完全」と「トランザクションログ」の2種類 **ミラーサーバの作業 [#g1f6538e] -「完全」のみを先に1度復元 --上書きするにチェックをして復旧状態は「RESTORE WITH RECOVERY」のままで行う -もう1度データベースの復元を開いて、今度は「データベース」と「ログ」にチェックしたままで「オプション」を設定 --上書きにチェックして復旧状態は必ず「RESTORE WITH NORECOVERY」に設定 -設定ができれば「OK」をクリックして「完全」と「トランザクションログ」を復元 **ミラーリング構成の設定 [#o715f539] **プリンシパルサーバで障害が発生した場合 [#l65fc442] -ミラー サーバーに接続します。 -次のステートメントを実行 ALTER DATABASE <database_name> SET PARTNER FORCE_SERVICE_ALLOW_DATA_LOSS ※<database_name> はミラー化されたデータベース名です。 -ミラー サーバーは直ちにプリンシパル サーバーに切り替わり、データを利用することが可能になる ※ただし、データが損失する場合がある *解除手順 [#jb382cec] -[[データベース ミラーリングの削除 (SQL Server):https://docs.microsoft.com/ja-jp/sql/database-engine/database-mirroring/remove-database-mirroring-sql-server?view=sql-server-2017]] *状態確認 [#y8975a50] -[[ミラーリングの状態や設定をSQL文で確認する方法:http://d.hatena.ne.jp/seki-moto/20100831/SQLServer]] 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