- ベストアンサー
Oracleが突然接続不可に!
環境:Oracle9i 9.2.0.1.0 言語:VB6 ネットワーク:VPN DBサーバは本社に1つしかなくクライアントは全国数社から動作している受注システムですが突然DBサーバが接続できなくなってしまいました。 そのとき行ったイベントとしては1つの支社にVPNを接続しようとしていたらしくルータの変更等をしていた模様です。限りなくネットワークの設定で障害が発生したんじゃないかと思われるのですが障害中のとき、社内でDBサーバのIPは接続できており、クライアントからSQLPLUSで接続しようとしても接続できない状態でした。ということでORACLEの問題じゃないのかと疑われています。 しかし、そのときORACLEでは何もしていないため、誤解を説明したいのですがORACLEではないと証明するためにはどうすればよいでしょうか? SQLNET等の設定を変更していないからORACLEの問題ではないと言えばいいのかどう説明したら理解してもらえるか悩んでいます。 情報不足で申し訳ありませんがアドバイスお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
とりあえず、DBの問題ではないことを事後に証明するなら ・アラートログにその時間帯にエラーが出ていないこと ・DBサーバのシスログ(イベントログ)にOracle、ネットワークに関するエラーが出ていないこと くらいでしょうか? それと、その時間帯にsqlplusを起動して繋がらないのを確認したのであれば、sqlplusを実行したフォルダにsqlnet.logがあるはずなので、その内容を調べてみるのが良いかと。 もしlistenerのログを出力しているのであれば障害が発生した時間帯にリスナーまで届いているかを調べることもできそうです。24時間稼動DBならリスナーの状態を確認すれば、listenerが停止してないことも証明できそうです。
その他の回答 (2)
- cocom32
- ベストアンサー率58% (75/129)
DBサーバーの名前解決が出来ていないのではありませんか? コマンドプロンプトで、TNSPING TNS名 を試してみてください。 Attempting to Connect (ADRESS=(PROTOCOL=TCP)(HOST=DBサーバー名)(PORT=1521)) TNS-12545 接続に失敗しました。ターゲット・ホストまたはオブジェクトが存在しません。 上記の応答が帰ってきましたら、サーバー名がアドレスなら原因は別と考えられます。 サーバー名ならサーバーの名前解決がされない為通信できなくなっているのではないでしょうか。 名前解決には、\windows\system32\drivers\etc内の HOSTSファイルに アドレス サーバー名の1行を追加してください。 その後 コマンドプロンプトでipconfig /flushdnsを実行してください。 TNSPINGを再度実行し接続を確認できればOKです。 もしはずしていたなら ごめんなさい。
- S31Z
- ベストアンサー率55% (5/9)
社内で接続出来ているのであれば、クライアント(VPN接続先)からDBサーバーにPingが通るか確認されてはいかがでしょうか?