• ベストアンサー

初回接続の遅い原因について

環境 言語 :VB6 DB  :Oracle9i 9.2.0 VB6のアプリケーションを起動してから操作できるまでが遅いというクレームを受けています。 テストしてみたところ、初回起動のみ遅いことがわかりました。その為、VBアプリは関係ないと思われます。(全くではないにしても) 初回起動のみですので大きな問題ではないのですが、原因を報告しなければなりません。 Oracleだけを考えた場合の想像ですが、初回接続でディスクにアクセスし、メモリにセッションを保持しているため、次回以降は遅くならないということでしょうか? また、サーバのSGAなど?のメモリのサイズが小さいためにセッション数が多すぎてメモリに保持できないなどの理由もあるのでしょうか? さらに上記を回避したい場合の対応策などはありますでしょうか? どなたかアドバイスお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

SQLNET.AUTHENTICATION_SERVICESの設定、適切にしてまっか~? -sqlnet.oraファイル(Oracleサーバ側)- SQLNET.AUTHENTICATION_SERVICES=(NONE) これ、初期状態ではNTSになっているのでNONEにする。 していたらごめん。私にはお手上げ。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • cocom32
  • ベストアンサー率58% (75/129)
回答No.2

8iでの経験なので参考になるかわかりませんが、朝一番のアプリケーション起動時に遅いという現象の解決例です。 状況は夜間コールドバックアップを実行している為、早朝にインスタンスの再起動を実行しています。 この状態ですと、ファンクションやビューは読込みされていないので、アプリケーションがファンクションやビューを使用した時に始めて読込みコンパイルされます。 このコンパイル実行が、かなり時間を要します。 そのために朝の初回アプリケーション起動時に遅くなるという現象でした。 インスタンス起動後にコンパイルを実行しておくことで解決しました。 実行文は 以下のとおりです。 Exec dbms_utility.compile_schema('tiger'); もし毎回アプリケーション起動時に遅いようでしたら原因が別にあると思われます。 共有プールメモリの設定関係かもしれません。 参考になればさいわいです。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • DBの接続について

    はじめまして VB初心者です DBに接続されているのかを判断したいのですが 何かいい方法がありませんか? 開発言語はVB6.0 DBはオラクル9iです よろしくお願いします。

  • CSVデータの取り込み

    開発環境 言語 VB6.0 DB  ACCESS 一つ目は、CSVデータをACCESSに保存したいのですがどうしたらいいですか? 開発環境 言語 VB6.0 DB  ORACLE9i 二つ目は、CSVデータをORACLE9iに保存したいのですがどうしたいいですか? どうかよろしくお願いします。

  • oracle 10g 最大SGAサイズを変えたらDBが起動しなくなった

    oracle 10g 最大SGAサイズを変えたらDBが起動しなくなった デフォルトの最大SGAサイズが1.5GBだったので3.0GBにしたところ DBが起動しなくなりました。元に戻すにはどうしたらいいでしょうか?

  • Javaでの接続について

    ネット等をみるとOracle提供のJDBCドライバで接続する方法が載っていますが、oo4oを利用してJavaのプログラムからOracleにつなぐことは可能でしょうか? VBやVCの場合、oo4oを推奨していたと思うのですが、言語がJavaの場合はどうなのか調べてもよく分からないため質問させていただきました。 よろしくお願いいたします。

  • Oracleが突然接続不可に!

    環境:Oracle9i 9.2.0.1.0 言語:VB6 ネットワーク:VPN DBサーバは本社に1つしかなくクライアントは全国数社から動作している受注システムですが突然DBサーバが接続できなくなってしまいました。 そのとき行ったイベントとしては1つの支社にVPNを接続しようとしていたらしくルータの変更等をしていた模様です。限りなくネットワークの設定で障害が発生したんじゃないかと思われるのですが障害中のとき、社内でDBサーバのIPは接続できており、クライアントからSQLPLUSで接続しようとしても接続できない状態でした。ということでORACLEの問題じゃないのかと疑われています。 しかし、そのときORACLEでは何もしていないため、誤解を説明したいのですがORACLEではないと証明するためにはどうすればよいでしょうか? SQLNET等の設定を変更していないからORACLEの問題ではないと言えばいいのかどう説明したら理解してもらえるか悩んでいます。 情報不足で申し訳ありませんがアドバイスお願い致します。

  • Oracle8.1.6のチューニング全般について

    Oracle8.1.6のチューニングについてお伺いした事があります。 既存のOLTP系システムのDB専用サーバがハード交換となり、 新しいサーバにてDBを再構築する事となりました。 これを機に以下のチューニングを行い、パフォーマンス向上を考えております。 現在検討している手段は以下となっております。 ・ANALYZEによる全表の統計情報の取得 ・SGAメモリ割り当ての見直し 上記以外でレスポンス全般に大きな影響を与える箇所というのは ありますでしょうか?(Windwsの設定等も含む) また、割り当て直したSGAメモリの主要となる値を記載させて頂きますのでご指導頂けますでしょうか? db_block_buffers = 64 (MB) shared_pool_size = 512 (MB) log_buffer = 3 (MB) sort_area_size = 1 (MB) db_block_size = 8 (KB) サーバスペックは以下となっております。 OS :Windows2003 Server CPU:Inter(R) Xeron(TM) CPU 3.40GHz, 3.39GHz メモリ:6GB(物理) Oracle8.1.6 Oracleへの同時接続セッション数:50~100(最大時) 上記以外に必要な情報があれば、ご指示願います。 長々となりましたが、よろしくお願い致します。

  • 接続の切れたアプリケーション

    現在、ORACLE10.1.2+VB.NETで開発を行っています。 どちらに質問するか迷ったんですが、こちらに書かせて 頂きます。 作成したアプリケーションをC/Sで起動を行い。 その後、クライアントのネットワーク接続を切断すると、 アプリケーションの接続は回復するのですが、ORACLEの接続が 回復するアプリケーションと回復しないアプリケーションが 存在します。 この様な症状に心当たりがある人は何かご教授願えないでしょうか? DBの接続自体は、某ツールに任せているんで、内部的なことは まったくわかりません。このようなツールは使いたくないですね・・

  • OracleのSGA領域の拡張について

    SGA領域の拡張をしておりますがOS上のメモリーの見方が よく分かりません。 SGAを拡張する前は下記のようになっております。 ●MiracleLinux 2.1 [oracle@svr20 dbs]$ free -m total used free shared buffers cached Mem: 1254 1247 7 233 659 190 -/+ buffers/cache: 397 857 Swap: 2000 0 2000 →見方としては free7M + buffers659M + cached190M = 856M  -/+ buffers/cache:とほぼ同じでだいたい856Mあまっている?  と言う見方でよろしいのでしょうか? ●Oracle9.2.0.1 SQL> startup open; ORACLE instance started. Total System Global Area 235999352 bytes Fixed Size 450680 bytes Variable Size 201326592 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. →SGAは235Mとなっております。 ------------ ここで alter system set sga_max_size = 1024M scope=spfile; 発行して1024Mに拡張しOracleとOSを再起動しました。 SQL> startup open; ORACLE instance started. Total System Global Area 1074861156 bytes Fixed Size 451684 bytes Variable Size 1040187392 bytes Database Buffers 33554432 bytes Redo Buffers 667648 bytes Database mounted. Database opened. →SGAは1Gとなっており増えております。 [root@svr20 /root]# free -m total used free shared buffers cached Mem: 1254 1212 42 236 668 161 -/+ buffers/cache: 382 872 Swap: 2000 73 1926 →872Mあまっている? 75Mぐらい増やしましたがOS上では減っておりません。 freeは42Mと増えてます。 また、alter system set sga_max_size = 2024M scope=spfile; と拡張しましたら再起動後メモリが足らないのかORA-27123となり起動 できなくなりました。 この場合SGAのメモリ枠は何メガまで拡張できるかどのようにして 判断したら良いか教えてください.

  • WebクライアントでDBセッションを維持させたい

    C/S系システムをWebシステムに移行することを考えてます。 Webクライアントにおいて、アプリでログイン後にDBセッションをずっと保持させたままにしておきたいのです。(WebクライアントとDBセッションを1対1にしたい) APサーバ上でコネクションプーリングしてDBとのセッションを維持させておくことは知ってます。 実現方法や、実現された事例等がありましたら教えて頂けないでしょうか? DBはORACLEを利用してますが、 Webクライアントと dbms_session.unique_session_id を一意に定めたいのです。

  • データ型について(oo4o)

    OraSession型ってバージョンによって 使えたり使えなかったりするんですか? 例えば下記のように記述してあるプログラムを Public OraSession As OraSession 'オラクルセッション用変数名 Oracle8i8.1.5では大丈夫だったのに、Oracle8i8.1.7にしたら Object型にしないと駄目だったんです。 OraSessionというデータ型は避けたほうがいいのでしょうか。 ちなみにVB5.0のプログラムをVB6.0でコンパイルしようと して起きた問題です。 VBとoo4oのバージョンの問題でもあるんでしょうか。

このQ&Aのポイント
  • 自宅内の複数の場所にWi-Fiルーターを設置することは可能ですが、注意点があります。
  • 電波がぶつかることで、つながりにくくなる可能性があります。
  • エレコム株式会社の製品を使用している場合、正しい設置方法や設定をすることで問題を解消できる可能性があります。
回答を見る