DB2 ユニバーサル・データベース バージョン 6 以前では、 正規表スペース、長形式スペース、または一時表スペースが損傷した場合、 あるいは、欠落ログや循環ログが使用された場合は、データベースに接続することができませんでした。 また、問題が修正されない場合は、 データベースをバックアップから復元しなければなりませんでした。
DB2 ユニバーサル・データベース バージョン 6 では、 この問題に注意を向けています。 正規表スペース、長形式表スペース、あるいは一時表スペースが損傷したり、 欠落したりしている場合は、循環ログを使用していても、 表スペースが OFFLINE 状態になり、データベースへの接続を確立できます。 この変更により、REORG 状況以外では一時表スペースから回復するものがなくなるため、 一時表スペースの処理能力は向上します。 たとえば、接続を確立すると、 いくつかの方法でデータベースを立ち上げることができます。
ログの保存がオンになっている (ログ・アーカイブ) 状態では、 正規表スペース、長形式表スペース、あるいは一時表スペースが損傷したり、 欠落したりしていても接続は可能であり、これらの表スペースはロールフォワードの保留状態に入ります。
データベースが立ち上がっている状態でこれらの表スペースにアクセスすると、 エラーが返されます (SQL0290N 表スペース・アクセスが許されていません。)。
正規表スペースの場合、 たとえそれが唯一のユーザー表スペースであったとしても、 ドロップが可能な場合があります。
表が複数の表スペースにまたがっている場合は、 ドロップできません。
一時表スペース以外に表スペースがない場合、 一時表の作成が必要となる操作はすべて失敗し、エラーが返されます。 たとえば、表の索引を作成しようとすると、"SQL0290N 表スペース・アクセスが許されていません。" というエラー・メッセージが返されます。 また、この一時表スペースを使用する表を再編成しようとすると、 "SQL2216N データベース表の再編成中に、SQL エラー "%1" が起きました。" というエラー・メッセージが返されます。 一時表スペースしかない場合は、それをドロップすることはできません。 DB2 は、データベース内の唯一の一時表スペースがドロップされることがないようにします。 この場合、"SQL0283N 一時表スペース "%1" は、データベース内の "%2" ページ・サイズを持つただ 1 つの一時表スペースであるため、ドロップすることができません。" というエラー・メッセージが返されます。 解決策は、古い一時表スペースをドロップする前に、新しい一時表スペースを作成することです。