Replication Manager Application Agent CLI リファレンスガイド
バックアップする場合
drmsqlbackup { インスタンス名 | DEFAULT }
[ -system | -target データベース名 | -f 一括定義ファイル名 ]
[ -rc [ 世代識別名 ]]
[ -pf コピーパラメーター定義ファイル ]
[ -comment バックアップコメント ]
[ -script ユーザースクリプトファイル名 ]
[ -s バックアップサーバー名
[ -auto_import
[ -auto_mount [ マウントポイントディレクトリー名 ]]
]
[ -svol_check ]
]バックアップカタログを作成する場合
drmsqlbackup { インスタンス名 | DEFAULT }
[ -system | -target データベース名 | -f 一括定義ファイル名 ]
-template
[ -comment バックアップコメント ]指定したインスタンスが記憶されているボリュームを副ボリュームにバックアップします。指定したインスタンスのデータファイルや各種のデータベースなどのオブジェクトが,複数のボリュームで構成されている場合,すべての正ボリュームが副ボリュームにバックアップされます。
SQL Serverインスタンスをバックアップするときは,オンラインバックアップになります。コマンドを実行するときに,起動していないインスタンスを指定すると,コマンドはエラーになります。
コマンドを実行すると,インスタンス内のデータベースに対して,SQL ServerのVDIによって,スナップショットが作成されます。
スナップショットのデータ(VDIメタファイル)は,次のディレクトリーに格納されます。
VDIメタファイル格納先ディレクトリーが空の場合,バックアップが終了すると正ボリュームにVDIメタファイルは存在しなくなり,副ボリュームにだけ存在します。
プライマリーデータファイルと同一パスにあるデータファイルやトランザクションログファイルの名前に「META_データベースID.dmp」という名前のファイルを使わないでください。この名前のファイルがある場合,バックアップは失敗します。
VDIメタファイルに使用されるバックアップIDは,コマンド実行時に割り当てられる10桁の数値です。また,データベースIDはSQL Serverで割り当てられるデータベースを識別するための10桁の数値です。
稼働していないインスタンスを指定した場合は,コマンドはエラーになります。また,インスタンス名だけ指定して実行した場合,インスタンスに含まれるすべてのユーザーデータベースがバックアップ対象になります。SQL Serverのシステムデータベース(master,model,msdb)は含まれません。システムデータベースをバックアップする方法は,次のとおりです。
コマンドを実行する直前には,副ボリュームのシステムキャッシュをクリアーしておく必要があります。システムキャッシュをクリアーするには,バックアップサーバーで副ボリュームをマウントしてから,アンマウントしてください。
「PAIR」状態のコピーグループに対してこのコマンドを実行した場合,コピーグループの状態が「PSUS」に変更されます。
インストール後,drmsqldisplayコマンドに-refreshオプションを指定して実行しないで,ディクショナリーマップファイルが作成していない状態でdrmsqlbackupコマンドを実行した場合,drmsqlbackupコマンドでディクショナリーマップファイルが作成されます。この場合,ディクショナリーマップファイルの作成する処理時間の分,バックアップコマンド実行時間が長くなります。したがって,drmsqlbackupコマンドの実行前には-refreshオプションを指定したdrmsqldisplayコマンドを実行し,必ずディクショナリーマップファイルを作成しておいてください。
コマンドを実行した場合,一度にバックアップできるデータベースの最大数は64です。65個以上のデータベースをバックアップしたい場合は,コマンドを複数回に分けて実行してください。
バックアップの対象となるのは,次の表に示すファイルです。
表2-17 SQL Serverデータベースのバックアップの対象となるファイル
| 対象データベース※1 | 対象となるファイルの種類 | バックアップファイル名 | バックアップファイル格納先 |
|---|---|---|---|
| master | データファイル | バックアップ元のファイル名と同じ | 副ボリューム |
| トランザクションログファイル | バックアップ元のファイル名と同じ | 副ボリューム | |
| VDIメタファイル※2 | drmsqlinitコマンドで指定したVDIメタファイル格納ディレクトリーに依存する※3 | ||
| model | データファイル | バックアップ元のファイル名と同じ | 副ボリューム |
| トランザクションログファイル | バックアップ元のファイル名と同じ | 副ボリューム | |
| VDIメタファイル※2 | drmsqlinitコマンドで指定したVDIメタファイル格納ディレクトリーに依存する※3 | ||
| msdb | データファイル | バックアップ元のファイル名と同じ | 副ボリューム |
| トランザクションログファイル | バックアップ元のファイル名と同じ | 副ボリューム | |
| VDIメタファイル※2 | drmsqlinitコマンドで指定したVDIメタファイル格納ディレクトリーに依存する※3 | ||
| ユーザーデータベース | データファイル | バックアップ元のファイル名と同じ | 副ボリューム |
| トランザクションログファイル | バックアップ元のファイル名と同じ | 副ボリューム | |
| VDIメタファイル※2 | drmsqlinitコマンドで指定したVDIメタファイル格納ディレクトリーに依存する※3 | ||
| ディストリビューションデータベース | データファイル | バックアップ元のファイル名と同じ | 副ボリューム |
| トランザクションログファイル | バックアップ元のファイル名と同じ | 副ボリューム | |
| VDIメタファイル※2 | drmsqlinitコマンドで指定したVDIメタファイル格納ディレクトリーに依存する※3 | ||
インスタンス名
バックアップ対象のデータベースインスタンスを指定します。バックアップ対象がSQL Serverで既定のインスタンスの場合,「DEFAULT」と指定します。
-system
tempdbを除くシステムデータベース(master,model,msdb)とすべてのユーザーデータベースをバックアップする場合に指定します。このオプションを使用した場合,リストアするときにSQL Serverを停止します。
-targetデータベース名
指定したインスタンスに含まれる特定のデータベースをバックアップする場合に指定します。
複数のデータベースをバックアップする場合は,1つのデータベース名ごとにコンマで区切って指定します。空白文字を含んだデータベース名を指定する場合,「"」で囲んで指定します。このオプションには,インスタンス名で指定したインスタンス上に存在するデータベースを必ず指定してください。別のインスタンス上のデータベースを指定した場合,そのデータベースに対するバックアップは行われません。
このオプションで指定したデータベース名は,バックアップカタログに登録され,drmsqlcatコマンドで確認できます。
システムデータベース(master,model,msdb)だけをバックアップする場合は,システムデータベース(master,model,msdb)を指定してコマンドを実行してください。
-f一括定義ファイル名
このオプションは,-targetオプションと同様に,指定したインスタンスに含まれる特定のデータベースをバックアップする場合に指定します。-targetオプションと異なり,データベース名の一覧を記述した定義ファイルをあらかじめ作成しておき,そのファイルの名称を指定することで,データベース名を一度に指定できます。一括定義ファイル名は,絶対パスで指定します。空白文字を含んだ一括定義ファイル名を指定する場合,「"」で囲んで指定します。
一括定義ファイルに指定するデータベースは,指定したインスタンス上にあることが前提です。指定のデータベースが別のインスタンス上にある場合,そのデータベースに対するバックアップは行われません。
システムデータベース(master,model,msdb)だけをバックアップする場合は,システムデータベース(master,model,msdb)を指定してコマンドを実行してください。
-rc世代識別名
バックアップするコピーグループの世代識別名を指定します。drmsqldisplayコマンドに-cfオプションを付けて実行し,表示された「GEN-NAME」の値を指定してください。単体ボリュームの場合は,「-」が表示されます。この場合,-rcオプションは指定できません。
リモート側の副ボリュームへバックアップする場合,このオプションを必ず指定してください。このオプションを省略すると,ローカル側の副ボリュームにバックアップされます。
世代識別名を省略した場合は,リモート側の世代番号の中で,最小の値を持つ副ボリュームがバックアップ先となります。この場合,世代番号はremote_n(nは最小の世代番号)となります。
-pfコピーパラメーター定義ファイル
コピーパラメーター定義ファイルに定義したリトライ回数とリトライ間隔を使用する場合に指定します。指定する場合は,パスではなくファイル名だけを指定してください。
このオプションを省略した場合は,RAID Manager用連携定義ファイル(DEFAULT.dat)の値が使用されます。コピーパラメーター定義ファイルに記述されていないパラメーターについても,DEFAULT.datの値が使用されます。
コピーパラメーター定義ファイルは,次の場所に任意の名前で作成します。ファイル名は,64バイト以内の半角英数字で指定してください。
<Application Agentのインストール先>\DRM\conf\raid
-commentバックアップコメント
バックアップカタログにバックアップコメントを登録する場合に指定します。
バックアップコメントには,64バイトまでの任意の文字列(英数字,記号,半角スペースおよびマルチバイト文字)が指定できます。バックアップコメントは大文字と小文字を区別します。記号,半角スペースを指定する場合は,バックアップコメントを引用符(")で囲みます。記号を引用符(")で囲まない場合は,特殊記号と認識しバックアップコメントの文字列として正しく解釈できません。
バックアップコメントに使用できない記号は次のとおりです。
「\」,「/」,「`」,「|」,「<」,「>」,「"」,「*」,「?」,「&」,「;」,「(」,「)」,「$」
先頭文字には「-」は指定できません。-commentオプションに「""」(引用符だけ)が指定された場合は,バックアップカタログにバックアップコメントは登録しません。
-scriptユーザースクリプトファイル名
ユーザースクリプトを実行する場合に指定します。ユーザースクリプトファイル名は絶対パスで指定します。ユーザースクリプトファイル名を指定するときの条件は次のとおりです。
ユーザースクリプトファイルの記述内容については,マニュアル「Hitachi Command Suite Replication Manager Application Agent CLI ユーザーズガイド」の,ユーザースクリプトを作成する方法についての記述を参照してください。
ユーザースクリプトファイルに「LOCATION=REMOTE」を指定した場合は,-sオプションをあわせて指定する必要があります。
-sバックアップサーバー名
リモートのバックアップサーバーに接続してバックアップを実行する場合に指定します。バックアップサーバーのホスト名またはIPアドレスを,255バイト以内の文字列で指定してください。IPアドレスはIPv4またはIPv6形式で指定できます。
-auto_import
ボリュームのバックアップが完了したあと,バックアップカタログをバックアップサーバーに自動転送する場合に指定します。このオプションは,-sオプションと同時に指定する必要があります。
-auto_mountマウントポイントディレクトリー名
ボリュームのバックアップが完了したあと,バックアップサーバーで副ボリュームを自動マウントする場合に指定します。このオプションは,-sオプションおよび-auto_importオプションと同時に指定する必要があります。このオプションを指定すると,バックアップ対象となる副ボリュームをすべてマウントします。
マウントポイントディレクトリー名は,ドライブ文字またはドライブ文字から始まる絶対パスで指定します。ディレクトリー名は,Windowsのディレクトリー名に指定できる文字で,パスの末尾の「\」を含めて64バイト以内で指定してください。ただし,半角スペース,マルチバイト文字,および半角カタカナは使用できません。
ドライブ文字から始まる絶対パスを指定する場合,空のディレクトリーを指定してください。
パスの末尾に「\」がない場合でも,「\」が指定されているものと見なされます。例えば,「D:」と「D:\」は同じドライブと見なされます。また,「D:\MOUNTDIR」と「D:\MOUNTDIR\」は同じディレクトリーと見なされます。
マウント先は次のようになります。
マウントポイントディレクトリー名を省略した場合は,使用されていないドライブにマウントします。
マウントした副ボリュームは,drmumountコマンドを使用してアンマウントしてください。drmumountコマンドの引数には,バックアップIDを指定してください。
-svol_check
バックアップサーバーでの副ボリュームの状態をチェックしたい場合に指定します。このオプションは,-sオプションと同時に指定する必要があります。副ボリュームの状態をチェックすることで,バックアップの失敗,またはリストアの失敗を防ぐことができます。チェック内容(項目,対象,条件)は次のとおりです。
| チェック項目 | チェック対象のボリューム | チェックの条件 |
|---|---|---|
| 副ボリュームがバックアップサーバーから隠ぺいされていること | バックアップ対象の正ボリュームに対して定義されたすべての副ボリューム | 正ボリュームが複数世代の副ボリュームとペア定義されている場合で,かつ正ボリュームがクラスターリソースである場合にチェックされる。 |
| 副ボリュームがバックアップサーバーにマウントされていないこと | 今回,バックアップ先となる副ボリューム | 常にチェックされる。 |
-template
ペア再同期,分割およびデータベース静止化を行わないで,バックアップカタログだけを作成する場合に指定します。
-templateオプションを指定してテンプレートカタログを作成しても,古いVDIメタファイルは削除されます。
例えば,2世代環境で次のコマンドを実行したとします。
この場合,手順3.を実行後は,手順1.で取得されたVDIメタファイルとカタログは削除されます。
このバックアップカタログは,リモートでバックアップしたデータをリストアするときだけ使用できます。
0:正常終了した場合
0以外:エラーが発生した場合
PROMPT> drmsqlbackup SQLDB
PROMPT> drmsqlbackup SQLDB -target DB01,DB02
PROMPT> drmsqlbackup default -comment comment
PROMPT> drmsqlbackup default -template
PROMPT> drmsqlbackup default -script C:\Uscript.txt
All Rights Reserved. Copyright© 2014, 2024, Hitachi, Ltd.