• ベストアンサー

物理メモリ2Gある場合、SHARED_POOL_SIZEはどの程度とればよいか?

オラクルDBサーバーの設定値の一つであるSHARED_POOL_SIZEは物理メモリ全体が2Gある端末においては、どの程度を割り当てれば無難でしょうか? 目安レベルで構いませんので、ご経験のある方は大体の値を教えていただけませんか? <スペック> OS:Windows2003 Server CPU:Pen4 3.0G メモリー:2G Oracleバージョン:Oracle Database EnterpriseEdition 9.2.0.6

  • Oracle
  • 回答数1
  • ありがとう数1

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

  • ベストアンサー
  • tomo316
  • ベストアンサー率35% (51/142)
回答No.1

レスが無いので、参考までに。 SHARED_POOL_SIZEは、共有SQL とPL/SQL ブロック、パッケージ、プロシージャ、ファンクション、トリガー、データディクショナリ情報等が格納される領域のことで、共有プールといいます。 ライブラリキャッシュヒット率は90%以上になるように、 SHARED_POOL_SIZEを調整します。 Oracle10gから、SGA_TARGETを指定して、SHARED_POOL_SIZEを含めたSGA領域を自動管理することで、このパラメータの管理の手間を省くこともできます。 自動管理する場合は、SHARED_POOL_SIZEは指定する必要がありません。 SGA_TARGETが設定されている場合、ゼロ SGA_TARGETが設定されていない場合、以下の条件でデフォルト値は異なる     32ビットOS : 32M     64ビットOS : 84M (マニュアルで確認してください) 手動でのチューニングを行う場合は以下の動的パフォーマンスビューを参照する。 詳しくはマニュアル参照 V$LIBRARYCACHE ライブラリキャッシュの統計 V$SQLAREA ユーザが実行している共有SQL領域内のSQL文 V$SQLTEXT ユーザが実行している共有SQL領域内のSQL文 V$SGASTAT すべてのSGA構造のサイズ V$SHARED_POOL_RESERVED 共有プールの予約領域を設定するパラメータを調整する V$DB_OBJECT_CACHE ライブラリキャッシュに固定化されていないPL/SQLオブジェクトを見つける V$SQL_PLAN キャッシュされたカーソルの実行計画を参照 V$ROWCACHE ディクショナリの使用状況 とにかくマニュアルを読むことです。

関連するQ&A

  • 物理メモリの増やし方(oracleトライアル版インストールにおいて)

    「10日でおぼえるOracle」という書籍で初めてOracleを勉強しようと している者です。 付属のトライアル版でOracle10gをインストールしようとしたら、 「製品固有の前提条件のチェック」において 「物理メモリの要件を確認」のところで警告が出ました。 予期した結果:256MB 実際の結果:247MB 物理メモリーが足りません とのことなのですが、 通常、物理メモリって256MBだと思っていたのですが・・ この場合物理メモリを買って増設したほうが良いのでしょうか? もし他にも方法があればご教授いただけると幸いです。 (ハードウェアに関してはあまり知識がありません) どうぞよろしくお願いいたします。

  • oracleのメモリ使用量が97%ほどに・・・減らしたいです

    いつもお世話になります。 oracle8.1.7がインストールされている Linux サーバに関して、現在メモリ使用量が逼迫しているためか、 時々OSの処理が重くなり、応答が無くなる事が多々発生して困っています。 Database:Oracle 8.1.7 Enterprise Edition Linux:RedHat Linux 6.2 freeコマンドで調べたところ、 --------------------------------------------------------------------------- [root@sample dir1]# free total used free shared buffers cached Mem: 2073296 1996752 76544 1575952 112904 813364 -/+ buffers/cache: 1070484 1002812 Swap: 2097136 2536 2094600 --------------------------------------------------------------------------- topコマンドで調べたところ(Shift + M でメモリ使用順としました) --------------------------------------------------------------------------- 6:05pm up 5:06, 2 users, load average: 0.22, 0.11, 0.10 69 processes: 66 sleeping, 1 running, 0 zombie, 2 stopped CPU states: 17.3% user, 1.4% system, 0.0% nice, 81.1% idle Mem: 2073296K av, 1996832K used, 76464K free, 2385012K shrd, 110684K buff Swap: 2097136K av, 2632K used, 2094504K free 816100K cached PID USER PRI NI SIZE RSS SHARE STAT LIB %CPU %MEM TIME COMMAND 1672 oracle 0 0 848M 848M 847M S 604M 0.0 41.9 13:47 oracle 1710 oracle 4 0 458M 458M 456M S 445M 1.5 22.6 13:03 oracle 1767 oracle 6 0 350M 350M 348M S 337M 2.3 17.3 10:17 oracle 1764 oracle 6 0 347M 347M 342M S 331M 2.3 17.1 4:38 oracle 1915 oracle 16 0 84564 82M 80532 S 68M 29.2 4.0 0:59 oracle 1688 oracle 0 0 74804 72M 73592 S 71M 0.0 3.5 0:36 oracle 1677 oracle 0 0 62808 61M 61100 S 46M 0.0 3.0 0:44 oracle 848 oracle 0 0 39160 38M 37960 S 36M 0.0 1.8 0:01 oracle 854 oracle 0 0 30092 29M 29632 S 25M 0.0 1.4 0:01 oracle 852 oracle 0 0 14592 14M 14144 S 9.8M 0.0 0.7 0:02 oracle ---------------------------------------------------------------------------  ※10件のみとしました 上記となり、恐らくoracleがメモリ使用量を圧迫し、Swap領域も逼迫した場合にサーバ処理の 応答が無くなると推測しています。 上記を改善するために、init.ora 内の以下の項目を編集しようと考えていますが、数値を決めかねています。 サーバがフリーズ状態(僅かながらもゆっくり動いている)原因について、 何でも結構ですので、アドバイスいただけたらと思います。よろしくお願いいたします。 open_cursors = 1000 max_enabled_roles = 30 db_block_buffers = 64000 shared_pool_size = 524288000 large_pool_size = 1048576 java_pool_size = 0 log_checkpoint_interval = 10000 log_checkpoint_timeout = 1800 processes = 150 log_buffer = 532480 db_block_size = 8192 sort_area_size = 1048576 sort_area_retained_size = 1048576

  • 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(最大時) 上記以外に必要な情報があれば、ご指示願います。 長々となりましたが、よろしくお願い致します。

  • データベースの移行方法

    質問させていただきます。 サーバの変更に伴い、データベースをサーバ(A)からサーバ(B)に移行し、サーバ(A)とサーバ(B)を全く同じして、クライアントがこれまで通りデータベースを利用できるようにしたいと考えています。 新たに購入したサーバ(B)に社内にあったマニュアルを元にしてOracle9iをインストールし、DBの作成したところまで進めているのですが、その後のデータの移行がよく分かりません。expやimpコマンドを使って行うとできるらしいのですが、よく分かっていません。 社内のマニュアルには新たにDBを作成する方法は書いてあるのですが、データの移行については書いておらず、困っています。 私が全くOracleについて知らないので、質問内容が分かりずらいとおもいますが、回答いただけるとありがたいです。 ●環境 サーバ(A)   OS:windows server 2000 oracleのバージョン:oracle9i Database (9.2.0.1.0) サーバ(B)   OS:windows server 2003 oracleのバージョン:oracle9i Database (9.2.0.1.0) OSの違い以外は社内マニュアルを元にして同じ設定にしてあります。 よろしくお願いします。

  • オラクルマスターの受験資格

    オラクルマスターのシルバー辺りの取得を考えているんですが、 ブロンズを持っていることが受験資格になっているのでしょうか? オラクルのホムペには、 > ORACLE MASTER Silver Oracle Database 10gを取得するための第一歩は、 > ORACLE MASTER Bronze Oracle Database 10gの認定を取得することです。 http://www.oracle.com/education/lang/jp/certification/dba10g_oca.html こういう記載があるので。 どうなのでしょう?

  • Windowsサービスを別のサービスに依存させるには?

    OracleにアクセスするWindowsサービスプログラムを作ったのですが、Windowsの起動時にOracleインスタンスが起動する前に自作サービスが起動してDB接続エラーとなってしまします。 次の条件の元で、これを解決するにはどうしたらよいでしょうか。(Oracleに限った話ではないと思います) 1.自作サービスを書き換えたくない 2.管理ツールの「サービス」画面で、自作サービスの起動を「自動」にしたい。 3.環境はWindows Server 2003, Oracle Database 9i, 10g

  • Oracle10g と9iの同居

    Oracle10gと9iを同じサーバで運用したいです。 (どちらもDATABASEです。) 1つのサーバで、バージョンの違うDBを運用することは可能ですか? 以前、8iと9iは同居可能と聞いたことがありますが、 10gと9iも同居可能ですか? 教えてください。よろしくお願いします。

  • オラクルを自宅サーバーに導入したい

    オラクル10gを自宅サーバーに入れて使おうと思うのですが、 ライセンスなどわからないので、詳しい方にお聞きします。 以下のソフトのどちらかを入れようと思うのですが可能でしょうか? ライセンス契約を結ばないといけないなど聞いたことがあるのですが個人でもそうなのでしょうか? 目的は関係なく、どうしてもDBはオラクルがしたいです。 ●Oracle Standard Edition One for Win (5 Named User Plus) (Oracle Database 10g R2 (10.2.0) Standard Edition One for Win (32-bit)) DP v7 http://www.amazon.co.jp/exec/obidos/ASIN/B000RWSLES/ebookdesu0f-22/ref=nosim/ ●Oracle Database Personal Edition for Win (1 Named User Plus) (Oracle Database 10g R2 (10.2.0) Personal Edition for Win (32-bit)) DP v7 http://www.amazon.co.jp/exec/obidos/ASIN/B000RWSLG6/ebookdesu0f-22/ref=nosim/

  • 64bitサーバにOracleが作成できない!?

    ご存知のかたいらっしゃいましたら教えて下さい。 現在、Windows Server 2003 standard X64 Edition に Oracle 10g Release 10.1.0(32bit)をインストールし、 Database Configuration Assistant に於いてDBを 作成しようとしていますが、「Ora-12546:TNS:アクセス権が拒否されました」が表示され、以降の処理が行えなく なります。 確認したところ32bit Oracle で32bitサーバには問題な くインストールできました。 32bit Oracle では64bitサーバにインストールできない のでしょうか?対処方法(パッチなど)がございましたら ご教示願いたいと思います。 宜しくお願い致します。

  • Oracleへのリンクサーバー設定について

    お世話になります。 下記環境におきまして、SQL ServerよりOracleへリンクサーバーを作成しようとしたところ、 「リンクサーバー"XXX"のOLE DB プロバイダ"MSDAORA"のデータソースオブジェクトを初期化できません。 リンクサーバー"XXX"のOLE DB プロバイダ"MSDAORA"から、メッセージ"Oracle"クライアントと ネットワークコンポーネントが見つかりません。これらのコンポーネントはOracle Corporationから提供され、 Oracle Version 7.3.3(またはそれ以降)のクライアント ソフトウェアの一部としてインストールされます。 プロバイダは、これらのコンポーネントがインストールされるまで機能しません。"が返されました。 (Microsoft SQL Server,エラー:7303)」 となり、作成に失敗してしまいます。 SQL Serverには10gのOracleクライアントをインストールしてあるのですが、原因がわかりません。 どなたか、同じ原因を経験され、解決された方はいらっしゃいますか。 もし、お分かりでしたら、ご教授頂きたいのですが。 よろしくお願いいたします。 尚、SQL Serverは運用の関係上、Oracleクライアントインストール後、再起動は行っておりません。 環境 OS:Windows2003 DB:SQL Server 2005 Oracle:10g