Posts

You know what? How to debug RMAN !!

Most of cases of RMAN might be critical situation except daily or regular backup operation. Ok let's look at when you need to use RMAN for restore or recover data from backup. We can guess that RMAN seems not doing anything but ..... you don't know the inside of RMAN command execution. Then there is a way to check it out. DEBUG or TRACE for RMAN process or command. Let's give it a go for it. First of all, there are 2 ways of generating log file from RMAN command. From RMAN prompt; RMAN> spool log to '/tmp/rman_logtest.log'; RMAN> "run-rman-command" RMAN> spool log off; From the command prompt; $ rman target catalog log=/tmp/rman_logtest.log RMAN> "run-rman-command" RMAN> exit; In cases of RMAN operation failure, debug trace is good to collect debugging information that can help troubleshoot the underlying causes. You can use below syntax to generate debug trace: $ rman taret / catalog debug trace=/tmp/rm

You know what? How to debug RMAN !!

Most of cases of RMAN might be critical situation except daily or regular backup operation. Ok let's look at when you need to use RMAN for restore or recover data from backup. We can guess that RMAN seems not doing anything but ..... you don't know the inside of RMAN command execution. Then there is a way to check it out. DEBUG or TRACE for RMAN process or command. Let's give it a go for it. First of all, there are 2 ways of generating log file from RMAN command. From RMAN prompt; RMAN> spool log to '/tmp/rman_logtest.log'; RMAN> "run-rman-command" RMAN> spool log off; From the command prompt; $ rman target catalog log=/tmp/rman_logtest.log RMAN> "run-rman-command" RMAN> exit; In cases of RMAN operation failure, debug trace is good to collect debugging information that can help troubleshoot the underlying causes. You can use below syntax to generate debug trace: $ rman taret / catalog debug trace=/tmp/rm

You know what " TRACE for EXPDP/IMPDP"

Sometimes DBA has been asked to take logical backup, we call export, and import to original schema or other scheam, to have same image of data. But it is not always wotking as we expected. And we need to find out what's wrong with EXPDP/IMPDP inside. Here is the thing you can try to get internal procedures of EXPDP/IMPDP 'TRACE = 480300' You will see trace files under background_dump_dest location, name like *dw00*.trc and *dm00*.trc. For example, dvtest2_dw00_2572.trc and dvtest2_dm00_2568.trc. On dvtest2_dw00_2572.trc , You can see all detail steps of impdp. Impdp will define internal table for import job . loading PUT_DDL for objects in order. Each object type completion is updated internally KUPW:06:43:01.095: 1: l_valid: -3 - Not Loading REUSE with type TABLESPACE KUPW:06:43:01.096: 1: l_valid : 1 - Loading EXPORT with type NULL KUPW:06:43:01.096: 1: l_valid : 1 - Loading PRETTY with type NULL KUPW:06:43:01.096: 1: l_valid : 1 - Loading SQLTERMINATOR

You know what? - DIAGWAIT

What dose mean the diagwait on RAC environment ? Oracle Clusterware evicts the node from the cluster when 1. Node is not pinging via the network heartbeat 2. Node is not pinging the Voting disk 3. Node is hung/busy and is unable to perform either of the earlier tasks In Most cases when the node is evicted, there is information written to the logs to analyze the cause of the node eviction. However in certain cases this may be missing, the steps documented in this note are to be used for those cases where there is not enough information or no information to diagnose the cause of the eviction. CAUSE When the node is evicted and the node is extremely busy in terms of CPU (or lack of it) it is possible that the OS did not get time to flush the logs/traces to the file system. It may be useful to set diagwait attribute to delay the node reboot to give additional time to the OS to write the traces. This setting will provide more time for diagnostic data to be collected by safely and will NOT i