Solved

Memory Allocation in Oracle

Posted on 2011-03-01
7
874 Views
Last Modified: 2013-11-11
My Oracle 11201 Logical datagurd (prd800d) database on IBM AIX plateform, initially had 16GB Memory and the Paging size was set to 20GB.
We had serious and frequent performance issues and consequently an additional 24GB of memory was added. We now have 40GB memory and the paging size is still at 20GB
Below is the out put from sho SGA command.
SQL> sho sga

Total System Global Area   1.2527E+10 bytes
Fixed Size                                2218400 bytes
Variable Size                     4798285408 bytes
Database Buffers              7717519360 bytes
Redo Buffers                           8704000 bytes
SQL>

Below is the info from the init.ora file.
prd200l is the Primary Database
prd800d is the Logical Dataguard.

prd200l.__db_cache_size=7683964928
prd800d.__db_cache_size=7751073792
prd200l.__java_pool_size=33554432
prd800d.__java_pool_size=33554432
prd200l.__large_pool_size=33554432
prd800d.__large_pool_size=33554432
prd200l.__oracle_base='/a0221/oracle'#ORACLE_BASE set from environment
prd800d.__oracle_base='/a0223/oracle'#ORACLE_BASE set from environment
prd200l.__pga_aggregate_target=2080374784
prd800d.__pga_aggregate_target=2080374784
prd200l.__sga_target=10502537216
prd800d.__sga_target=10502537216
prd200l.__shared_io_pool_size=0
prd800d.__shared_io_pool_size=0
prd200l.__shared_pool_size=2650800128
prd800d.__shared_pool_size=1543503872
prd200l.__streams_pool_size=33554432
prd800d.__streams_pool_size=1073741824

My question is what parameters should I modify so that Oracle can take full advantage of the additional memory. Will that adjustment require a database bounce??

0
Comment
Question by:KamalAgnihotri
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2
  • 2
7 Comments
 
LVL 4

Assisted Solution

by:MarioAlcaide
MarioAlcaide earned 83 total points
ID: 35006749
The following link will be very useful for you:

http://www.dba-oracle.com/art_otn_auto_tuning_10g.htm

However in Oracle 11g you can use the new parameter MEMORY_TARGET
0
 
LVL 77

Assisted Solution

by:slightwv (䄆 Netminder)
slightwv (䄆 Netminder) earned 167 total points
ID: 35006820
In addition of the information above I would suggest the online docs.

http://download.oracle.com/docs/cd/E11882_01/server.112/e16508/cncptdba.htm#CNCPT837

The parameters you provided starting with an '_' are dynamic and should not be manually adjusted.

Starting with 11g, for Automatic Memory Management you only need two parameters:  MEMORY_MAX_TARGET and MEMORY_TARGET.  All other memory related values should be set to 0.
0
 

Author Comment

by:KamalAgnihotri
ID: 35008283
Hi Mario/Slight,

I read the two documents. They are good but, I can not apply any thing from those to my situation.
question is, with 40GB memory, how can I be sure that components like paging space, sga size, pga size etc are optimal. Below is the output of V$pgastat.
select name, value from v$pgastat;
NAME                                                VALUE
----------------------------------------       ----------------
aggregate PGA target parameter              2,080,374,784
aggregate PGA auto target                        1,505,581,056
global memory bound                                    208,035,840
total PGA inuse                                             407,623,680
total PGA allocated                                       740,851,712
maximum PGA allocated                            1,248,052,224
total freeable PGA memory                           294,256,640
process count                                                              53
max processes count                                                  57
PGA memory freed back to OS                2,464,022,528
total PGA used for auto workareas                            0
maximum PGA used for auto workareas    456,233,984
total PGA used for manual workareas                        0
maximum PGA used for manual workareas                 0
over allocation count                                                    0
bytes processed                                     7,814,804,480
extra bytes read/written                          2,638,743,552
cache hit percentage                                                 75
recompute count (total)                                        7,422

19 rows selected.

Sincerely,

Kamal Agnihotri
 
0
Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 77

Expert Comment

by:slightwv (䄆 Netminder)
ID: 35009345
>>are optimal.

We cannot answer that for you.  There is no magic setting that works for everyone.  You need to look at the server, the database and the apps that use the database.

Tuning for a high throughput OLTP database is different from a DSS/Datawarehouse.

The rule is: Give Oracle as much of the available memory as possible where nothing swaps to disk.

The values form the views don't help much.  It's the spfile parameters and how you have it set up that drives everything.

As I said in the previous post:  if you unset all memory related parameters in the spfile and set the two mentioned, you're done.  Oracle will take care of the rest.

You then monitor performance and see if you need to override some of Oracle's management of memory.
0
 

Author Comment

by:KamalAgnihotri
ID: 35012691
I guess you are refering to MEMORY_MAX_TARGET and MEMORY_TARGET
So for a server that has 40GB memory, what should be allocated to MEMORY_MAX_TARGET  and how much to MEMORY_TARGET

Sincerely,

Kamal Agnihotri
0
 
LVL 4

Expert Comment

by:MarioAlcaide
ID: 35012747
Kamal: that depends on your server load, but in general you could reserve 35Gb to your MEMORY_MAX_TARGET, and 25 Gb to MEMORY_TARGET.

But that depends on what other process are running on your server etc.
0
 
LVL 77

Accepted Solution

by:
slightwv (䄆 Netminder) earned 167 total points
ID: 35013161
>>So for a server that has 40GB memory, what should be allocated to MEMORY_MAX_TARGET  and how much to MEMORY_TARGET

Again, we cannot answer that.  If you have 1000 dedicated server connections in an OLTP system, the server processes will use a lot of memory.

3 dedicated server connections use a lot less.

You need to look at what is considered 'normal' for your system.  Look at memory usage.  If you have a lot free, give it to Oracle and monitor to ensure you don't swap to disk.

The 35G suggestion above might be OK.  I might go with 30G for MAX and 20 for Target but I don't know your system.  Those numbers could be WAY OFF.

Target can be changed dynamically if it is off.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Working with Network Access Control Lists in Oracle 11g (part 1) Part 2: http://www.e-e.com/A_9074.html So, you upgraded to a shiny new 11g database and all of a sudden every program that used UTL_MAIL, UTL_SMTP, UTL_TCP, UTL_HTTP or any oth…
How to Unravel a Tricky Query Introduction If you browse through the Oracle zones or any of the other database-related zones you'll come across some complicated solutions and sometimes you'll just have to wonder how anyone came up with them.  …
This video shows how to copy a database user from one database to another user DBMS_METADATA.  It also shows how to copy a user's permissions and discusses password hash differences between Oracle 10g and 11g.
This video shows how to configure and send email from and Oracle database using both UTL_SMTP and UTL_MAIL, as well as comparing UTL_SMTP to a manual SMTP conversation with a mail server.

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question