Author: George Dave
Being database administrator you must have found your Oracle database encountering some sort of severe instance failures, a disastrous disk failure or the frustrating server failure. However it is the responsibility of every Oracle database administrator to ensure the proper functionality of their databases by making sure that their Oracle databases are safe from major database failures.
In Oracle disaster recovery scenarios it sometimes becomes negligible to simulate a disastrous server failure. You can give a tremendous boost to your database performance by ensuring its recoverability from major hardware, server or instance failures.
Today we will discuss some tips that will help you simulate major Oracle Failures so as to determine the resistance of your database against these havocs. Remember you are simulating disastrous Oracle failures and therefore it is strongly recommended to run these options after taking a full backup.
Oracle Instance Failure:
The response time of every Oracle database will decline with the decline of server resources. Therefore it is your responsibility to determine the point at which you will experience declining response time.
Instance failure occurs when some problem prevents an instance from continuing work and the data in the buffers of the system global area is not written to the datafiles. At the instance level, Oracle database becomes dependent on the hardware environment when it becomes CPU-Bound, RAM-Bound , Network-Bound or I/O bound .
Instance failure can be recovered by instance recovery that is automatically performed by Oracle when the instance is restarted. The redo log recovers the committed data in the SGA's database buffers that was lost due to the instance failure.
You can simulate Oracle instance failure by imploding your Oracle database with high volume transactions. This will help you determine the exact point where your database fails with the transaction loads.
Oracle Server failure:
Oracle database encounters server failure when the server becomes overloaded with transactions and hence stops responding. You can simulate Oracle server failure submitting a recursive program to your server that will implode your Oracle server with transactions.
root> cat /tmp/crash_server.ksh
#!/bin/ksh
nohup /tmp/crash_server.ksh >/dev/null 2>&1 &
nohup /tmp/crash_server.ksh >/dev/null 2>&1 &
root> nohup /tmp/crash_server.ksh >/dev/null 2>&1 &
Oracle Disk Failure:
Oracle disk failure causes physical problem that prevents reading or writing physical files on disk. A common example of Oracle disk failures is a disk head crash which causes the loss of all files on a disk drive. Disk failure can be repaired with media recovery that restores a database's datafiles. Oracle database must be immediately shut down so as to avoid further transactions when a disk failure is encountered. After that effort should be made to restore the existing disk media. If your disk drive is not able to be saved from ruin then Shutdown Oracle, restore appropriate partitions in OS from the most recent backup tape and then restart Oracle.
This will make Oracle recognize the datafiles from the last successful backup. In some cases your application may crash due to outgrowth of Oracle database table or tablespace. In such scenarios you should review the error log so as to identify the table that has filled.
Oracle provides a number of options to completely or partially recover from all possible types of hardware failures including disk crashes. If most of the database is intact and operational but some datafiles are damaged in a disk failure then database can remain open and you can normally use the undamaged portions of a database until damaged portions are being recovered.
Below command can be used to simulate a scenario where the operating system deletes Oracle datafiles thus resulting in disastrous disk failure.
su - root
cd $ORACLE_BASE
rm -rf * Read Again!!
More Oracle Articles, Database Articles and DBA Tips
Database Security: Step by step guideline
DBA Tips for Shrinking Oracle Datafiles!!
Efficiently Tracing Oracle Sessions!!
Determining Oracle TEMP Size Usage!!
Great Tips on Table Recovery with RMAN Backup!!
|