Oracle DB – vSphere Best Practices

OracleThese tables contains the most important best practices to deploy or optimize Oracle Databases on VMware vSphere:


Host ESXi

Best Practice




Create a computing environment optimized for vSphere ESXi host BIOS settings can be specifically adjusted to maximize compute resources to Oracle databases. This applies to each dimension of performance, compute, memory, networking and storage Check BIOS Settings table for detailed parameters


Create templates or golden images of configured and optimized operating systems using vSphere cloning technologies After the operating system has been prepared with the appropriate patches and kernel settings, Oracle can be installed in a VM the same way it is installed on a physical system. This accelerates the provisioning process of a new database servers Use VMware OS Optimization Tool to create the templates/golden images, check the post Free-Cool Recommended vTools
Also, use VMware vSphere Customization Specification to deploy each server


Upgrade to the latest version of ESXi and vSphere VMware and database administrators can realize a significant performance boost after upgrading to the latest vSphere release from prior versions. This applies to all dimensions of performance


Allow vSphere to choose the best VM monitor (VMM) based on the CPU and guest OS combination Confirm that the VM setting has Automatic selected for the CPU/MMU Virtualization option MMU refers to Memory Management Unit, wich is an attribute of either or both the OS and the physical processor


Verify that all hardware in the system is on the hardware compatibility list for the specific version of VMware software you will be running Verify that the hardware meets the minimum configuration supported by the VMware software installed VMware Compatibility Guide

BIOS Settings



Best Practice


Virtualization Technology Necessary to run 64-bit guest operating systems Yes


VT-x, AMD-V, EPT, RVI, VT-d, AMD-Vi Hardware-based virtualization support Yes


Node Interleaving Disables NUMA benefits if disabled No


Turbo Mode Balanced workload over unused cores Yes


Hyperthreading For use with some modern Intel processors. Hyperthreading is always recommended with Intel’s newer Core i7 processors Yes


Power Saving Disable if performance is more important than saving power No


Power Management Allow ESXi to control CPU power-saving features. OS Controlled Mode


Power Management Policy Prefer Performance over Power savings High Performance


C-States Disable Processor C-states for performance No


C1E Halt State Disable for performance No


Virus Warning Disables warning messages when writing to the master boot record No


Wake On LAN Required for VMware vSphere Distributed Power Management feature Yes


Execute Disable Required for VMware vSphere vMotion and VMware vSphere Distributed Resource Scheduler (DRS) features Yes


Video BIOS Cacheable Not necessary for database VM No


Video BIOS Shadowable Not necessary for database VM No


Video RAM Cacheable Not necessary for database VM No


On-Board Audio Not necessary for database VM No


On-Board Modem Not necessary for database VM No


On-Board Firewire Not necessary for database VM No


On-Board Serial Ports Not necessary for database VM No


On-Board Parallel Ports Not necessary for database VM No


On-Board Game Port Not necessary for database VM No


Best Practice




Set memory reservations equal or greater than the size of the Oracle SGA, the Oracle PGA , the Oracle Background processes stack space and OS Used Memory The memory reservation should be large enough to avoid swapping between ESXi and the host or the guest OS swapping to its page file. Oracle databases can be memory intensive Memory Reservation = SGA (SGA_MAX_SIZE) + 2XPGA_Aggregate_Target + 1.5Mb x (each background and foreground process) + (OS + Oracle_Home) executables + 15%


Use large memory pages Large page support is enabled by default in ESX 3.5 and later, and is supported from Oracle 9i R2 for Linux operating systems and 10g R2 for Windows. Enable large pages in the guest OS to improve the performance of Oracle databases on vSphere


Do not turn off ESXi memory management mechanisms unless directed by VMware support ESXi uses various memory management mechanisms to reclaim VM memory when under memory duress. Disabling it will lead to performance degradation and a possible crash


Best Practice




Use as few vCPUs as possible, but as meny as demand requires If monitoring of the actual workload shows that the Oracle database is not benefitting from the increased virtual CPUs, the excess vCPUs impose scheduling constraints and can degrade overall performance of the VM


Enable hyperthreading whenever applicable HT can increase overall CPU performance by as much as 30%


Keep default 1 core per socket for vNuma to match physical NUMA topology and try to align VMs with physical NUMA boundaries If vNUMA is different from the actual physical NUMA topology, it might result in NUMA imbalance and can degrade overall performance of the VM


Best Practice




For IP-based storage such iSCSI, NFS or FCoE, enable jumbo frames when 10Gb network cards are being used Jumbo frames should be enable ethernet frames to have a larger payload, allowing improved performance Ensure that each hop in the network chain has jumbo frames enabled as well as 10Gb bandwidth


Create dedicated datastores to service database workloads The creation of dedicated datastores for I/O-intensive databases is analogous to provisioning dedicated LUNs in the physical world. This is a typical design for a mission-critical enterprise workload This advise may not be necessary or possible in all modern storage arrays, but it is still a proper best practices approach to database storage design


Use VMFS for single-instance Oracle database deployments To balance performance and manageability in a virtual environment, deploy Oracle using VMFS


Align VMFS properly Like other disk-based file systems, VMFS suffers a penalty when the partition is unaligned. Use VMware vCenter to create VMFS partitions because it automatically aligns the partitions


Use Oracle Automatic Storage Management (ASM) Oracle ASM provides an integrated disk container system and volume management capabilities for managing Oracle database files. ASM simplifies database file creation while delivering near-raw device file system performance


Use your storage vendor’s best practices documentation when laying out the Oracle database Oracle ASM cannot determine the optimal data placement or LUN selection with respect to the underlying storage infrastructure. For that reason, Oracle ASM is not a substitute for close communication between the storage administrator and the DBA


Avoid silos when designing the storage architecture At a minimum, designing the optimized architecture should involve the DBA, storage administrator, network administrator, VMware administrator, and application owner


Use paravirtualized SCSI adapters for Oracle data files with demanding workloads The combination of the new paravirtualized SCSI driver (PVSCSI) and additional ESXi kernel-level storage stack optimizations dramatically improves storage I/O performance When minimizing latency is the main objetive, the use of th PVSCSI driver for the controller of the VMDKs containing the Oracle redo logs may not be optimal. The LSI SAS driver might be consider because the PVSCI driver despite reducing overall overhead may introduce minimal amount of extra latency


Separate I/O streams according to Oracle database storage layout Use a single controller for OS and swap, one controller for redo log files and one or more controllers for DB data files (depending on the amount and size of DB files)


Format redo logs and DB disk as Thick Eager Zeroed For best performance, format VMDK as eager zeroed thick for single-nodes


Best Practice




Use the VMXNET family of paravirtualized network adapters The paravirtualized network adapters in the VMXNET family implement an optimized network interface that passes network traffic between the VMs and the physical NICs with minimal overhead


Separate infrastructure traffic from VM traffic for security and isolation VMs should not see infrastructure traffic (security violation) and should not be impacted by infrastructure traffic bursts (for example, vMotion operations) Also, separate RAC interconnect traffic


Use NIC teaming for availability and load balancing NIC teams can share the load of traffic among some or all of its members, or provide passive failover in the event of a hardware failure or a network outage


Take advantage of Network I/O Control to converge network and storage traffic onto 10 GbE This can reduce cabling requirements, simplify management, and reduce cost


Use jumbro frames whenever employing 10Gb network cards Jumbo frames will take advantage of the capacity of the 10Gb cards. This can reduce cache fusion traffic thereby enhancing performance in Oracle RAC interconnect



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

Create a website or blog at

Up ↑

%d bloggers like this: