データベースの状態
データベースは、常に、ある特定の状態にあります。たとえば、ONLINE、OFFLINE、SUSPECT などです。データベースの現在の状態を確認するには、sys.databases カタログ ビューで state_desc 列を選択するか、DATABASEPROPERTYEX 関数で Status プロパティを選択します。
データベースの状態の定義
次の表では、データベースの状態を定義します。
状態 | 定義 |
---|---|
ONLINE |
データベースにアクセスできます。復旧時に行われる元に戻すフェーズが完了していなくても、プライマリ ファイル グループはオンラインです。 |
OFFLINE |
データベースは使用できません。ユーザーの明示的な操作によってデータベースがオフラインになり、ユーザーが新たな操作を行うまでオフラインのままになります。たとえば、ファイルを新しいディスクに移動するために、データベースをオフラインにできます。移動の完了後に、データベースをオンラインに戻します。 |
RESTORING |
プライマリ ファイル グループの 1 つ以上のファイルが復元中か、1 つ以上のセカンダリ ファイルがオフラインで復元中です。データベースは使用できません。 |
RECOVERING |
データベースが復旧中です。復旧処理は一時的な状態です。復旧が成功すると、データベースは自動的に online 状態になります。復旧が失敗すると、データベースは suspect 状態になります。データベースは使用できません。 |
RECOVERY PENDING |
復旧中に SQL Server でリソース関連のエラーが検出されました。データベースは破損していませんが、ファイルが見つからないか、システム リソースの制限によりデータベースを起動できない可能性があります。データベースは使用できません。エラーを解決して復旧処理を完了するには、ユーザーによる新たな操作が必要です。 |
SUSPECT |
少なくともプライマリ ファイル グループが問題のある状態で、破損している可能性があります。SQL Server の起動中にはデータベースを復旧できません。データベースは使用できません。問題を解決するには、ユーザーによる新たな操作が必要です。 |
EMERGENCY |
ユーザーがデータベースを変更し、状態を EMERGENCY に設定しました。データベースはシングル ユーザー モードになり、修復または復元できます。データベースは READ_ONLY に設定され、ログ記録が無効になり、アクセスが sysadmin 固定サーバー ロールのメンバに制限されます。EMERGENCY は、主にトラブルシューティングの目的に使用されます。たとえば、suspect に設定されたデータベースを、EMERGENCY 状態に設定できます。これにより、システム管理者にデータベースへの読み取り専用のアクセスを許可できます。sysadmin 固定サーバー ロールのメンバのみが、データベースを EMERGENCY 状態に設定できます。 |
参照
概念
ミラーリング状態
ファイルの状態
バックアップの破損による SQL Server 復元エラーの対応
その他の技術情報
ALTER DATABASE (Transact-SQL)
データベースについて