ホーム › フォーラム › A5:SQL Mk-2掲示板 › OracleDB接続時に「NET: Invalid port」とエラーがでる
- このトピックには17件の返信、1人の参加者があり、最後にshioにより2年、 6ヶ月前に更新されました。
-
投稿者投稿
-
sakosukeゲスト
OracleDBに対して直接接続で接続しようとすると
NET: Invalid port:
というエラーがダイアログで表示され接続できません。ポートは1521を使用しております。
A5:SQL Mk-2のバージョン2.15.5で同じDBに接続する場合にはエラーは出ず問題なく接続できます。
2.16.2では上記のエラーが発生します。
同じPCを使用しており、A5:SQL Mk-2のバージョン以外違いがないため、アップデートによる不具合かと思うのですがご確認いただけないでしょうか。松原正和キーマスターsakosuke さんこんにちは。
もしかするとですが Version 2.16.2の設定で、ポート番号の入力欄に空白が入力されていないでしょうか?。
このような場合に、該当エラーが表示されるようです。sakosukeゲストポート番号は1521を入力した状態になっていました。
接続テストでポート番号を入力し直しても同様の事象となります。1521を入力してテスト接続 → Invalid portエラー
1522を入力してテスト接続 → 接続に失敗しました。というエラー
となりました。松原正和キーマスターsakosuke さんこんにちは。
”NET: Invalid port:” は、ポートに指定した文字列が整数に変換できないときに発生するエラーなのですが、エラーになるのは接続情報の入力画面からテスト接続したときでしょうか?。DBツリーから実際に接続するときでしょうか?。
また、新しく接続を作成してもエラーは発生しますでしょうか?sakosukeゲスト・接続情報の入力画面からテスト接続する時
・DBツリーから実際に接続するとき
この両方で発生します。接続情報を新しく作り直してみても同様にInvalid Portというエラーが発生しました。
新規作成の際はポートの数値はデフォルト値(1521)を使いましたが、それでエラーになったので入力し直してみましたがこれも同様でした。
既存の接続情報をコピーして新しく接続情報を作成しても同様にInvalid Portエラーとなりました。設定の保存先をポータブルの設定にしていたので、設定ファイルを直接削除後に新規に接続情報を作成してみても同様でした。
松原正和キーマスターsakosuke さんこんにちは。
こちらで再現できないのですが、ホスト名やサービス名に記号などは混じっていたりしないでしょうか?。例えば、サービス名欄が “:” から始まると、似たようなエラー “NET: Invalid port: SN=” が発生したりするようです。あと、Version 2.17.0 のベータ版でも発生したりするでしょうか?。
sakosukeゲスト2.17.0 rc2 64bit版で試しましたが同様の事象が発生しました。
ホスト名やサービス名に記号が含まれていないかについてですが
ホスト名には.(ドット)
サービス名には_(アンダースコア)
が含まれています。
こちら都合で申し訳ありませんが、具体的な設定値をお伝え出来ず申し訳ありません。松原正和キーマスターsakosuke さんこんにちは。
すみません、現象を再現できていません。サービス名に「: :」(コロン・スペース・コロン)または「: /」(コロン・スペース・スラッシュ)が含まれていると、「NET: Invalid port: 」が発生するようですが、そういうことはないですよね。
Instant Client でもよいので、OCI経由で接続することは可能でしょうか?。sakosukeゲストサービス名に「::」や「:/」が含まれているようなことはありませんでした。
データベースの追加と削除の画面で、1行テキストボックスの欄がありますがそこには以下のような値で表示されています(サーバ名、サービス名は変えています)。
Database=xxx01.yyy.jp:1521/SN=abcd_efg01Instant ClientをインストールしてOCI経由で接続したところ問題なく接続できました(ver.2.16.2)。
Instant Clientのバージョンは21.3.0.0.0です。ozeゲスト私もバージョンを2.17.0_64に上げたら、同様のエラーで接続出来ないOracleが発生しました。
接続出来るOracleもあります。出来ない方はデータベースの内容を登録画面内でポート番号を上書きしてもダメでした。接続出来る方はポート番号を上書きしても問題なく接続出来ます。
環境上の違いは、接続出来る方は11gで接続出来ない方は12cです。ozeゲストa5m2_2.15.4_x64を入れてそのまま実行したら、11g側はそのまま接続出来て、12c側はユーザID/パスワードエラーになりました。
アカウントのエラーが解消できないので、DBの再登録をしたら問題なく接続出来るようになりました。
この状態のレジストリーで2.17.0で実行するとやはり同じで12c側だけ「NET: Invalid port」エラーになります。shioゲスト横から失礼します。私も同じ症状が発生しています。
2.15.x では発生していませんが、2.16.x、2.17.0では発生します。
接続できない設定の共通点で、SNにアンダーバーが使われているということに気が付きましたが、何か関係ありそうでしょうか。ozeゲスト私の環境でも接続出来ない方にはSIDにアンダーバーが含まれています。
ただ、SERVICE_NAMEにはアンダーバーは含まれておらず接続設定のサービス名欄にはこちらの値を指定しております。
Oracleのバージョンは関係無くて、SID又はSERVICE_NAMEのどちらかにアンダーバーが含まれていると今回の様なエラーが発生するのでしょうか。
Oracleをもう一つ作る環境が無くて仮説の検証が出来ません。松原正和キーマスターozeさん、shioさんこんにちは。
一応、手元でアンダーバーを含むサービス名のOracleインスタンスを作成して試してみたのですが、接続エラーは発生しませんでした。
もしかしてと思うのですが、接続できないOracle DatabaseはRAC構成になっていたりはしないでしょうか?。なんとなく、直接接続に使っているライブラリでプロトコル解釈上の問題があるようにも思えます。ぬーぼーゲストまさしくRAC環境でこの現象が発生しています。
この場合、OCI接続にするしかなさそうですね。 -
投稿者投稿