DB2 DBが無いのにSQL1005Nでデータベースがあると言われる

DBの作成、消去を繰り返すとたまに、DBは消去したはずなのにCREATEDBがSQL1005Nで実行できないことがある。

DB2 CREATE DATABASE INICIO32 AUTOMATIC STORAGE YES ON "F:\DB2\TEST32" DBPATH ON "F:" USING CODESET UTF-8 TERRITORY JP COLLATE USING SYSTEM PAGESIZE 32 KSQL1005N データベース別名 "TEST32"は、すでにローカル・データベース・ディレクトリーまたはシステム・データベース・ディレクトリーのどちらかに存在しています。

LIST DATABSEでも、UNCATALOGでもDROPでも無いと言われる。
ディスク上のどこを探してもTEST32は存在しない。

実は、DB2ディレクトリのNODE0000にファイルが残っているらしい。

LIST DATABASE DIRECTORY ON F:

のように、ドライブを指定してLISTコマンドを実行すると、CATALOGでない、実際にディスク上にあるファイルからDBの一覧が出る。ここで問題のDB名(この例ではTEST32)が見つかればしめたもの。

DB2 CATALOG DATABASE TEST32 ON F:

これで、いったんディス上のファイルが再カタログされるので、

DB2 DROP DATABASE TEST32

これできれいにTEST32が無くなった。

これは想像だが、①コントロールセンターから「ドロップ」でなく「除去」をおこなうとか、②マニュアルで「DB2 UNCATALOG」を行うとか、あるいは、③DBの残骸が残ったままDB2の再インストールを行い、問題のDBの残骸の認識無しに、DBの名前のディレクトリだけ消す と、NODE0000の中に情報が残るのではないかと思われる。

私の場合は多分③を実行したのだと考えている。