7.1.10 コマンドを実行するためのSQL Serverデータベースの条件

SQL Serverデータベースを操作するコマンド(drmsqlxxx)を実行するには,SQL Serverのサービスの状態,データベースの状態,データベースの種類を考慮する必要があります。コマンドを実行できる条件について,次に説明します。

この項の構成
(1) サービスの状態
(2) データベースの状態
(3) データベースの種類

(1) サービスの状態

表7-1 コマンドを実行できるSQL Serverサービスの状態

コマンドサービスの状態
起動中停止中
drmsqlbackup×
drmsqlcat
drmsqldisplay-refresh指定あり)×
drmsqldisplay-refresh指定なし)
drmsqlinit×
drmsqllogbackup×
drmsqlrecover×
drmsqlrecovertool×
drmsqlrestore
(システムデータベースを含む)
drmsqlrestore
(システムデータベースを含まない)
×
(凡例)
○:コマンドを実行できる。
×:コマンドを実行できない。
注※
master,model,msdbのことを指します。

(2) データベースの状態

表7-2 コマンドを実行できるSQL Serverデータベースの状態1

コマンドSQL Serverデータベースの状態
オンラインオフライン読み込み中読み取り専用未確認
drmsqlbackup××××
drmsqlcat
drmsqldisplay
-refresh指定あり)
drmsqldisplay
-refresh指定なし)
drmsqlinit
drmsqllogbackup
-no_truncate指定あり)
×××
drmsqllogbackup
-no_truncate指定なし)
××××
drmsqlrecover
-undo指定あり)
×
(読み取り専用になる)
×
drmsqlrecover
-loading指定あり)
×
(読み込み中になる)
×
drmsqlrecover
-undo指定および-loading指定なし)
×
(オンラインになる)

(オンラインになる)
×
drmsqlrecovertool
Loading指定あり)
××
(読み込み中になる)
×
drmsqlrecovertool
Standby指定あり)
××
(読み取り専用になる)
×
drmsqlrecovertool
Online指定あり)
××
(オンラインになる)

(オンラインになる)
×
drmsqlrestore
-undo指定あり)

(読み取り専用になる)

(読み取り専用になる)
※1
(読み取り専用になる)

(読み取り専用になる)
※2
(読み取り専用になる)
drmsqlrestore
-undo指定なし)

(読み込み中になる)

(読み込み中になる)
※1
(読み込み中になる)

(読み込み中になる)
※2
(読み込み中になる)
(凡例)
●:コマンドを実行できる(データベースに対する操作あり。括弧内はコマンド実行後のデータベースの状態が変わる場合の状態)。
△:条件によってコマンドを実行できる(データベースに対する操作あり。括弧内はコマンド実行後のデータベースの状態が変わる場合の状態)。
○:コマンドを実行できる(データベースに対する操作なし)。
×:コマンドを実行できない。
注※1
システムデータベース(master,model,msdb)のリストアを含む場合はコマンドを実行できます。
ユーザーデータベースだけをリストアする場合は,リストアコマンドを実行できない状態のデータベースを削除してからリストアを実行してください。
注※2
「未確認」状態のデータベースは,自動的に削除され,リストアされます。

表7-3 コマンドを実行できるSQL Serverデータベースの状態2

コマンドSQL Serverデータベースの状態
オフラインかつ未確認読み込み中かつ未確認読み取り専用かつオフライン読み取り専用かつ未確認読み取り専用かつオフラインかつ未確認
drmsqlbackup×××××
drmsqlcat
drmsqldisplay
-refresh指定あり)
drmsqldisplay
-refresh指定なし)
drmsqlinit×××××
drmsqllogbackup
-no_truncate指定あり)
×××××
drmsqllogbackup
-no_truncate指定なし)
×××××
drmsqlrecover
-undo指定あり)
×××××
drmsqlrecover
-loading指定あり)
×××××
drmsqlrecover
-undo指定および-loading指定なし)
×××××
drmsqlrecovertool
Loading指定あり)
×××××
drmsqlrecovertool
Standby指定あり)
×××××
drmsqlrecovertool
Online指定あり)
×××××
drmsqlrestore
-undo指定あり)

(読み取り専用になる)

(読み取り専用になる)

(読み取り専用になる)

(読み取り専用になる)

(読み取り専用になる)
drmsqlrestore
-undo指定なし)

(読み込み中になる)

(読み込み中になる)

(読み込み中になる)

(読み込み中になる)

(読み込み中になる)
(凡例)
●:コマンドを実行できる(データベースに対する操作あり。括弧内はコマンド実行後のデータベースの状態が変わる場合の状態)。
○:コマンドを実行できる(データベースに対する操作なし)。
×:コマンドを実行できない。
注※
「未確認」状態のデータベースは,自動的に削除され,リストアされます。

(3) データベースの種類

表7-4 コマンドを実行できるSQL Serverデータベースの種類

コマンドSQL Serverデータベースの種類
システムデータベースユーザーデータベース
mastermsdbmodeltempdb
drmsqlbackup×
(エラー終了)
drmsqlcat
drmsqldisplay
drmsqlinit
drmsqllogbackup×
(処理スキップ)※1
×
(処理スキップ)※1
×
(処理スキップ)※1
×
(処理スキップ)※1
※2
drmsqlrecover×
(処理スキップ)
×
(処理スキップ)
×
(処理スキップ)
×
(エラー終了)
drmsqlrecovertool×
(処理スキップ)
×
(処理スキップ)
×
(処理スキップ)
×
(エラー終了)
drmsqlrestore
(凡例)
●:コマンドを実行できる(データベースに対する操作あり)。
○:コマンドを実行できる(データベースに対する操作なし)。
×:コマンドを実行できない(括弧内はコマンドの動作)。
注※1
-targetオプションまたは-fオプションで明示的に指定した場合は,エラー終了となります。
注※2
データベースの復旧モデルが「完全」または「一括ログ記録」の場合に限ります。