タグ付けされた質問 「mirroring」

データベースミラーリングに関する質問-データベースの正確なコピーを同期または非同期で作成および維持するために使用されるテクノロジ。

2
Microsoft SQL Server 2012ミラーが切断される
Microsoft SQL Server 2012のミラーがいくつかあり、非同期モードでの監視なしで、散発的に切断されます。SQL Server 2012 11.0.5058を実行しています。私が見るミラー側のログを見て BUFの割り当てに失敗しました:FAIL_BUFFER_ALLOCATION 1 たくさんのメモリークラークメッセージがあります エラー:802、重大度:17、状態:0。 バッファープールで利用可能なメモリが不足しています。 エラー:1454、重大度:16、状態:1。 データベースミラーリングは一時停止されます。サーバーインスタンス 'instance'は、データベース 'database'のミラーリングパートナーとして機能していたときに、エラー802、状態0、重大度17を検出しました。データベースミラーリングパートナーは、エラーから自動的に回復して、ミラーリングセッションを再開しようとする場合があります。詳細については、エラーログで追加のエラーメッセージを確認してください。 この一連のイベントの後にミラーが一時停止状態になり、その後切断される理由を確認するために何をチェックすべきかについての助けがあれば幸いです。この後、ミラーを再確立できます。ミラーは数日間問題なく機能し、その後、何度も発生します。

2
物理トランザクションログファイルがミラーのプリンシパルである場合、どうすれば縮小できますか?
週末にデータベースミラーリングをセットアップしましたが、トランザクションログをバックアップするジョブを再度有効にするのを忘れていました。私が今朝来たとき、トランザクションログは58GBに膨れ上がっており、ドライブ容量のほとんどを占めていました。 トランザクションログをディスクに手動でバックアップして、データベースを再度実行しましたが、DBCC SHRINKFILEを実行しても、トランザクションログファイルの物理的なサイズは小さくなっていません。 DBCC SHRINKFILE (N'MyDatabaseName_Log', 1000) を使用してログの使用状況を確認した場合 DBCC SQLPERF(LOGSPACE) 現在のログの22%だけが使用されていることがわかります データベース名ログサイズ(MB)ログ使用領域(%)ステータス MyDatabaseName 55440.87 22.38189 0 log_reuse_wait_descsys.databsesでチェックアウトした場合、表示される唯一のレコードはDATABASE_MIRRORINGなので、ログファイルの物理サイズが縮小されないのは、ミラーが役割を果たしていると思いますか? SELECT log_reuse_wait_desc FROM sys.databases WHERE name = N'MyDatabaseName'; また、プリンシパルデータベースミラーリングの状態がSuspendedであることにも気付きました。再開することは、次のエラーですぐに失敗します。 データベース 'MyDatabaseName'のリモートミラーリングパートナーでエラー5149、ステータス1、重大度25が発生しました。データベースミラーリングが一時停止されました。リモートサーバーのエラーを解決してミラーリングを再開するか、ミラーリングを削除してミラーサーバーインスタンスを再確立します。 ミラーサーバーのエラーログにはこのエラーも含まれますが、ログファイルドライブがいっぱいであることに関するエラーも含まれます 物理ファイルを拡張しようとしたときに、MODIFY FILEでオペレーティングシステムエラー112(ディスクに十分なスペースがありません。)が発生しました。 そして F:\ Databaselogs \ MyDatabaseName_1.ldf:オペレーティングシステムエラー112(ディスクに十分なスペースがありません。)が発生しました。 プリンシパルサーバーのログファイルドライブには60 GBがあり(他のデータベースはここでホストされています)、ミラーサーバーには45 GBしかありません。 ログファイルをバックアップするとデータベースが再び使用できるようになりましたが、ディスク上の物理ログファイルのサイズを減らし、ミラーリングを再開したいと考えています。 ミラーリングやバックアップチェーンを犠牲にすることなく、物理トランザクションログファイルのサイズを縮小するにはどうすればよいですか? SQL Server 2005を実行しています

2
トランザクションログとミラーリング-可能な最も愚かな説明を探す
まず、トランザクションログの概念に苦労していることを認めなければなりません。つまり、データベースで発生するすべてのトランザクションのログであることは理解していますが、タスク内のコンテキストに適切に配置することに関しては、明らかに何かが欠けています。ですから、質問に答える人なら誰でも、トランザクションログの背後にある理論を自由に拡張してください。 主な質問は-SQL Server 2008と2 GBのデータベースがあり、ミラーリングが必要です(12 GBのトランザクションログがあります)。そのデータベースをミラーリングしていない場合は、シンプルモードに切り替えるか、バックアップ後にログを切り捨てることができると思います。しかし、この場合、トランザクションログを管理したい場合はどうすればよいですか?私が理解しているように、データベースを簡単にミラーリングしたい場合は(フルバックアップを実行するだけ)、トランザクションログ全体を保持する必要があります。 これを回避する方法はありますか?理想的には、毎回MDFとLDFの両方を1つのファイルに保存するバックアップが可能であり、バックアップが実行された後、データベースのトランザクションログ(LDF)が0に減少したことを望みます。このシナリオの問題は、増分バックアップです-最初のバックアップの場合切り捨てられたログでは、後でミラーリングを行う場合、2番目のバックアップが最初のバックアップを参照する必要があると思います(つまり、1つではなく多数のファイルを保持することで立ち往生します)。 だから-この問題について誰かが私を啓発できますか?私はここで多くの穴を埋めようとしていることと、提案された「ソリューション」が最良のものではない可能性があることを理解していますが、誰かがトランザクションログの正しい方向に押し出してくれれば、ミラーリングへの影響と最良の結果が得られることを心から感謝しますそれらの2つの実践。

2
ミラーログはプライマリでは空ですが、ミラーでは問題ありません
私たちは何十もの主要サーバーとそれに対応するミラーを持っていますが、ほとんどは正常に機能していますが、そのうちの1つは奇妙な動作をしています。具体的には、sp_dbmmonitorresultsprocは特定のプリンシパルデータベースのすべての列をNULLとして返しますがsp_dbmmonitorresults、ミラーでは有効な情報を返します。 今、私はその原因が大まかにわかっています。プリンシパルサーバーとミラーサーバーがセットアップされたとき、プライマリの地域設定が正しくなかった(時刻は正しかったが、+ 4地域(アメリカなど)を使用していた)場合、ミラーリングが設定された後、時間地域はGMT +0に修正されました(学校少年のエラーは知っていますが、c'est la vie!) 編集:19/12/2012 今日、私はミラーリングを削除し、ミラー上のコピーを削除し、ミラーリングを再セットアップしましたが、これは問題を解決しませんでした!私はこの質問に賞金を払って、この問題の根底に到達しようとしています。 確認のため、EXEC sp_dbmmonitorresults @database_name = 'ProScript'各サーバーで手動で実行すると、プライマリのほとんどの値にNULLが返されますが、ミラーでは正常に返されます。 プライマリで実行した場合: ズーム:クリックしてフルサイズバージョン 鏡で走ったとき: ズーム:クリックしてフルサイズバージョン ご覧のとおり、時刻は現在でデータベースは同期していますが、log_generation_rate、unsent_log、send_rateなどはすべてプライマリでNULLになっていますか? 両方のサーバーは、exec sys.sp_dbmmonitorupdateジョブステップなどとして毎分実行されている監視ジョブを持っています。 sys.sp_dbmmonitorupdateのソースを確認すると、これらの値が取得されます。sys.dm_os_performance_countersしたがって、ミラーで次のコマンドを実行すると、 SELECT counter_name , cntr_value FROM sys.dm_os_performance_counters WHERE instance_name = 'ProScript' AND counter_name IN ( N'Log Send Queue KB', N'Log Bytes Sent/sec', N'Redo Queue KB', N'Redo Bytes/sec', N'Transaction Delay', N'Log …

3
単一のミラーリングされたデータベースの自動フェイルオーバーをトリガーする簡単な方法はありますか?
自動フェールオーバー構成を備えた安全性の高いsqlserver2008-R2の単一インスタンスに3つのミラーリングされたデータベースがあります。1つのデータベースのみの自動フェイルオーバーをトリガーする方法はありますか? SSMSの[フェールオーバー]ボタンをクリックするだけでなく、データベースが実際に到達できない場所をシミュレートしたいと思います。プライマリのエンドポイントを停止できますが、同じエンドポイントを使用するため、3つのデータベースすべてに到達できなくなります。 1 dbだけを無効にするにはどうすればよいですか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.