Replication Manager Application Agent CLI ユーザーズガイド
- SQL Serverのシステムデータベース(master,model,msdb,distribution)をリストアする場合,システムデータベースを回復するためにリストア対象のSQL Serverのサービスを一度停止します。したがって,リストア対象のデータベースに一時的にアクセスできなくなります。
- SQL Serverのシステムデータベース(master,model,msdb)をリストアする場合,リストア実行中はSQL Serverに接続しないでください。リストア実行中にリストア対象のデータベースへ接続した場合,Application Agentの構成定義ファイル(init.conf)のパラメーター「プロセスの状態確認のリトライ回数とリトライ間隔」で設定した回数だけ,プロセスの状態確認を繰り返すことになります。この場合,繰り返しプロセスの状態確認が行われている間にユーザーの接続を切断すれば,リストアは継続されます。
- リストアする際に,SQL Serverデータベースを構成するドライブ名がバックアップ時と異なる場合,リストアがエラー終了します。リストアする前に,drmsqlcatコマンドおよびSQL Serverの管理ツールでリストア先のドライブ名が一致しているか確認してください。
- バックアップしたホストと異なるホストへリストアするために,-nochk_hostオプションを指定した場合,リストアする際にバックアップカタログでのホスト名の整合性チェックをしないため,間違ったホスト上でリストアしないように注意してください。
- 名称を変更したSQL Serverデータベースに対してリストアする場合,必ずリストア対象のSQL Serverデータベースをデタッチしてからリストアを実行してください。デタッチしないでリストアした場合,コマンドが正常に終了しないで,リストアしたあとのSQL Serverデータベースが使用できなくなることがあります。
- データベースをリストアすると,そのデータベースの所有者はリストアを実行したユーザーに変更されます。所有者を変更する場合は,SQL Serverの管理ツールで再度データベースをアタッチするか,システムストアドプロシージャ「sp_changedbowner」を使用してください。
- テンプレートカタログを使用してリストアするときは,drmsqlrestoreコマンドに-templateオプションを指定して実行してください。
- リストア処理前に,正ボリューム上のファイルやディレクトリが,ほかのアプリケーションで使用中ではないことを確認してください。Application Agentは,リストア処理中に,正ボリュームをマウントおよびアンマウントします。このとき,正ボリューム上のファイルやディレクトリがほかのアプリケーションで使用中だと,アンマウント処理でキャッシュの同期に失敗し,リストア処理がエラー終了します。
特に,次の点に注意してください。
- コマンドプロンプトで,正ボリュームにドライブを移動した場合は,コマンドプロンプトのウィンドウを閉じてください。正ボリューム以外にドライブを移動しても,アンマウント時にエラーとなります。
- エクスプローラで正ボリュームのドライブ下を開いている場合は,正ボリューム以外のドライブにポイントを移動するか,エクスプローラを終了してください。
- ネットワーク経由で正ボリュームのドライブ下のリソースにアクセスしている場合は,アクセスしているアプリケーションを終了してください。
- サービスなど,常駐プロセス型の監視プログラムによって,正ボリュームが開かれている場合があります。この場合,クラスタソフトウエア以外の監視プログラムを停止してください。
- リストアを実行する前に,リストア対象となるデータベースにアクセスするアプリケーションが停止していることを確認してください。ここで言うアプリケーションとは,SQL Serverの上位アプリケーションを含んでいます。つまり,Reporting ServicesのようなSQL ServerコンポーネントもSQL Serverの上位アプリケーションに相当するため,リストアを実行する前に停止していることを確認する必要があります。データベースに接続するアプリケーションが動作している場合,VDIメタファイル適用後のロールフォワードに失敗することがあるため,正しくリストアできません。
例えば,ODBCセッションの確立ができないときにリトライするアプリケーションが実行中だと,VDIメタファイル適用後のロールフォワード時にODBCセッションの確立要求が発行されることによって,ロールフォワードに失敗します。- SQL Serverの管理ツールでバックアップの対象となるデータベースを参照した場合,リストアを実行する前に,SQL Serverの管理ツールで対象データベースとの接続を解除するか,またはSQL Serverの管理ツールを終了してください。SQL Serverの管理ツールがデータベースサーバに接続した状態のままリストアを実行すると,データベースを使用中の状態が続くため,リストアに失敗します。
- リストアを実行する前に,リストア対象となるすべてのデータベースがリストアできる状態になっていることを確認してください。リストアできるデータベースの状態については,「(2) データベースの状態」を参照してください。なお,「未確認」状態のデータベースは,自動的に削除され,リストアされます。
リストア対象に,リストアを実行できない状態のデータベースが1つでも在る場合,正常にリストアできないことがあります。リストアを実行できない状態のデータベースを削除してから,再度リストアコマンドを実行してください。
例えば,-undoオプションを指定しないでリストアを実行した場合,リストア完了後のデータベース状態は読み込み中になります。この状態でリストアコマンドを再実行するとコマンドがエラー終了します。この場合は,読み込み中状態のデータベースを削除してからリストアコマンドを実行してください。- drmsqlrestoreコマンドは処理中にSQL Serverの最小起動を行います。データベースサーバがWindowsのファイアウォール機能を設定していた場合,drmsqlrestoreコマンドでシステムデータベース(master,model,msdb)を含むデータベースのリストアを実行すると,Windowsのファイアウォール機能がSQL Serverの通信をブロックするかどうかのダイアログを表示する場合があります。このダイアログが表示された場合,「ブロックしないを選択する」を選択してください。このダイアログに応答しない場合でもdrmsqlrestoreコマンドは問題なく処理を続行します。
All Rights Reserved. Copyright© 2014, 2020, Hitachi, Ltd.