1

I have a server having 90GB of RAM.

I have set MEMORY_TARGET to 60GB, because OEM showed me the following graph: Oem Memory Advice

Which tells that, if you set the parameter to the value of 60GB, the performance will be the maximum. After 60GB, performance does not change.

Now we want to migrate our server to the virtual machine and my sysadmins want me to say the minimum preferable value for RAM to be allocated for the new server.

For that I need determine the minimum preferable value for MEMORY_TARGET. How to calculate it?

3 Answers 3

0

This depends on many factors. The OEM advisor is not the smartest. Your minimum requirements will be somewhere between the minimum size that allows your database to start and what you have now.

Smart would be to check the size of the shared_pool components after the instance has been running a few days. Less memory will cause problems because allocations from the shared pool will fail and it causes a lot of additional parsing.

Next to that, add memory meant for caching database blocks. More blocks means more caching and most of the time this means a better performance. There is a point where adding more memory no longer improves the performance.

Most of the times this is below what the OEM memory advisor tries to make you believe. Don't forget that Oracle is also a hardware selling company ....

If performance is no issue, the minimum requirement is the size calculated for the shared pool plus a few megabytes. If performance is important add a few GB to that and monitor your applications performance.

0

The OEM is sampling your employee queries and advice about the running database system. But this is wise not suggestion when the system is not working enough.

You should not set the memory_target parameter. Memory_target is very bad for complex queries and high load databases. You can set pga and sga memory parameter. you can used to find optimal values, see v$pga_target_advice and v$sga_target_advice views.

0

I do not recommend using memory_target it has been the source of many performance regression even after Oracle 12.1.0.2 it was removed as the default configuration when installing the instance. However you can use ASMM by setting sga_target and you can monitor v$memory_resize_ops and v$memory_dynamic_components for better understanding of your memory allocation

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.