{"id":6457,"date":"2018-12-13T11:50:46","date_gmt":"2018-12-13T11:50:46","guid":{"rendered":"https:\/\/dbtut.com\/?p=6457"},"modified":"2018-12-13T14:47:26","modified_gmt":"2018-12-13T14:47:26","slug":"how-to-restore-rac-database-from-rman-backup","status":"publish","type":"post","link":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/","title":{"rendered":"How To Restore RAC Database From rman backup"},"content":{"rendered":"<p>&nbsp;<\/p>\n<div>\n<div>\n<div>\n<div>\n<div>\n<div><\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<div>\n<div>\n<div>\n<div>\n<div>When a database completely crashes, you need to do is to setup from scratch and return from backup.<\/div>\n<div>If you have a Rman backup and archive log backups, and if you can access redo log files, you can return to the last moment.<\/div>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n<p>If you can recover the redologs, you can do a complete recovery. Otherwise it is incomplete recovery. This also means there is data loss. Because all processes are not recovered.<\/p>\n<p>First, we will install Oracle RDBMS and Grid infrastructure. If the ASM intance is accessible, the disk group is ready and the Oracle binary is already installed, we can start installation.<\/p>\n<p>Let us assume that the database we will create is 2-node rac and the name ORCL. Suppose the DBID of our previous database is 1039438773. You can learn DBID information by connecting to rman.\u00a0 This information is also available in v$database view. Suppose we have already learned DBID information in some way. Even if you haven&#8217;t, you can find this information in old backup logs.<\/p>\n<p>The first process is to create the necessary directories in ASM disk groups.<\/p>\n<pre class=\"lang:default decode:true \">[oracle@db01 ~]$ . oraenv\r\nORACLE_SID = [ORCL1] ? +ASM1\r\nThe Oracle base remains unchanged with value \/u01\/app\/oracle\r\n[oracle@db01 ~]$ asmcmd\r\n\r\nASMCMD&gt; cd DATA\r\nASMCMD&gt; mkdir ORCL\r\nASMCMD&gt; cd ORCL\r\nASMCMD&gt; mkdir CONTROLFILE\r\nASMCMD&gt; mkdir DATAFILE\r\nASMCMD&gt; mkdir ONLINELOG\r\nASMCMD&gt; cd ..\r\nASMCMD&gt; ls\r\nDATA\/\r\nRECO\/\r\nASMCMD&gt; cd RECO\r\nASMCMD&gt; mkdir ORCL\r\nASMCMD&gt; cd ORCL\r\nASMCMD&gt; mkdir CONTROLFILE\r\nASMCMD&gt; mkdir ONLINELOG\r\nASMCMD&gt; mkdir ARCHIVELOG<\/pre>\n<p>&nbsp;<\/p>\n<p>The directory specified by the audit_file_dest parameter in the file system must be created on all nodes.<\/p>\n<pre class=\"lang:default decode:true \">[root@db01 ~]# mkdir -p \/u01\/app\/oracle\/admin\/ORCL\/adump\r\n[root@db02 ~]# mkdir -p \/u01\/app\/oracle\/admin\/ORCL\/adump<\/pre>\n<p>&nbsp;<\/p>\n<p>The next step is to create our pfile file or copy it from the backup to the corresponding directory ($ ORACLE_HOME \/ dbs). If you have Autobackup, you can also return your spfile file from autobackup.<\/p>\n<pre class=\"lang:default decode:true \">RMAN&gt; RESTORE SPFILE FROM '\/backup_files\/c-1039438773-20160405-01';<\/pre>\n<p>&nbsp;<\/p>\n<p>If you do not have a backup, you can create a pfile as below and register it with the name initORCL1.ora (init{SID}.ora).<\/p>\n<pre class=\"lang:default decode:true \">*.aq_tm_processes=2\r\n*.audit_file_dest='\/u01\/app\/oracle\/admin\/ORCL\/adump'\r\n*.audit_trail='db'\r\n*.cluster_database=true\r\n*.cluster_database_instances=2\r\n*.compatible='11.2.0.4.0'\r\n*.control_files='+DATA\/ORCL\/controlfile\/current.1842.908572993','+RECO\/ORCL\/controlfile\/current.21318.908572995'\r\n*.db_block_size=8192\r\n*.db_create_file_dest='+DATA'\r\n*.db_create_online_log_dest_1='+DATA'\r\n*.db_files=300\r\n*.db_name='ORCL'\r\n*.db_recovery_file_dest='+RECO'\r\n*.db_recovery_file_dest_size=3221225472000\r\n*.db_unique_name='ORCL'\r\n*.diagnostic_dest='\/u01\/app\/oracle'\r\n*.dispatchers='(PROTOCOL=TCP) (SERVICE=ORCLXDB)'\r\nORCL2.instance_number=2\r\nORCL1.instance_number=1\r\n*.job_queue_processes=1000\r\nORCL1.local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.225.16)(PORT=1521))))'\r\nORCL2.local_listener='(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=172.16.225.14)(PORT=1521))))'\r\n*.log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST'\r\n*.memory_max_target=20G\r\n*.memory_target=20G\r\n*.open_cursors=300\r\n*.processes=5000\r\n*.remote_listener='orcl-scan:1521'\r\n*.remote_login_passwordfile='exclusive'\r\n*.sessions=5505\r\n*.shared_servers=0\r\nORCL2.thread=2\r\nORCL1.thread=1\r\n*.undo_retention=1440\r\nORCL2.undo_tablespace='UNDOTBS2'\r\nORCL1.undo_tablespace='UNDOTBS1'<\/pre>\n<p>&nbsp;<\/p>\n<p>If the disk group we want to restore the database is different from the disk group where the old database is located, the following lines must be in the pfile.<\/p>\n<pre class=\"lang:default decode:true \">*.log_file_name_convert='+OLD_DATA','+NEW_DATA','+OLD_RECO','+NEW_RECO'\r\n*.db_file_name_convert='+OLD_DATA','+NEW_DATA'<\/pre>\n<p>&nbsp;<\/p>\n<p>We start the instance with pfile which we have created or restored.<\/p>\n<p>We set variables before. You can add variables to \/home\/oracle\/.bash_profile.<\/p>\n<p>Or you can add the following line to \/etc\/oratab and set it with oraenv.<\/p>\n<p><strong>\/etc\/oratab content:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">\u00a0ORCL1:\/u01\/app\/oracle\/product\/11.2.0.4\/dbhome_1:N<\/pre>\n<p>&nbsp;<\/p>\n<p>After adding this line, we can set all variables with oraaenv.<\/p>\n<pre class=\"lang:default decode:true \">[oracle@db01 ~]$ . oraenv\r\nORACLE_SID = [+ASM1] ? ORCL1\r\nThe Oracle base remains unchanged with value \/u01\/app\/oracle<\/pre>\n<p>&nbsp;<\/p>\n<p>Now we can run sqlplus.<\/p>\n<pre class=\"lang:default decode:true \">[oracle@db01 ~]$ sqlplus \/ as sysdba\r\n\r\nSQL*Plus: Release 11.2.0.4.0 Production on Fri Sep 30 15:20:57 2016\r\n\r\nCopyright (c) 1982, 2011, Oracle. All rights reserved.\r\n\r\nConnected to an idle instance.<\/pre>\n<p>&nbsp;<\/p>\n<p>Let&#8217;s start Instance from the pfile file we created.<\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; startup nomount pfile='\/backup_files\/pfile_ORCL.ora';<\/pre>\n<p>&nbsp;<\/p>\n<p>Then, we restore the control file with rman.<\/p>\n<pre class=\"lang:default decode:true \">RMAN&gt; RESTORE CONTROLFILE from '\/backup_files\/c-1039438773-20160405-01';\r\n\r\nStarting restore at 08-APR-16\r\nusing target database control file instead of recovery catalog\r\nallocated channel: ORA_DISK_1\r\nchannel ORA_DISK_1: SID=4084 instance=ORCL1 device type=DISK\r\n\r\nchannel ORA_DISK_1: restoring control file\r\nchannel ORA_DISK_1: restore complete, elapsed time: 00:00:08\r\noutput file name=+DATA\/orcl\/controlfile\/current.1862.908626333\r\noutput file name=+RECO\/orcl\/controlfile\/current.22252.908626335\r\nFinished restore at 08-APR-16<\/pre>\n<p>&nbsp;<\/p>\n<p>Let&#8217;s add the control file files to the pfile file that we created and restart the instance.<\/p>\n<p>The row of the control file in the new pfile:<\/p>\n<pre class=\"lang:default decode:true \">*.control_files='+DATA\/orcl\/controlfile\/current.1862.908626333','+RECO\/orcl\/controlfile\/current.22252.908626335'<\/pre>\n<p>&nbsp;<\/p>\n<p>After the change, close the instance and reopen it as above.<\/p>\n<p>If the directory in which we copy the backups to restore is different from the paths in the control file, it is necessary to perform catalog operation from rman while in mount mode.<\/p>\n<p><strong>Catalog operation with rman in mount mode:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; startup mount pfile='\/backup_files\/pfile_ORCL.ora';<\/pre>\n<p>&nbsp;<\/p>\n<p>With the command below, we make sure that the backups in the backup_files file are scanned and written to the control file.(this is catalog operation)<\/p>\n<pre class=\"lang:default decode:true \">RMAN&gt; catalog start with '\/backup_files\/';<\/pre>\n<p>&nbsp;<\/p>\n<p>While our database is in nomount mode, we start the restore and recover operations with the following script. With the &#8220;set until time&#8221; command, we are restoring to the point we specified. If you do not specify it, it will try to restore it until the last moment.<\/p>\n<p>Create a file named\u00a0restore_recover.sh with the following content and give the necessary permissions(755).<\/p>\n<p>We will run this file as follows.<\/p>\n<pre class=\"lang:default decode:true\">\/path_to_script\/restore_recover.sh<\/pre>\n<p>&nbsp;<\/p>\n<p>If a different disk group is used, the names of the datafile must be changed and switch database operation is required before recover. The &#8220;set newname&#8221; command must be run for all datafiles. In this case, restore_recover.sh should be as follows.<\/p>\n<pre class=\"lang:default decode:true \">rman &lt;&lt; EOF\r\nconnect target \/\r\nrun\r\n{\r\nset DBID=1039438773;\r\nsql 'alter database mount';\r\nset newname for datafile 1 to '+YENI_DATA';\r\nset newname for datafile 2 to '+YENI_DATA';\r\nset newname for datafile 3 to '+YENI_DATA';\r\nset newname for datafile 4 to '+YENI_DATA';\r\nset newname for datafile 5 to '+YENI_DATA';\r\nset newname for datafile 6 to '+YENI_DATA';\r\nset newname for datafile 7 to '+YENI_DATA';\r\nset newname for datafile 8 to '+YENI_DATA';\r\nset newname for datafile 9 to '+YENI_DATA';\r\nset newname for datafile 10 to '+YENI_DATA';\r\nset newname for datafile 11 to '+YENI_DATA';\r\nset newname for datafile 12 to '+YENI_DATA';\r\nrestore database;\r\nrestore archivelog all;\r\nswitch database to copy;\r\nset until time \"to_date('2016-04-06:00:00:00','yyyy-mm-dd:hh24:mi:ss')\";\r\nrecover database;\r\n}\r\nEOF<\/pre>\n<p>&nbsp;<\/p>\n<p>If the disk group name is the same as before, the content of the restore_recover.sh file should be as follows.<\/p>\n<pre class=\"lang:default decode:true \">rman &lt;&lt; EOF\r\nconnect target \/\r\nrun\r\n{\r\nset DBID=1039438773;\r\nsql 'alter database mount';\r\nrestore database;\r\nrestore archivelog all;\r\nset until time \"to_date('2016-04-06:00:00:00','yyyy-mm-dd:hh24:mi:ss')\";\r\nrecover database;\r\n}\r\nEOF<\/pre>\n<p>&nbsp;<\/p>\n<p>When the processes are finished, the database and archive logs will be restored and recover will be done. After that, redo logs must also be processed.<\/p>\n<p>We are connecting with sql plus for processing redo logs.<\/p>\n<p>Because the redo logs that are used for all instances in RAC databases are connected, it will request the redologs that are needed to perform complete recovery when you run the following command.<\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; recover database using backup controlfile until cancel;<\/pre>\n<p>After the line specified by &#8220;Specify log:&#8221;, you must specify the corresponding redo log. The &#8220;Log applied&#8221; result is returned when all the required redo logs are recovered.<\/p>\n<p>You can find the entire script below.<\/p>\n<pre class=\"lang:default decode:true\">[oracle@db01 ]$ sqlplus \/ as sysdba\r\n\r\nSQL*Plus: Release 11.2.0.4.0 Production on Fri Apr 8 14:07:29 2016\r\n\r\nCopyright (c) 1982, 2011, Oracle. All rights reserved.\r\n\r\n\r\nConnected to:\r\nOracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production\r\nWith the Partitioning, Real Application Clusters, Automatic Storage Management, OLAP,\r\nData Mining and Real Application Testing options\r\n\r\n\r\nSQL&gt; recover database using backup controlfile until cancel;\r\nORA-00279: change 562385338311 generated at 04\/05\/2016 17:44:09 needed for\r\nthread 1\r\nORA-00289: suggestion : +RECO\r\nORA-00280: change 562385338311 for thread 1 is in sequence #1607\r\n\r\n\r\nSpecify log: {&lt;RET&gt;=suggested | filename | AUTO | CANCEL}\r\n\/backup_files\/ONLINELOG\/group_12.11832.858521665\r\nORA-00279: change 562385338311 generated at needed for thread 2\r\n\r\n\r\nSpecify log: {&lt;RET&gt;=suggested | filename | AUTO | CANCEL}\r\n\/backup_files\/ONLINELOG\/group_22.2629.858521677\r\nLog applied.\r\nMedia recovery complete.<\/pre>\n<p>&nbsp;<\/p>\n<p>So we have completed a complete recovery. In this case, we can open our database directly.<\/p>\n<pre class=\"lang:default decode:true \">RMAN&gt; alter database open;<\/pre>\n<p>&nbsp;<\/p>\n<p>Otherwise we need to open it by specifying resetlogs.<\/p>\n<pre class=\"lang:default decode:true \">RMAN&gt; alter database open resetlogs;\r\n\r\ndatabase opened<\/pre>\n<p>&nbsp;<\/p>\n<p>Since our database has been opened, we can begin operations after restore.<\/p>\n<p><strong>First, create the spfile from the pfile:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; create spfile='+DATA\/ORCL\/spfileORCL.ora' from pfile='\/backup_files\/pfile_ORCL.ora';<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Change the contents of the pfile (initORCL1.ora) under the $ORACLE_HOME\/dbs directory as follows:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SPFILE='+DATA\/ORCL\/spfileORCL.ora'<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Set a password for the SYS user:<\/strong><\/p>\n<pre class=\"lang:default decode:true\">SQL&gt; alter user sys identified by your_sys_password;<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Create Orapw file:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">[oracle@db01 ~]$ cd $ORACLE_HOME\/dbs\r\n[oracle@db01 ~]$ orapwd file=orapwORCL1 password=Welcome1 entries=5<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>If necessary, add new members to the redo log groups:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 1;\r\nSQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 2;\r\nSQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 3;<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>If you have not set the local_listener and remote_listener parameters, set it:<\/strong><\/p>\n<p>We created this information for all nodes when creating pfile.<\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; show parameter listener\r\n\r\nNAME TYPE VALUE\r\n------------------------------------ ----------- ------------------------------\r\nlistener_networks string\r\nlocal_listener string (DESCRIPTION=(ADDRESS_LIST=(AD\r\nDRESS=(PROTOCOL=TCP)(HOST=172.\r\n16.225.16)(PORT=1521))))\r\nremote_listener string orcl-scan:1521<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Let&#8217;s add the new database and instances to CRS:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">[oracle@db01 ]$ srvctl add database -d ORCL -o \/u01\/app\/oracle\/product\/11.2.0.4\/dbhome_1 -p '+DATA\/ORCL\/spfileORCL.ora' -n ORCL\r\n[oracle@db01 ]$ srvctl add instance -d ORCL -i ORCL1 -n db01\r\n[oracle@db01 ]$ srvctl add instance -d ORCL -i ORCL2 -n db02<\/pre>\n<p>&nbsp;<\/p>\n<p>After copying the necessary files to the second node and creating a second undo tablespace, we can start instance on that node.<\/p>\n<p><strong>Files to copy:<\/strong><\/p>\n<pre class=\"lang:default decode:true \">db01:$ORACLE_HOME\/dbs\/initORCL1.ora --&gt; db02:$ORACLE_HOME\/dbs\/initORCL2.ora\r\ndb01:$ORACLE_HOME\/dbs\/orapwORCL1 --&gt; db02:$ORACLE_HOME\/dbs\/orapwORCL2<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>The creation of the undo tablespace for the second node:<\/strong><\/p>\n<pre class=\"lang:default decode:true\">CREATE UNDO TABLESPACE UNDOTBS2 DATAFILE \r\n'+DATA' SIZE 10G AUTOEXTEND ON NEXT 5M MAXSIZE UNLIMITED\r\nONLINE\r\nRETENTION NOGUARANTEE\r\nBLOCKSIZE 8K\r\nFLASHBACK ON;<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>Creating a redo log group for the second node and adding a new member:<\/strong><\/p>\n<p>The size should be the same as that created for the other instance. Group numbers must be different from those created for the other instance.<\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 4 '+DATA' SIZE 500m;\r\n\r\nDatabase altered.\r\n\r\nSQL&gt; ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 5 '+DATA' SIZE 500m;\r\n\r\nDatabase altered.\r\n\r\nSQL&gt; ALTER DATABASE ADD LOGFILE THREAD 2 GROUP 6 '+DATA' SIZE 500m;\r\n\r\nDatabase altered.\r\n\r\nSQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 4;\r\n\r\nDatabase altered.\r\n\r\nSQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 5;\r\n\r\nDatabase altered.\r\n\r\nSQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+RECO' TO GROUP 6;\r\n\r\nDatabase altered.<\/pre>\n<p>&nbsp;<\/p>\n<p>At this stage, we can close the database and open it with srvctl in all instances.<\/p>\n<pre class=\"lang:default decode:true \">SQL&gt; shu immediate<\/pre>\n<pre class=\"lang:default decode:true\">[oracle@db01 ]$ srvctl start database -d ORCL\r\n[oracle@db01 ]$ srvctl status database -d ORCL\r\nInstance ORCL1 is running on node db01\r\nInstance ORCL2 is running on node db01<\/pre>\n<p>Now, our RAC database is open and runs on 2 nodes.<\/p>\n\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_6457\" class=\"pvc_stats all  \" data-element-id=\"6457\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; When a database completely crashes, you need to do is to setup from scratch and return from backup. If you have a Rman backup and archive log backups, and if you can access redo log files, you can return to the last moment. If you can recover the redologs, you can do a complete &hellip;<\/p>\n<div class=\"pvc_clear\"><\/div>\n<p id=\"pvc_stats_6457\" class=\"pvc_stats all  \" data-element-id=\"6457\" style=\"\"><i class=\"pvc-stats-icon medium\" aria-hidden=\"true\"><svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"far\" data-icon=\"chart-bar\" role=\"img\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewBox=\"0 0 512 512\" class=\"svg-inline--fa fa-chart-bar fa-w-16 fa-2x\"><path fill=\"currentColor\" d=\"M396.8 352h22.4c6.4 0 12.8-6.4 12.8-12.8V108.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v230.4c0 6.4 6.4 12.8 12.8 12.8zm-192 0h22.4c6.4 0 12.8-6.4 12.8-12.8V140.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v198.4c0 6.4 6.4 12.8 12.8 12.8zm96 0h22.4c6.4 0 12.8-6.4 12.8-12.8V204.8c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v134.4c0 6.4 6.4 12.8 12.8 12.8zM496 400H48V80c0-8.84-7.16-16-16-16H16C7.16 64 0 71.16 0 80v336c0 17.67 14.33 32 32 32h464c8.84 0 16-7.16 16-16v-16c0-8.84-7.16-16-16-16zm-387.2-48h22.4c6.4 0 12.8-6.4 12.8-12.8v-70.4c0-6.4-6.4-12.8-12.8-12.8h-22.4c-6.4 0-12.8 6.4-12.8 12.8v70.4c0 6.4 6.4 12.8 12.8 12.8z\" class=\"\"><\/path><\/svg><\/i> <img loading=\"lazy\" decoding=\"async\" width=\"16\" height=\"16\" alt=\"Loading\" src=\"https:\/\/dbtut.com\/wp-content\/plugins\/page-views-count\/ajax-loader-2x.gif\" border=0 \/><\/p>\n<div class=\"pvc_clear\"><\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_uf_show_specific_survey":0,"_uf_disable_surveys":false,"footnotes":""},"categories":[4],"tags":[],"class_list":["post-6457","post","type-post","status-publish","format-standard","","category-oracle"],"aioseo_notices":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How To Restore RAC Database From rman backup - Database Tutorials<\/title>\n<meta name=\"description\" content=\"How To Restore RAC Database From rman backup\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How To Restore RAC Database From rman backup - Database Tutorials\" \/>\n<meta property=\"og:description\" content=\"How To Restore RAC Database From rman backup\" \/>\n<meta property=\"og:url\" content=\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\" \/>\n<meta property=\"og:site_name\" content=\"Database Tutorials\" \/>\n<meta property=\"article:published_time\" content=\"2018-12-13T11:50:46+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2018-12-13T14:47:26+00:00\" \/>\n<meta name=\"author\" content=\"dbtut\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"dbtut\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\"},\"author\":{\"name\":\"dbtut\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/fc047c39e1e53dce28fc4253529ea408\"},\"headline\":\"How To Restore RAC Database From rman backup\",\"datePublished\":\"2018-12-13T11:50:46+00:00\",\"dateModified\":\"2018-12-13T14:47:26+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\"},\"wordCount\":966,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"articleSection\":[\"ORACLE\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\",\"url\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\",\"name\":\"How To Restore RAC Database From rman backup - Database Tutorials\",\"isPartOf\":{\"@id\":\"https:\/\/dbtut.com\/#website\"},\"datePublished\":\"2018-12-13T11:50:46+00:00\",\"dateModified\":\"2018-12-13T14:47:26+00:00\",\"description\":\"How To Restore RAC Database From rman backup\",\"breadcrumb\":{\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/dbtut.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How To Restore RAC Database From rman backup\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/dbtut.com\/#website\",\"url\":\"https:\/\/dbtut.com\/\",\"name\":\"Database Tutorials\",\"description\":\"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux\",\"publisher\":{\"@id\":\"https:\/\/dbtut.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/dbtut.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/dbtut.com\/#organization\",\"name\":\"dbtut\",\"url\":\"https:\/\/dbtut.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"contentUrl\":\"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg\",\"width\":223,\"height\":36,\"caption\":\"dbtut\"},\"image\":{\"@id\":\"https:\/\/dbtut.com\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/fc047c39e1e53dce28fc4253529ea408\",\"name\":\"dbtut\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/dbtut.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c322c32021bf651d9e103b183963c479a9c9791ead0715f4348203496c39aa54?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c322c32021bf651d9e103b183963c479a9c9791ead0715f4348203496c39aa54?s=96&d=mm&r=g\",\"caption\":\"dbtut\"},\"description\":\"We are a team with over 10 years of database management and BI experience. Our Expertises: Oracle, SQL Server, PostgreSQL, MySQL, MongoDB, Elasticsearch, Kibana, Grafana.\",\"sameAs\":[\"http:\/\/NurullahCAKIR\"],\"url\":\"https:\/\/dbtut.com\/index.php\/author\/dbtut\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How To Restore RAC Database From rman backup - Database Tutorials","description":"How To Restore RAC Database From rman backup","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/","og_locale":"en_US","og_type":"article","og_title":"How To Restore RAC Database From rman backup - Database Tutorials","og_description":"How To Restore RAC Database From rman backup","og_url":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/","og_site_name":"Database Tutorials","article_published_time":"2018-12-13T11:50:46+00:00","article_modified_time":"2018-12-13T14:47:26+00:00","author":"dbtut","twitter_card":"summary_large_image","twitter_misc":{"Written by":"dbtut","Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#article","isPartOf":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/"},"author":{"name":"dbtut","@id":"https:\/\/dbtut.com\/#\/schema\/person\/fc047c39e1e53dce28fc4253529ea408"},"headline":"How To Restore RAC Database From rman backup","datePublished":"2018-12-13T11:50:46+00:00","dateModified":"2018-12-13T14:47:26+00:00","mainEntityOfPage":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/"},"wordCount":966,"commentCount":0,"publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"articleSection":["ORACLE"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/","url":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/","name":"How To Restore RAC Database From rman backup - Database Tutorials","isPartOf":{"@id":"https:\/\/dbtut.com\/#website"},"datePublished":"2018-12-13T11:50:46+00:00","dateModified":"2018-12-13T14:47:26+00:00","description":"How To Restore RAC Database From rman backup","breadcrumb":{"@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/dbtut.com\/index.php\/2018\/12\/13\/how-to-restore-rac-database-from-rman-backup\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/dbtut.com\/"},{"@type":"ListItem","position":2,"name":"How To Restore RAC Database From rman backup"}]},{"@type":"WebSite","@id":"https:\/\/dbtut.com\/#website","url":"https:\/\/dbtut.com\/","name":"Database Tutorials","description":"MSSQL, Oracle, PostgreSQL, MySQL, MariaDB, DB2, Sybase, Teradata, Big Data, NOSQL, MongoDB, Couchbase, Cassandra, Windows, Linux","publisher":{"@id":"https:\/\/dbtut.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/dbtut.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/dbtut.com\/#organization","name":"dbtut","url":"https:\/\/dbtut.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/","url":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","contentUrl":"https:\/\/dbtut.com\/wp-content\/uploads\/2021\/02\/dbtutlogo.jpg","width":223,"height":36,"caption":"dbtut"},"image":{"@id":"https:\/\/dbtut.com\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/dbtut.com\/#\/schema\/person\/fc047c39e1e53dce28fc4253529ea408","name":"dbtut","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/dbtut.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c322c32021bf651d9e103b183963c479a9c9791ead0715f4348203496c39aa54?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c322c32021bf651d9e103b183963c479a9c9791ead0715f4348203496c39aa54?s=96&d=mm&r=g","caption":"dbtut"},"description":"We are a team with over 10 years of database management and BI experience. Our Expertises: Oracle, SQL Server, PostgreSQL, MySQL, MongoDB, Elasticsearch, Kibana, Grafana.","sameAs":["http:\/\/NurullahCAKIR"],"url":"https:\/\/dbtut.com\/index.php\/author\/dbtut\/"}]}},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/6457","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/comments?post=6457"}],"version-history":[{"count":0,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/posts\/6457\/revisions"}],"wp:attachment":[{"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/media?parent=6457"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/categories?post=6457"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dbtut.com\/index.php\/wp-json\/wp\/v2\/tags?post=6457"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}