Oracleとtomcatがポート8080で競合

Oracle9iがインストールされていてDB作成済のマシンにtomcatを入れて立ち上げようとするとポート8080が競合してエラー。

そこでポートごとに使用しているプログラムを調べるとなんとoracle.exeが使っている。

は?Oracle?ですよ。

Oracleのhttpサービスを止めてもだめ。他にもいろいろやってみたけどだめ。

あぁ分かんねぇ。分かんねぇよ。*1

多分、同じ経験をした人はいるはずだと思ってOracleのHPの掲示板を検索。
そしたら、いました。同じ人。

で原因はこう。
Oracleを普通にインストールしDBを作成するとXML DBも作成されてデフォルトでポート8080を使います。
tomcatも普通にインストールしそのままで立ち上げるとデフォルトでポート8080を使おうとして競合してエラー。

で対策はこう。
Database Configuration Assistant →「データベース内のデータベース・オプションの構成 」を選択 →「標準データベース・オプション 」をクリック→「カスタマイズ 」をクリック→「ポート番号の構成」の「カスタム値の指定」を選択して新しいhttpポートを入力。*2
または、XML DBを削除しちゃってもいいとのこと。

Oracle9i使っているシステムでXML DBを使っているのってどれだけあるの?
ほとんど無いでしょ。デフォルトで入れるようにしなくてもいいじゃん。*3
R8.0.5の時はもっとシンプルだったのになあ。

*1:少し前の壁にぶち当たっていた頃の小島聡風で

*2:このときDBは立ち上げてたままで行う。また再立ち上げしなくてもいい

*3:他にもなんだか訳の分からないスキーマがたくさん出来てるし・・・