What is HARD in Oracle Exadata?

Hardware Assisted Resilient Data (HARD)
  • HARD will prevent data corruptions from being written to storage disks.
  • Oracle database validates and add protection while sending data to the storage server.
  • Whenever data will go to storage server , first it will check if there is any data corruption. If it found the corrupted data , it would stops corrupted data from being written to disk.
  • Previously or in non-Exadata hardware it's not possible to prevent corrupted data to be written on to the storage and that was major reason for database corruption in many cases which Oracle has eliminated with the use of storage software which has been introduced in Exadata storage cell.
  • There is nothing to set on Database level or storage level as  HARD handle corruption transparently which also included for ASM rebalance.

Script to Find Hidden Parameters in Oracle

  x.ksppinm name,
  y.ksppstvl VALUE,
    1,   'BOOLEAN',
    2,   'STRING',
    3,   'INTEGER',
    4,   'PARAMETER FILE',
    5,   'RESERVED',
    6,   'BIG INTEGER',
    'UNKNOWN') typ,

Exadata Bundle Patch Bug on

One of our team member has shared resolution of bug while patching on Exadata storage server.

Below is the full story

System landscape:

Exadata Machine = Exadata 1/8th Rack X3-2 machine
Platform = Linux x86-64 
Product = Oracle Database 
Version = 

Here we are doing prechek to apply bundle patch on Exadata. ((Quarterly Full Stack Download Patch (QFSDP) Oct 2014)

Go to the patch directory and first execute cleanup to clean previous patch manager utility.

Here patch directory for storage cell is "/bpatch/19625719/Infrastructure/"

#./patchmgr -cells /root/cellgroup -cleanup                                                     
2014-12-06 12:01:05 +0800        :Working: DO: Cleanup ...
2014-12-06 12:01:45 +0800        :SUCCESS: DONE: Cleanup

Executing pre-check through patchmgr utility 

#./patchmgr -cells ~/cellgroup -patch_check_prereq -rolling

2014-12-06 12:09:47 +0800        :Working: DO: Initialize files, check space and state of cell services. Up to 1 minute ...
2014-12-06 12:10:24 +0800        :SUCCESS: DONE: Initialize files, check space and state of cell services.
2014-12-06 12:10:24 +0800        :Working: DO: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction. Up to 40 minutes ...
2014-12-06 12:10:38 +0800 Wait correction of degraded md11 due to md partner size mismatch. Up to 30 minutes.
2014-12-06 12:10:40 +0800        :SUCCESS: DONE: Copy, extract prerequisite check archive to cells. If required start md11 mismatched partner size correction.
2014-12-06 12:10:40 +0800        :Working: DO: Check prerequisites on all cells. Up to 2 minutes ...
2014-12-06 12:12:36 +0800        :SUCCESS: DONE: Check prerequisites on all cells.
2014-12-06 12:12:36 +0800        :Working: DO: Execute plugin check for Patch Check Prereq ...
2014-12-06 12:12:36 +0800 :INFO: Patchmgr plugin start: Prereq check for exposure to bug 17854520 v1.1. Details in logfile /bpatch/19625719/Infrastructure/
2014-12-06 12:12:36 +0800 :INFO: This plugin checks dbhomes across all nodes with oracle-user ssh equivalence, but only for those known to the local system. dbhomes that exist only on remote nodes must be checked manually.
2014-12-06 12:12:55 +0800 :WARNING: ACTION REQUIRED: Required fix for bug 17854520 not found in dbhome /u01/app/oracle/product/ on dbadm01. Install the fix before performing rolling cell patching.
2014-12-06 12:12:55 +0800 :WARNING: ACTION REQUIRED: Required fix for bug 17854520 not found in dbhome /u01/app/oracle/product/ on dbadm02. Install the fix before performing rolling cell patching.
2014-12-06 12:12:55 +0800 :WARNING: Patchmgr plugin complete: Prereq check failed - fix for bug 17854520 is required
2014-12-06 12:12:56 +0800        :FAILED: Details in files <cell_name>.log /bpatch/19625719/Infrastructure/, /bpatch/19625719/Infrastructure/
2014-12-06 12:12:56 +0800        :FAILED: DONE: Execute plugin check for Patch Check Prereq.
[ERROR] Patch prerequisite checks failed. Please run cleanup before retrying.

As per above output, pre-check has not been completed successfully and we need to apply bug fix 17854520 on Grid and RDBMS home.

Now let's do the exercise to resolve this issue.

Things To Do Before Applying Bundle Patch On Exadata

One of our reader asked us, what we should take care before applying the bundle patch on Exadata, so thought to write this article where we have mentioned some points based on our patching experience, we can say it's part of bundle patch pre-preparation.

Missing of single point can lead you to difficult stage which we can eliminate by planing better.

               "Always plan for worst to do the best"

  • Make sure that you have backup plan for Exadata box connectivity in case you are doing things remotely
  • Install VNC client on your workstation
  • Install VNC server on Exadata in case if you required GUI. You can also use Xmanager and Xming to take GUI from your workstation

How to install VNC Server on Oracle Exadata?

VNC is an excellent tool to connect GUI interface.

It also has an advantage of running task remotely and keep them alive even once your network connection to a remote VNC disconnected. 

This is a quite useful if you run some important GUI updates, which may take several hours and you do not want to kill this update simply by loosing a network connection which can be accessed by VNC viewer from our work station.

Exadata doesn't come with GUI configured so we can use third party tool to get GUI from Exadata or can configure VNC server on top of Database server.

To install and configure VNC-Server we have to install it separately as it is not a part of Oracle ACS team who do the Exadata initial setup.

Here we have given step by step guide to install and configure VNC-Server on Exadata.

There are multiple method to install VNC server like yum or manual RPM installation.

We have explained here VNC server installation with manual RPM installation.

Click on image to enlarge....

1. List of RPM with dependency which required to install VNC server.

Linux Server Performance Analyzer Utilities

If there is any Linux performance issue we mostly go to Google and find commands to analyze the performance but multiple time it's difficult to find it when we required some specific details so, we have tried here to place all the Linux performance utility which can help you to analyze the Linux server performance.

There are multiple utilities available to analyse Linux server. Which includes CPUs, Memory, I/O, disk, network analysis.

free Displays free and used memory.
iostat Displays disk I/O statistics.
netstat Reports on network statistics.
mpstat Reports CPU statistics.
vmstat Monitors processes, CPU, memory, or disk I/O bottlenecks.
ps Identifies highest CPU- and memory-consuming sessions. Used to identify Oracle
sar Displays CPU, memory, disk I/O, and network usage, both current and historical
top Identifies sessions consuming the most resources.
watch Periodically runs another command.
du Displays disk usage.
df Reports on free disk space.

                                              How to calculate IOPS in Exadata ?

Oracle Database In-Memory (DBIM)

Let's first understand why DBIM is revolutionized...

Generally Organization keeps different database for Reporting and Application Transaction because of the performance issues so whenever any transactions happen to the Application Transaction database it will immediately replicate to report database which help to get up date data while fetching report from the reporting database.

Business don't want to access same database for reporting and transaction because of the performance impact on single DB as mixed workload can slow the database and  that's why they prefer to keep separate database for both activity which gives overhead of h/w & s/w management, required more resources to handle both environment and ultimately it will  increase TCO at the end of day.

To overcome from this situation Oracle comes with DBIM (Database In Memory) which keeps frequently accessed data in memory to get faster response and decrease the response time by eliminating disk IO. It will store Database in storage only but it will store most accessible data in memory which gives faster response compare to read from disk. We can also influence object which we want to keep in memory.

Exadata Dictionary Views

Listed down some Exadata views which can help you to get Exadata related statistics

Get Cell Definition


Exadata cell effectiveness and statistics




Historical view of the types and frequencies of the requests being run by a cell.


Cell Performance Statistics


Display Exadata Cell Threads


Backup Related View


Useful Files in Solaris

Message log:  /var/adm/messages

Tape driver configuration file:  /kernel/drv/st.conf

Disk driver configuration file:  /kernel/drv/sd.conf

File defining filesystems to mount:  /etc/vfstab

Kernel configuration parameters:  /etc/system

Names and IP addr of machines:  /etc/hosts

Default Port Numbers:  /etc/services

                                    Analyze Linux Server Performance

How to check that database is running on Exadata?

All the DBA don't get chance to work on Exadata as only DMA would have access to the Exadata so , if you are a DBA and want to know that whether your database is running on Exadata or not than you can check with below query.

If this query gives the output >0 than database is running on Exadata.

SQL>select count(*) from (select distinct cell_name from gv$cell_state);


It means database is running on 1/8th Exadata as 3 tells you the number of cells available on database machine.

By executing "select distinct cell_name from gv$cell_state" you will get cell IP details.

How to change password of CISCO switch on Exadata ?

Login and telnet to cisco switch

$ telnet 

Enable command line for switch

telnet> enable

Prepare to configure switch

ciscoswitch-ip# configure terminal
exapsw-ip(config)#line vty 0 15

Change the password

exapsw-ip(config-line)#password newpassword

Save the changes to the switch

exapsw-ip#write memory
Building configuration…
Compressed configuration from 4001 bytes to 1608 bytes[OK]

Now try to login again with new password to verify the changed password

Password Aging in Linux

Disable Password Aging

#chage -M 99999 user_name

To get password expiration information

#chage -l user_name

To change aging

# chage -M 60 -m 7 -W 7 user_name


Minimum_days (M): The minimum number of days required between password changes i.e. the number of days left before the user is allowed to change his/her password.

Maximum_days(m): The maximum number of days the password is valid (after that user is forced to change his/her password).

Warn (W) : The number of days before password is to expire that user is warned that his/her password must be changed.

Oracle Exadata vs SAP HANA

We have provided some major difference between SAP HANA and Oracle Exadata. 

Even Exadata is not comparable with HANA than also we have tried to conclude it based on materials and documentation available in the market.

Oracle Exadata
SAP HANA is an in-Memory Appliance. SAP HANA is an in-Memory Appliance.
Oracle Exadata is based on Oracle servers, storage, networking, and software– all engineered and optimized to work together.

It’s meant for Mixed workloads, i.e OLTP,DW
SAP HANA and partner solutions powered by the SAP HANA in-memory software.

There are only a limited number of specialized SAP applications that run on HANA
We can use existing Oracle licences with Exadata If we move to HANA, it's required to buy new licences as existing licences would not be reused
Oracle Exadata is delivered pre-configured, pre-tested and pre-optimized, with all necessary software, storage, hardware,and interconnect to lower total cost of ownership and provide quick time to value.

Oracle Exadata is sold, delivered, and supported as a single-vendor solution with quick time-to-resolution.
SAP HANA relies on third-party compute, network,and storage vendors. Multiple points of support lead to longer downtimes and higher total cost of ownership.

No single vendor is accountable for the solution's service-level agreements and due to its complexity, HANA deployments typically require a significant amount of effort.
Exadata can be used for any type of workload for any application which is running with Oracle Database HANA is limited to SAP BW only. It doesn't support any other application
Exadata is capable for all type of workload so customer can consolidate multiple database on single machine. SAP HANA runs only single application. It doesn't support multiple workload as well non sap DBs
Exadata comes with built in security HANA don't have any encryption, auditing , compliance monitoring or any security certification
Oracle Exadata is enough smart to use RAM, Flash and Storage HANA puts everything on memory
Exadata is single vendor optimized machine HANA comes as an assemble hardware
Exadata is pre configured with HA and single point of hardware failure HANA has limited capabilities in backup and recovery area. Also there is no failover solution as well disaster recovery solution
We can use IORM and instance caging in Exadata to prioritize the I/Os. There is no features available to prioritize I/O in HANA
TCO is less compare to HANA TCO is high compare to Exadata
Only Exadata DBA is required to manage Exadata Multiple resource required to manage HANA
You can follow our Exadata Certification Question Bank to achieve maximum success in your Exadata certification.

Data Migration using Oracle Transportable Tablespace

Procedure to restore or migrate tablespace with the use of transportable tablespace.

There are two ways to moving tablespace/data to target system.
  • Same platform data migration - Move data to same OS or endian, big to big endian or little to little endian operating system
  • Cross platform data migration - Move data from little to big endian or big to little endian
If we are moving tablespace from little to big endian or big to little endian than we have to convert it to target endian platform which has been showed here in step-7.

If we are moving data to same endian platform operating system even to different OS than it's not required to use convert option.

List of operating system with endian format.

1 Solaris[tm] OE (32-bit) Big
2 Solaris[tm] OE (64-bit) Big
3 HP-UX (64-bit) Big
4 HP-UX IA (64-bit) Big
5 HP Tru64 UNIX Little
6 AIX-Based Systems (64-bit) Big
7 Microsoft Windows IA (32-bit) Little
8 Microsoft Windows IA (64-bit) Little
9 IBM zSeries Based Linux Big
10 Linux IA (32-bit) Little
11 Linux IA (64-bit) Little
12 Microsoft Windows 64-bit for AMD Little
13 Linux 64-bit for AMD Little
14 HP Open VMS Little
15 Apple Mac OS Big

Now let's see the demo to migrate tablespace. Here we have created "ttest" tablespace to show the demo.

How to calculate IOPS in Exadata ?

When we think to calculate IOPS , it seems very difficult task but it’s very easy to calculate in Exadata Storage. Let’s understand the procedure to calculate IOPS.

Well, first of all, execute the calibrate command on all available cell storage.

We are doing testing on Exadata Database Machine X3-2 1/8th rack. Same procedure can be followed on any configuration of Exadata.

Cell Server 1

CellCLI> calibrate force

Calibration will take a few minutes...
Aggregate random read throughput across all hard disk LUNs: 1521 MBPS
Aggregate random read throughput across all flash disk LUNs: 8048.46 MBPS
Aggregate random read IOs per second (IOPS) across all hard disk LUNs: 2380
Aggregate random read IOs per second (IOPS) across all flash disk LUNs: 113116
Controller read throughput: 1974.08 MBPS

Oracle EM12c Quick Reference

OEM 12c comes with many exciting features compare to OEM 11g. That's why there are many options in navigation pane and cloud control panel of OEM12c and It's very difficult to remember each of them.

Managing Exadata with OEM 12c

Many times it happens like we configure something and after sometime if we have to do the same activity then it's very difficult to remember the options from where we have configured earlier and the same effort we have to give even though we know how to do.

Here we have just given list of options available with navigation pane in OEM12c which will act as Quick Reference for EM12c. Hope this will help you.

Click on image to enlarge....

On OEM12c home page we get below navigation pane on top of the screen.

Navigation menu located at top of the left side screen.

It used for navigating the console. There are four menus in navigation pane as below.

Enterprise Menu

It is available to get the view of overall system.Options in Enterprise will give you wide options for monitoring and make it standardize.

Target Menu

It gives access to the configured targets.

Oracle ASR Logfile Location

Location of ASR log on ASR server



Oracle Exadata IORM

IORM is the great feature come with Exadata which gives us to control the resources for multiple databases as well as different workloads on same database . Just given overview regarding IORM.

IORM is the extension of DBRM. IORM does not directly improve efficiency of operation by reducing the amount of resources required but  I/O Resource Manager contributes to improved efficiency by ensuring that in a scenario where there is more demand for a resource than can be simultaneously supplied by the Exadata Storage Server, the most critical operations will deliver a consistent quality of service.

We can priorotize the storage I/O to the Database based on the criticality of the database. IORM deliver consistent performance quality. IORM guarantee that particular DB will get percentage of resources at any time.

When bandwidth is dividing in different workload in same database, it's called intradatabase resource management. In this case IORM does not come in the picture as whole resource utilization can be configured on compute node.

When bandwidth is dividing for different databases, it's called interdatabase IORM. In this scenario IORM need to be configured on cell level.

IORM Architecture:

Integrate Oracle Support with OEM12c

Procedure to integrate Oracle Support with OEM12c

1. First set the proxy if any, otherwise you can keep as it is like no proxy

Go to

Setup -> Proxy Settings -> My Oracle Support

Click to enlarge
Provide proxy settings:

Test the proxy setting:

Apply Proxy:

2. Apply your oracle credentials which you want to integrarte with EM

Oracle Block Change Tracking (BCT)

Block change tracking records the modified blocks since last backup and stores this logs in block change tracking file.

During backups,  RMAN uses this log file to identify the specific blocks (changed block) that must be backed up.

Benifits: BCT improves RMAN backup performance as it would not required to scan whole datafiles to detect changed blocks. It will only see the changed block through block change tracking files and take the back up that clock.

Whenever data blocks change, the Change Tracking Writer (CTWR) background process tracks the changed blocks in a private area of memory. 

When a commit is issued against the data block, the block change tracking information is copied to a shared area in Large Pool called the CTWR buffer.
During the checkpoint, the CTWR process writes the information from the CTWR RAM buffer to the block change-tracking file.

To see the status of BCT Status

How to change OEM 12c Agent Port ?

Whenever we install EM agent, it will use default port at time of installation on target host. If we need to modify the port then we can follow below steps to change the port number.

Stop the EM Agent

$ $AGENT_HOME/bin/emctl stop agent

Modify the $AGENT_HOME/sysman/config/emd.properties file in the EM Agent home directory:

For example:


Modify the <port number> in the EMD_URL property so the EM Agent uses a new unused port on the target host.


Start the EM Agent.

$ $AGENT_HOME/bin/emctl start agent

Check the EM status

Exadata Patching Strategy

Let's have an overview of Exadata Machine patching.
  1. Check latest patches available on Oracle note ID - 888828.1 
  2. Download the required patches
  3. Review the patch README file
  4. Make step by step plan to apply patch for all the component
  5. Run Exachk utility before the patch application, analyse the report and correct wherever it's required.
  6. Automate the patch application process based on rolling or non-rolling method
  7. Apply the patch

Oracle Exadata Interview Questions and Answers

Get serious about your next job..!!!
                                  It's time to be well prepared..!!

Based on our experience as an interviewer and interviewee, here we have consolidated some of the generic Exadata interview questions and answers.

For more Oracle Exadata Interview Questions & Answers you can go through below link.

Exadata is pre-configured combination of hardware and software which provides a platform to run the Oracle Database. 

  • What is Cell RAM cache?
Cell RAM cache is a cache in front of the Flash Cache on storage servers and is extension of the database cache. It is faster than the Flash Cache, but has smaller capacity.

  • Who will check RAM cache before accessing a lower layer in the IO stack like flash memory or hard disk ?

  • What is adaptive scrubbing?

Oracle Exadata System Software automatically inspects and repairs hard disks periodically when the hard disks are idle. The default schedule of scrubbing is every two weeks. 

  • In event of storage server failure how RAM cache works?
In the event of storage server failure on the primary mirror, the database sends the RAM cache population to the secondary mirror, so that the blocks are now cached in the RAM cache for the secondary mirror. When the primary mirror comes back to online state, the blocks are populated back in the primary mirror’s RAM cache. 
There are multiple reason to answer this question. You can go to this link for detailed answer

  • Key components of Exadata
DB Server
Cell Storage
Infiniband Switch
Cisco Switch
Smart Scan
Smart Flash Cache
Storage Index
EHCC (Exadata Hybrid Columnar Compression)

  • Exadata Sizing

Resource Control in Exadata

We can check enabled resources (CPUs, RAM) with below command on exadata.

Sample output from one storage cell of Exadata 1/8th Rack

[root@cell01 ~]# /opt/oracle.SupportTools/resourcecontrol -show

[INFO] Validated hardware and OS. Proceed.
[SHOW] Number of cores active per socket: 3
[SHOW] Number of harddisks active - 6.
[SHOW] Number of flashdisks active - 8.

1/8th Exadata Rack comes with same hardware as quarter rack, but only half of the resources would be enabled on each 1/8th storage cell So, if in future if we need to upgrade 1/8th rack to quarter rack then we can use this utility to enable rest all the resources.

Above example shows all the enabled resources on one storage cell.

Useful Oracle Exadata Metalink Notes

Thought to list down some Exadata Document metalink which you can keep as a reference for lifetime.

Doc IDDocument Description
888828.1Exadata Database Machine and Exadata Storage Server Supported Versions
1270094.1Exadata Critical Issues
1353073.1Exadata Diagnostics Collection Guide
1187674.1Master Note for Oracle Exadata Database Machine and Oracle Exadata Stororage Server
1483344.1Exadata Platinum Customer Outage Classifications and Restoration Action Plans
1571965.1Maximizing Availability with Engineered Systems - Exadata
1262380.1Exadata Testing Practices and Patching Explained
1306814.1Oracle Software Patching with OPLAN
1110675.1Oracle Exadata Database Machine Monitoring
1070954.1Database Machine Healthcheck (Exachk)
1094934.1Best Practices for Data Warehousing on the Database Machine
1269706.1Best Practices for OLTP Applications on the Database Machine
1071221.1Oracle Sun Database Machine Backup and Recovery Best Practices
1054431.1Configuring DBFS on Oracle Exadata Database Machine
1084360.1Bare Metal Restore Procedure for Compute Nodes on an Exadata Environment (Linux)
1339769.1Master Note for Oracle Database Resource Manager
960510.1Data Guard Transport Considerations on Oracle Database Machine
1551288.1Understanding ASM Capacity and Reservation of Free Space in Exadata
401749.1Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration
1009715.1Integrated Lights Out Manager (ILOM) CLI Quick Reference
1070954.1Oracle Exadata Database Machine exachk or HealthCheck
1317159.1Changing IP addresses on Exadata Database Machine
1244344.1Exadata Starter Kit
1537407.1Requirements and restrictions when using Oracle Database 12c on Exadata Database Machine
1551288.1Understanding ASM Capacity and Reservation of Free Space in Exadata
1459611.1How to Calculate Usable_FILE_MB / REQUIRED_MIRROR_FREE_MB
361468.1HugePages on Oracle Linux 64-bit
761868.1Oracle Exadata Diagnostic Information required for Disk Failures and some other Hardware issues
10386736Documentation for Exadata 11.2 & 12.1

You can follow  our   Exadata Certification Question   to   achieve   maximum success in your Exadata exam.

Exadata Monitoring Command

Additional monitoring commands which are required with usual DBA skill set on DB and CELL server.

Database Server

    Linux: top, mpstat, vmstat, iostat, fdisk, ustat, sar, sysinfo
    Exadata: dcli
    ASM: asmcmd, asmca
    Clusterware: crsctl, srvctl

Cell Server

    Linux: top, mpstat, vmstat, iostat, fdisk, ustat, sar, sysinfo
    Cell management: cellcli, cellsrvstat

                                    Exadata Monitoring Tools

Exadata OneCommand Utility Steps

  • Onecommand utility is used to configure the Exadata machine based on given information through OEDA by customer.
  • Also whatever steps are performed by oncecommand can be changed based on the customer's required configuration and environment.
  • All the steps runs sequentially and each step must be completed before execution of next step.
  • Steps can be run individually as well as in one shot with single command.
Below are the steps which need to be executed through onecommand utility. 

Step 0: Validate the environment.
Step 1: Create work directory
Step 2: Unzip files
Step 3: Setup SSH for the root user
Step 4: Update the /etc/hosts file
Step 5: Create the cellip.ora and cellinit.ora files
Step 6: Validate the InfiniBand network
Step 7: Update the cell software
Step 8: Validate the cells
Step 9: Check RDS using the ping command
Step 10: Run CALLIBRATE on the cells

Study Guide for 1Z0-027 Certification

Exadata Database Machine Overview
  • Identify the benefits of using Database Machine for different application classes
  • Describe the integration of the Database Machine with Oracle Database Clusterware and ASM
  • Describe Exadata Storage Server and the different Database Machine configurations
  • Describe the key capacity and performance specifications for Database Machine
  • Describe the key benefits associated with Database Machine
Exadata Database Machine Architecture
  • Describe the Database Machine network architecture
  • Describe the Database Machine software architecture
  • Describe the Exadata Storage Server storage entities and their relationships
  • Describe how multiple Database Machines can be interconnected
  • Describe site planning requirements for Database Machine
  • Describe network requirements for Database Machine
Key Capabilities of Exadata Database Machine
  • Describe the key capabilities of Exadata Database Machine
  • Describe the Exadata Smart Scan capabilities
  • Describe the capabilities of hybrid columnar compression
  • Describe the capabilities and uses of the Smart Flash Cache
  • Describe the capabilities of the Smart Flash Log
  • Describe the purpose and benefits of Storage Indexes
  • Describe the capabilities and uses of Exadata Secure Erase
Exadata Database Machine Initial Configuration