Вы находитесь на странице: 1из 5

User Managed Hot Backups

select file#, status, recover, checkpoint_change#, checkpoint_time,


checkpoint_count from v$datafile_header;
select CONTROLFILE_CHANGE#, CHECKPOINT_CHANGE#, CURRENT_SCN
from v$database;

User Managed Hot Backups in Oracle


A cold backup does have the somewhat bad side effect of wiping out our shared pool, our
buffer cache and preventing our users from logging in to do work. Our database is like a car, it
runs better when it is warmed up. If we want to cold start it - be prepared for rough running
when we restart as we have to rebuild that shared pool, that buffer cache and so on. I would
never pick cold over hot given the chance. No benefit, only downsides (Acc. to Tkye). The only
kind of backup we do on our production systems here is hot.

There are two ways to perform Oracle backup and recovery:

1.) Recovery Manager (RMAN): It is an Oracle utility that can backup, restore, and recover
database files. It is a feature of the Oracle database server and does not require separate
installation.

2.) User-Managed backup and recovery: We use operating system commands for backups and
SQL*Plus for recovery. This method is called user-managed backup and recovery and is fully
supported by Oracle, although use of RMAN is highly recommended because it is more robust
and greatly simplifies administration.

There are basically two types of backup .The backup are as

1.) Consistent Backup: This is also known as Cold Backup. A consistent backup is one in which
the files being backed up contain all changes up to the same system change number (SCN). This
means that the files in the backup contain all the data taken from a same point in time.

2.) Inconsistent Backup: This is also known as Hot Backup. An inconsistent backup is a backup
in which the files being backed up do not contain all the changes made at all the SCNs. This can
occur because the datafiles are being modified as backups are being taken.
There are some DBAs which prefer oracle user-managed backups. They put their database into
backup mode prior to backing up and take it out of backup mode after backup. If we’re going to
perform user-managed backups, we must back up all of the following file:

 Datafiles
 Control files
 Online redo logs (if performing a cold backup)
 The parameter file (not mandatory )
 Archived redo logs
 Password file if used

The below diagram shows the Whole Database Backup Options:

A hot backup requires quite a bit more work than cold backup. Below are steps required for hot
backup?

Step 1 : Check the log mode of the database Whenever we go for hot backup then the
database must be in archivelog mode .

SQL> SELECT LOG_MODE FROM V$DATABASE;


LOG_MODE
---------------
ARCHIVELOG

Step 2 : Put the database into backup mode If we are using the oracle 10gR2 or later , then
we can put the entire database into backup mode and if we are using the oracle prior to 10gR2
,then we have to put each tablespace in backup mode . In my case , I am having 11gR2 .

SQL> alter database begin backup ;


Database altered.
In case of oracle prior to 10gR2 use the below command as
SQL> set echo off
SQL> set heading off
SQL> set feedback off
SQL> set termout off
SQL> spool backmode.sql
SQL> select 'alter tablespace '||name||' begin backup ;' "Tablespace in backup mode" from
v$tablespace;
SQL> spool off
SQL> @C:\backmode.sql

Step 3 : Backup all the datafiles Copy all the datafile using the operating system command
and Paste it on the desired backup location .Meanwhile,we can verify the status of the datafile
by using the v$backup view to check the status of the datafiles.

SQL> select * from v$backup ;


FILE# STATUS CHANGE# TIME
---------- ------------------ ---------- ---------
1 ACTIVE 3967181 03-APR-12
2 ACTIVE 3967187 03-APR-12
3 ACTIVE 3967193 03-APR-12
4 ACTIVE 3967199 03-APR-12
5 ACTIVE 3967205 03-APR-12
6 ACTIVE 3967211 03-APR-12
7 ACTIVE 3967217 03-APR-12
8 ACTIVE 3967223 03-APR-12
9 ACTIVE 3967229 03-APR-12

The Column STATUS=ACTIVE shows that the datafiles are in backup mode .
Step 4 : Take out the database from backup mode If we are using 10gR2 or above version of
oracle , we use the below command to take out the database from backup mode as

SQL> alter database end backup ;


Database Altered
If we are having version prior to 10gR2 , then we use the below command as above :
SQL> set echo off
SQL> set heading off
SQL> set feedback off
SQL> set termout off
SQL> spool end_mode.sql
SQL> select 'alter tablespace '||name||' end backup ;' "tablespace in backup mode" from
v$tablespace ;
SQL> spool off
SQL> @C:\endmode.sql

Step 5 : Switch the redolog file and backup archivelogs After taking the database out of Hot
Backup we must switch logfile (preferably more than once) and backup the archivelogs
generated .We may backup archivelogs while the database is in backup mode but we must also
backup the first archivelog(s) after the end backup. The best method to do both is to run the
SQL command alter system archive log current. This switches the logfile but does not return the
prompt until the previous redo log has been archived. We can run alter system switch logfile,
but then we won't be sure that the latest redo log has been archived before we move on to the
next step.

SQL> alter system archive log current ;


System altered.
SQL> /
System altered.
Now backup the archivelogs to the backup location .

Step 6 : Back up the control file Now , we can backup the controlfile as binary file and as
human readable .We should use both methods to back up the control file; either one may come
in handy at different times . The commands are as
(Human readable)

SQL> alter database backup controlfile to trace ; or


Database altered.
SQL> alter database backup controlfile to trace as '<backup location>' ;
Database altered.

(Binary format)
SQL> alter database backup controlfile to '<backup location>' ;
Database altered.

Step 7 : Backup the passwordfile and spfile We can backup the passwordfile and spfile though
it is not mandatory.

Some Points Worth Remembering

 We need to backup all the archived log files, these files are very important to do
recovery.
 It is advisable to backup all of tablespaces (except read-only tablespaces), else complete
recovery is not possible.
 Backup of online redo log files are not required, as the online log file has the end of
backup marker and would cause corruption if used in recovery.
 It is Preferable to start the hot backups at low activity time.
 When hot backups are in progress we "cannot" shutdown the database in NORMAL or
IMMEDIATE mode (and it is also not desirable to ABORT).

Вам также может понравиться