Microsoft SQL Server 2005 のミラーリング

いろいろハマりましたが、監視サーバー付きでのミラーリングの設定ができました。
肝は
1)SQL Server のサービスの実行権限者を、管理ツールのサービスから、ローカルユーザー(マシン名Administrator)に変更する。(SQL サーバーの構成からだと「アカウント名とセキュリティ Id 間のマッピング [0x80070534] 実行されませんでした。」エラーが出る)
2)SQL サーバーの構成で、サービスのプロパティの詳細から、起動オプションの最後に;-T1400をつける。(製品によっては不要)
3)SQL Management Studio タスクのミラーの設定をするときに、各サーバーには Windows権限で接続する。
4)バックアックは、完全とトランザクションログをとる。同じファイルでよい
5)ミラーサーバーで復元するときは、オプションの真ん中の「データベースは操作付加状態のままで、」を選ぶ。

なところでした。無事に終わってよかった。

ちなみに接続文字列は
"server=プリンシプルサーバー名; failover partner=ミラーサーバー名; database=データベース名"
で、いいらしい。

監視サーバーが異常を検出する時間の設定は、プリンシパルのインスタンスに接続して(ミラーでもいいかもしれないけど)、
ALTER DATABASE データベース名 SET PERTNER TIMEOUT 秒数
でいいそうです。デフォルトは10秒ですが、たまに勝手にフェールオーバーするので30秒に延ばしました。(SQL Server のインスタンス自体を Windows Server のフェールオーバーに設定していますが、このフェールオーバーに10数秒かかるので、倍くらいと思って設定してあります。こっちがうまくいかないときにフェールオーバーしてくれるとうれしい)

コメントを残す

メールアドレスが公開されることはありません。