You were brought to this page based on an internet search
and as a free service to Oracle DBAs.
The text below is an except from the book,
Oracle Performance Firefighting, written by
Craig Shallahamer of
OraPub, Inc.
Figures and tables are not included on this page, only their reference.
To order the book in either print or PDF form, click
here.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
-------------------------------
Figure 7-13 shows a series of SQL statements related to shared pool subpools. In this case, a 752MB shared pool exists with three subpools. The x$ksmss query returns one row for each subpool plus another row if the Java pool exists. The instance parameter to set the number of subpools, _kghdsidx_count cannot be altered dynamically. If you want to influence Oracle to invoke a subpool number change, you must set the instance parameter and recycle the instance.
Oracle does place a hard limit on the number of subpools. In Oracle Database 11g, I was able to start an instance with seven subpools, but with eight subpools, the instance did not start-in fact, it required a shutdown abort before it could be restarted.
Interestingly, Oracle does not have to respect your subpool number wishes. In fact, in the example shown in Figure 7-13, the instance parameter was set to 2 and the instance restarted, yet Oracle created three subpools. And without the instance parameter manually set, Oracle created only a single subpool. So while you can influence Oracle, it still reserves the right to make changes.
©2009, 2010 by Craig Shallahamer. This is copyrighted material.
PleaseOut of respect for those involved in the creation of the book and also for
their familes, we ask you to respect the copyright both in intent and deed. Thank you.
|