<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-375501959111286473</id><updated>2024-10-09T14:54:24.693-07:00</updated><title type='text'>Step 2 Oracle DBA</title><subtitle type='html'></subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>8</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-8962952889031783112</id><published>2012-11-08T06:44:00.003-08:00</published><updated>2012-11-08T06:44:28.910-08:00</updated><title type='text'>Automating AWR report Generation</title><content type='html'>Here is steps for awr report automization.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
=========AWR REPORT AUTOMIZATION===========&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
CREATE OR REPLACE PROCEDURE CreateAwrReports (begin_snap number,end_snap number, directory varchar2 ) as &lt;br /&gt;
      v_Instance_number v$instance.instance_number%TYPE;  &lt;br /&gt;
      v_Instance_name v$instance.instance_name%TYPE;  &lt;br /&gt;
      v_dbid V$database.dbid%TYPE;  &lt;br /&gt;
      v_file UTL_FILE.file_type;  &lt;br /&gt;
BEGIN &lt;br /&gt;
       SELECT instance_number, instance_name into v_Instance_number,v_Instance_name FROM   gv$instance ORDER BY 1;&lt;br /&gt;
       SELECT dbid  INTO v_dbid FROM v$database;&lt;br /&gt;
        EXECUTE IMMEDIATE(&#39;CREATE OR REPLACE DIRECTORY AWR_DIR AS &#39;&#39;&#39;||directory||&#39;&#39;&#39;&#39;);    &lt;br /&gt;
       BEGIN   &lt;br /&gt;
         v_file := UTL_FILE.fopen(&#39;AWR_DIR&#39;, &#39;awr_&#39; || v_Instance_name ||&#39;_&#39;|| v_Instance_number || &#39;_&#39; || begin_snap || &#39;_&#39; || (end_snap-1) || &#39;.txt&#39;, &#39;w&#39;, 32767);  &lt;br /&gt;
          FOR c_AWRReport IN (  &lt;br /&gt;
             SELECT output FROM TABLE (DBMS_WORKLOAD_REPOSITORY.AWR_REPORT_TEXT( v_dbid, v_Instance_number, begin_snap,end_snap-1))  &lt;br /&gt;
                              ) loop  &lt;br /&gt;
             UTL_FILE.PUT_LINE(v_file, c_AWRReport.output); end loop;   &lt;br /&gt;
   UTL_FILE.fclose(v_file);  &lt;br /&gt;
   END;  &lt;br /&gt;
   EXECUTE IMMEDIATE(&#39;DROP DIRECTORY AWR_DIR&#39;);     &lt;br /&gt;
   END; &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
create or replace procedure generate_awrreport  as &lt;br /&gt;
begin_snap number;&lt;br /&gt;
end_snap number;&lt;br /&gt;
begin &lt;br /&gt;
select (MAX(SNAP_ID)-1) into begin_snap from dba_hist_snapshot where to_char(BEGIN_INTERVAL_TIME,&#39;HH24&#39;) = &#39;10&#39;;&lt;br /&gt;
 select (MAX(SNAP_ID)-1) into end_snap from dba_hist_snapshot where to_char(BEGIN_INTERVAL_TIME,&#39;HH24&#39;) = &#39;14&#39;;&lt;br /&gt;
CreateAwrReports(begin_snap, end_snap,&#39;/export/home/oracle/&#39;);&lt;br /&gt;
end;&lt;br /&gt;
/</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/8962952889031783112/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/11/automating-awr-report-generation.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/8962952889031783112'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/8962952889031783112'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/11/automating-awr-report-generation.html' title='Automating AWR report Generation'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-7590173180920114358</id><published>2012-11-08T06:41:00.000-08:00</published><updated>2012-11-08T06:41:22.179-08:00</updated><title type='text'>Automating ADDM report Generation</title><content type='html'>Some times we may have a requirement to generate addm report for peak hours every day. Below are the steps , by which we can automate addm reports generation.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
1) Create a task in DB.&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
begin&lt;br /&gt;
DBMS_ADVISOR.create_task (&lt;br /&gt;
                          advisor_name      =&gt; &#39;ADDM&#39;,&lt;br /&gt;
                          task_name         =&gt; &#39;ADDM2&#39;,&lt;br /&gt;
                          task_desc         =&gt; &#39;Addm report generation schedule&#39;);&lt;br /&gt;
 end;&lt;br /&gt;
/&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
2) Create this procedure in database. This procedure can generate awr report for 10:00 AM to 14:00 AM.&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
create or replace procedure auto_addm as&lt;br /&gt;
     start_time number;&lt;br /&gt;
     end_time number;&lt;br /&gt;
BEGIN&lt;br /&gt;
    DBMS_ADVISOR.RESET_TASK(task_name =&gt;&#39;ADDM1&#39;);&lt;br /&gt;
    select (MAX(SNAP_ID)-1) into start_time from dba_hist_snapshot where to_char(BEGIN_INTERVAL_TIME,&#39;HH24&#39;) = &#39;10&#39;;&lt;br /&gt;
     select (MAX(SNAP_ID)-1) into end_time from dba_hist_snapshot where to_char(BEGIN_INTERVAL_TIME,&#39;HH24&#39;) = &#39;14&#39;;&lt;br /&gt;
  DBMS_ADVISOR.set_task_parameter (&lt;br /&gt;
    task_name =&gt; &#39;ADDM1&#39;,&lt;br /&gt;
    parameter =&gt; &#39;START_SNAPSHOT&#39;,&lt;br /&gt;
     value     =&gt; start_time);&lt;br /&gt;
  DBMS_ADVISOR.set_task_parameter (&lt;br /&gt;
    task_name =&gt; &#39;ADDM1&#39;,&lt;br /&gt;
    parameter =&gt; &#39;END_SNAPSHOT&#39;,&lt;br /&gt;
    value     =&gt; end_time);&lt;br /&gt;
  -- Execute the task.&lt;br /&gt;
   DBMS_ADVISOR.execute_task(task_name =&gt;&#39;ADDM1&#39;);&lt;br /&gt;
END auto_addm;&lt;br /&gt;
/&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
3) Schedule the bleow script in crontab. &lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
sqlplus -s &#39;/as sysdba&#39; &lt;&lt; EOF&lt;br /&gt;
SET LONG 100000&lt;br /&gt;
SET PAGESIZE 50000&lt;br /&gt;
exec auto_addm;&lt;br /&gt;
 spool addmrpt.txt&lt;br /&gt;
SELECT DBMS_ADVISOR.get_task_report(&#39;ADDM1&#39;) AS report FROM   dual;&lt;br /&gt;
spool off;&lt;br /&gt;
 &lt;br /&gt;
exit;&lt;br /&gt;
 &lt;br /&gt;
EOF&lt;br /&gt;
cat addmrpt.txt |mailx -s &quot;ADDMREPORT For TODAY&quot; &quot;MAIL-ID&quot;</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/7590173180920114358/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/11/automating-addm-report-generation_8.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7590173180920114358'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7590173180920114358'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/11/automating-addm-report-generation_8.html' title='Automating ADDM report Generation'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-7418270356886349832</id><published>2012-08-28T10:28:00.000-07:00</published><updated>2012-08-31T23:21:34.134-07:00</updated><title type='text'>Steps for Configuring DATAGUARD in Oracle 11g</title><content type='html'>DATAGUARD CONFIGURATION STEPS:-&lt;br /&gt;
&lt;br /&gt;
Environment&lt;br /&gt;
Primary Database DB_UNIQUE_NAME: ORCL&lt;br /&gt;
Standby Database DB_UNIQUE_NAME: ORCL_DTGD&lt;br /&gt;
ORACLE_SID: ORCL&lt;br /&gt;
&lt;br /&gt;
STEPS:-&lt;br /&gt;
1. Enable Force Logging on the Primary database&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database force logging;&lt;br /&gt;
&lt;br /&gt;
2. Create password file on Primary database.&lt;br /&gt;
3. Create listener.ora,tnsnames.ora on standby database.&lt;br /&gt;
LISTENER/TNS FOR PRIMARY DATABASE:-&lt;br /&gt;
LISTENERORCL=&lt;br /&gt;
(DESCRIPTION=&lt;br /&gt;
(ADDRESS_LIST=&lt;br /&gt;
(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.7.115)(PORT=1521))&lt;br /&gt;
(ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))&lt;br /&gt;
SID_LIST_LISTENERORCL=&lt;br /&gt;
(SID_LIST=&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(GLOBAL_DBNAME=ORCL)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(SID_NAME=ORCL))&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(GLOBAL_DBNAME=ORCL_DGMGRL)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(SID_NAME=ORCL))&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(SID_NAME=plsextproc)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(PROGRAM=extproc)))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ORCL =&lt;br /&gt;
(DESCRIPTION =&lt;br /&gt;
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.7.115)(PORT = 1521))&lt;br /&gt;
(CONNECT_DATA =&lt;br /&gt;
(SERVER = DEDICATED)&lt;br /&gt;
(SID = ORCL)&lt;br /&gt;
)&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
LISTENER/TNS FOR STANDBY DATABASE:-&lt;br /&gt;
&lt;br /&gt;
ORCL_DTGD=&lt;br /&gt;
(DESCRIPTION=&lt;br /&gt;
(ADDRESS_LIST=&lt;br /&gt;
(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.7.116)(PORT=1521))&lt;br /&gt;
(ADDRESS=(PROTOCOL=ipc)(KEY=extproc))))&lt;br /&gt;
SID_LIST_ORCL_DTGD=&lt;br /&gt;
(SID_LIST=&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(GLOBAL_DBNAME=ORCL_DTGD)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(SID_NAME=ORCL_DTGD))&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(GLOBAL_DBNAME=ORCL_DTGD_DGMGRL)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(SID_NAME=ORCL_DTGD))&lt;br /&gt;
(SID_DESC=&lt;br /&gt;
(SID_NAME=plsextproc)&lt;br /&gt;
(ORACLE_HOME=/data/oracle/app/oracle/product/11.2.0/dbhome_1)&lt;br /&gt;
(PROGRAM=extproc)))&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ORCL_DTGD =&lt;br /&gt;
(DESCRIPTION =&lt;br /&gt;
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.7.116)(PORT = 1521))&lt;br /&gt;
(CONNECT_DATA =&lt;br /&gt;
(SERVER = DEDICATED)&lt;br /&gt;
(SID = ORCL_DTGD)&lt;br /&gt;
)&lt;br /&gt;
)&lt;br /&gt;
&lt;br /&gt;
4. Create password file for standby database.&lt;br /&gt;
$orapwd file-orapw$ORACLE_SID password=&lt;password&gt; force=y entries=10&lt;br /&gt;
5. Copy the password file of standby database on primary server and vice-versa.&lt;br /&gt;
6. Add the tns entry of primary server to standby server and vice-versa. &lt;br /&gt;
Now we should be albe to login on remote database using tns service name.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Note  - ensure that the same password is used as the one used while creating the password file on the Primary host&lt;br /&gt;
7. Create a &quot;scratch&quot; init.ora file on the Standby host with just a single parameter &lt;br /&gt;
&lt;br /&gt;
&quot;initORCL_DTGD.ora&quot; [New file]&lt;br /&gt;
DB_NAME=ORCL&lt;br /&gt;
DB_UNIQUE_NAME=ORCL_DTGD&lt;br /&gt;
Audit_file_dest=’&lt;path_location&gt;’&lt;br /&gt;
Background_file_dest=’&lt;path_location&gt;’&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
8. Create the required directories on the Standby host as mentioned in pfile.&lt;br /&gt;
9. Start standby database using pfile in nomount state.&lt;br /&gt;
&lt;br /&gt;
On Primary database:&lt;br /&gt;
&lt;br /&gt;
10. On the primary server, connect to Primary database(ORCL) as target and standby database(ORCL_DTGD) as auxiliary.&lt;br /&gt;
bash-3.00$ rman target sys/sys@ORCL auxiliary sys/sys@ORCL_DTGD&lt;br /&gt;
&lt;br /&gt;
Recovery Manager: Release 11.2.0.3.0 - Production on Fri Mar 30 14:26:29 2012&lt;br /&gt;
&lt;br /&gt;
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.&lt;br /&gt;
&lt;br /&gt;
connected to target database: ORCL (DBID=1353251360)&lt;br /&gt;
connected to auxiliary database: ORCL (DBID=1353251360)&lt;br /&gt;
&lt;br /&gt;
RMAN&gt;DUPLICATE TARGET DATABASE FOR STANDBY FROM ACTIVE DATABASE DORECOVER&lt;br /&gt;
SPFILE SET DB_UNIQUE_NAME=&#39;ORCL_DTGD&#39; SET LOG_ARCHIVE_DEST_2=&#39;service=ORCL LGWR SYNC REGISTER VALID_FOR=(online_logfile,primary_role)&#39; Set STANDBY_FILE_MANAGEMENT=&#39;AUTO&#39; SET FAL_SERVER=&#39;ORCL&#39; SET FAL_CLIENT=&#39;ORCL_DTGD&#39; SET CONTROL_FILES=&#39;/data/oracle/app/oracle/oradata/ORCL/control01.ctl’,&#39;/data/oracle/app/oracle/fast_recovery_area/ORCL/control02.ctl’ NOFILENAMECHECK;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
11. Add init.ora parameters related to redo transport and redo apply on primary database.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter system set fal_server=&#39;ORCL_DTGD&#39; scope=both;&lt;br /&gt;
System altered.&lt;br /&gt;
SQL&gt; alter system set fal_client=&#39;ORCL&#39; scope=both;&lt;br /&gt;
System altered.&lt;br /&gt;
SQL&gt; alter system set standby_file_management=AUTO scope=both;&lt;br /&gt;
System altered.&lt;br /&gt;
SQL&gt; alter system set LOG_ARCHIVE_DEST_1=&#39;LOCATION=USE_DB_RECOVERY_FILE_DEST VALID_FOR=(ALL_LOGFILES,ALL_ROLES) DB_UNIQUE_NAME=ORCL&#39;;&lt;br /&gt;
System altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter system set LOG_ARCHIVE_DEST_2=&#39;SERVICE=ORCL_DTGD LGWR SYNC VALID_FOR= (ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=ORCL_DTGD&#39;;&lt;br /&gt;
&lt;br /&gt;
12. Shutdown the Standby database, add the Standby log files and then start real time recovery&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
SQL&gt; shutdown immediate;&lt;br /&gt;
ORA-01109: database not open&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Database dismounted.&lt;br /&gt;
ORACLE instance shut down.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; startup&lt;br /&gt;
ORACLE instance started.&lt;br /&gt;
&lt;br /&gt;
Total System Global Area 5344731136 bytes&lt;br /&gt;
Fixed Size                  2153536 bytes&lt;br /&gt;
Variable Size            3154117568 bytes&lt;br /&gt;
Database Buffers         2147483648 bytes&lt;br /&gt;
Redo Buffers               40976384 bytes&lt;br /&gt;
Database mounted.&lt;br /&gt;
Database opened.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database add standby logfile group 4 size 50m;&lt;br /&gt;
Database altered.&lt;br /&gt;
SQL&gt; alter database add standby logfile group 5 size 50m;&lt;br /&gt;
Database altered.&lt;br /&gt;
SQL&gt; alter database add standby logfile group 6 size 50m;&lt;br /&gt;
Database altered.&lt;br /&gt;
SQL&gt;  alter database add standby logfile group 7 size 500m;&lt;br /&gt;
Database altered.&lt;br /&gt;
SQL&gt; recover managed standby database using current logfile disconnect;&lt;br /&gt;
Media recovery complete.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; !ps -ef |grep mrp&lt;br /&gt;
oracle 471268      1   0 10:51:16      -  0:02 ora_mrp0_ORCL_DTGD&lt;br /&gt;
oracle 475150 270568   1 11:02:47  pts/0  0:00 grep mrp&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
13. Change the Protection Level of the Standby Database to MAXIMIZE AVAILABILITY&lt;br /&gt;
&lt;br /&gt;
On the Primary database:&lt;br /&gt;
&lt;br /&gt;
SQL&gt; shutdown immediate;&lt;br /&gt;
&lt;br /&gt;
Database dismounted.&lt;br /&gt;
ORACLE instance shut down.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; startup mount&lt;br /&gt;
&lt;br /&gt;
ORACLE instance started.&lt;br /&gt;
&lt;br /&gt;
Total System Global Area 5344731136 bytes&lt;br /&gt;
Fixed Size                  2153536 bytes&lt;br /&gt;
Variable Size            3154117568 bytes&lt;br /&gt;
Database Buffers         2147483648 bytes&lt;br /&gt;
Redo Buffers               40976384 bytes&lt;br /&gt;
Database mounted.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database add standby logfile group 4 size 500m;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database add standby logfile group 5 size 500m;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database add standby logfile group 6 size 500m;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt;  alter database add standby logfile group 7 size 500m;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database set standby database to maximize availability;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
SQL&gt; alter database open;&lt;br /&gt;
&lt;br /&gt;
Database altered.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
SQL&gt; select protection_mode,protection_level from v$database;&lt;br /&gt;
&lt;br /&gt;
PROTECTION_MODE      PROTECTION_LEVEL&lt;br /&gt;
-------------------- --------------------&lt;br /&gt;
MAXIMUM AVAILABILITY MAXIMUM AVAILABILITY&lt;br /&gt;
14. Configuring DATAGUARD Broker.&lt;br /&gt;
bash-3.00$ dgmgrl&lt;br /&gt;
DGMGRL for Solaris: Version 11.2.0.3.0 - 64bit Production&lt;br /&gt;
&lt;br /&gt;
Copyright (c) 2000, 2009, Oracle. All rights reserved.&lt;br /&gt;
&lt;br /&gt;
Welcome to DGMGRL, type &quot;help&quot; for information.&lt;br /&gt;
DGMGRL&gt; connect sys/sys&lt;br /&gt;
Connected.&lt;br /&gt;
DGMGRL&gt;CREATE CONFIGURATION ‘DATAGURAD’ PRIMARY DATABASE IS ‘ORCL’ CONNECT IDENTIFIER IS ‘ORCL’;&lt;br /&gt;
DGMGRL&gt;ADD DATABASE ‘ORCL_DTGD’ AS CONNECT IDENTIFIER IS ‘ORCL_DTGD’;&lt;br /&gt;
DGMGRL&gt;ENABLE CONFIGURATION;&lt;br /&gt;
DGMGRL&gt;SHOW CONFIGURATION;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/7418270356886349832/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/steps-for-configuring-dataguard-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7418270356886349832'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7418270356886349832'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/steps-for-configuring-dataguard-in.html' title='Steps for Configuring DATAGUARD in Oracle 11g'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-7485458536223327319</id><published>2012-08-26T03:44:00.002-07:00</published><updated>2012-08-26T03:44:39.190-07:00</updated><title type='text'>Oracle Binary Cloning</title><content type='html'>Install Oracle Server from Previous Installation using Bindary Cloning.&lt;br /&gt;
&lt;br /&gt;
1. Tar or copy the existing installation to be used:&lt;br /&gt;
tar cvf &lt;tarFile&gt;.tar &lt;existing files/directories&gt;&lt;br /&gt;
2. Untar or copy the existing installation to $HOME/&lt;version&gt; (&lt;version&gt; should be the full&lt;br /&gt;
version including patch level (for example, 10.2.0.1):&lt;br /&gt;
tar xvf &lt;tarFile&gt;.tar&lt;br /&gt;
3. Remove the following files and directories from the copy:&lt;br /&gt;
• *.log&lt;br /&gt;
• *.dbf&lt;br /&gt;
• Listener.ora&lt;br /&gt;
• Sqlnet.ora&lt;br /&gt;
• Tnsnames.ora&lt;br /&gt;
• $ORACLE_HOME/&lt;Hostname&gt;_&lt;SID&gt;&lt;br /&gt;
• $ORACLE_HOME/oc4j/j2ee/OC4J_DBConsole_&lt;Hostname&gt;_&lt;SID&gt;&lt;br /&gt;
4. Use the Oracle Universal Installer to clone the existing installation into the inventory:&lt;br /&gt;
$HOME/oui/install/runInstaller \&lt;br /&gt;
-clone ORACLE_HOME=&lt;ORACLE_HOME_PATH&gt; \&lt;br /&gt;
ORACLE_HOME_NAME=&quot;&lt;ORACLE_DB_HOME_NAME&gt;&quot;&lt;br /&gt;
Tip: ORACLE_HOME can be attached and detached from the central Oracle inventory using:&lt;br /&gt;
• runInstaller -attachHome ORACLE_HOME=&lt;oracle home location&gt;&lt;br /&gt;
ORACLE_HOME_NAME=&lt;oracle home name&gt;&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/7485458536223327319/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/oracle-binary-cloning.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7485458536223327319'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/7485458536223327319'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/oracle-binary-cloning.html' title='Oracle Binary Cloning'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-5827206669337990574</id><published>2012-08-26T03:39:00.001-07:00</published><updated>2012-08-26T03:39:24.382-07:00</updated><title type='text'>Segment Advisor In Oracle 11g</title><content type='html'>STEPS FOR CREATING SEGMENT ADVISOR REPORT IN ORACLE 11g:-&lt;br /&gt;
&lt;br /&gt;
SCHEMA NAME:- ORCL&lt;br /&gt;
SEGMENT NAME:- SALES&lt;br /&gt;
TABLESPACE NAME:- ORCL_TBS&lt;br /&gt;
&lt;br /&gt;
1&gt; Create a segment advisor task for the ORCL.SALES table.&lt;br /&gt;
&lt;br /&gt;
DECLARE&lt;br /&gt;
  l_object_id  NUMBER;&lt;br /&gt;
BEGIN&lt;br /&gt;
  DBMS_ADVISOR.create_task (&lt;br /&gt;
    advisor_name      =&gt; &#39;Segment Advisor&#39;,&lt;br /&gt;
    task_name         =&gt; &#39;SALES_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    task_desc         =&gt; &#39;Segment Advisor For SALES TABLE&#39;);&lt;br /&gt;
  DBMS_ADVISOR.create_object (&lt;br /&gt;
    task_name   =&gt; &#39;SALES_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    object_type =&gt; &#39;TABLE&#39;,&lt;br /&gt;
    attr1       =&gt; &#39;ORCL&#39;, &lt;br /&gt;
    attr2       =&gt; &#39;SALES&#39;, &lt;br /&gt;
    attr3       =&gt; NULL, &lt;br /&gt;
    attr4       =&gt; &#39;null&#39;,&lt;br /&gt;
    attr5       =&gt; NULL,&lt;br /&gt;
    object_id   =&gt; l_object_id);&lt;br /&gt;
  DBMS_ADVISOR.set_task_parameter (&lt;br /&gt;
    task_name =&gt; &#39;SALES_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    parameter =&gt; &#39;RECOMMEND_ALL&#39;,&lt;br /&gt;
    value     =&gt; &#39;TRUE&#39;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
DBMS_ADVISOR.execute_task(task_name =&gt; &#39;SALES_SEGMENT_ADVISOR&#39;);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
2&gt; Create a segment advisor task for the ORCL_TBS tablespace.&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
  &lt;br /&gt;
  DBMS_ADVISOR.create_task (&lt;br /&gt;
    advisor_name      =&gt; &#39;Segment Advisor&#39;,&lt;br /&gt;
    task_name         =&gt; &#39;ORCL_TBS_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    task_desc         =&gt; &#39;Segment Advisor For ORCL_TBS&#39;);&lt;br /&gt;
  DBMS_ADVISOR.create_object (&lt;br /&gt;
    task_name   =&gt; &#39;ORCL_TBS_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    object_type =&gt; &#39;TABLESPACE&#39;,&lt;br /&gt;
    attr1       =&gt; &#39;ORCL_TBS&#39;, &lt;br /&gt;
    attr2       =&gt; NULL, &lt;br /&gt;
    attr3       =&gt; NULL, &lt;br /&gt;
    attr4       =&gt; &#39;null&#39;,&lt;br /&gt;
    attr5       =&gt; NULL,&lt;br /&gt;
    object_id   =&gt; l_object_id);&lt;br /&gt;
  DBMS_ADVISOR.set_task_parameter (&lt;br /&gt;
    task_name =&gt; &#39;ORCL_TBS_SEGMENT_ADVISOR&#39;,&lt;br /&gt;
    parameter =&gt; &#39;RECOMMEND_ALL&#39;,&lt;br /&gt;
    value     =&gt; &#39;TRUE&#39;);&lt;br /&gt;
  DBMS_ADVISOR.execute_task(task_name =&gt; &#39;ORCL_TBS_SEGMENT_ADVISOR&#39;);&lt;br /&gt;
END;&lt;br /&gt;
/ &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3&gt; Display the Segment Advisor Report:-&lt;br /&gt;
&lt;br /&gt;
SET LINESIZE 600&lt;br /&gt;
COLUMN task_name FORMAT A20&lt;br /&gt;
COLUMN object_type FORMAT A20&lt;br /&gt;
COLUMN schema FORMAT A20&lt;br /&gt;
COLUMN object_name FORMAT A30&lt;br /&gt;
COLUMN object_name FORMAT A30&lt;br /&gt;
COLUMN message FORMAT A40&lt;br /&gt;
COLUMN more_info FORMAT A40&lt;br /&gt;
set pagesize 500&lt;br /&gt;
SELECT f.task_name,&lt;br /&gt;
       f.impact,&lt;br /&gt;
       o.type AS object_type,&lt;br /&gt;
       o.attr1 AS schema,&lt;br /&gt;
       o.attr2 AS object_name,&lt;br /&gt;
       f.message,&lt;br /&gt;
       f.more_info&lt;br /&gt;
FROM   dba_advisor_findings f&lt;br /&gt;
       JOIN dba_advisor_objects o ON f.object_id = o.object_id AND f.task_name = o.task_name&lt;br /&gt;
WHERE  f.task_name IN (&#39;SALES_SEGMENT_ADVISOR&#39;, &#39;ORCL_TBS_SEGMENT_ADVISOR&#39;)&lt;br /&gt;
ORDER BY f.task_name, f.impact DESC;</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/5827206669337990574/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/segment-advisor-in-oracle-11g.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/5827206669337990574'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/5827206669337990574'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/segment-advisor-in-oracle-11g.html' title='Segment Advisor In Oracle 11g'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-2145626197951496367</id><published>2012-08-26T03:30:00.000-07:00</published><updated>2012-08-26T03:30:27.503-07:00</updated><title type='text'>Steps For Implementing STREAMS in Oracle</title><content type='html'>SOURCE DATABASE:- dbbackup&lt;br /&gt;
TARGET DATABASE:- TEST&lt;br /&gt;
&lt;br /&gt;
1. ENABLE ARCHIVE LOG IN BOTH THE DATABASES.&lt;br /&gt;
2. CONNECT TO SOURCR DATABASE(DBBACKUP).&lt;br /&gt;
 &lt;br /&gt;
       sql&gt; CREATE USER STREAMADMIN IDENTIFIED BY STREAMADMIN; GRNAT CONNECT , RESOURCE,DBA TO STREAMADMIN;&lt;br /&gt;
       sql&gt; BEGIN DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE(GRANTEE=&gt;&#39;STREAMADMIN&#39;,GRANT_PRIVILEGES=&gt;TRUE); END;/&lt;br /&gt;
       sql&gt; GRANT SELECT_CATALOG_ROLE, SELECT ANY DICTIONARY TO STREAMADMIN;&lt;br /&gt;
&lt;br /&gt;
3. CONNECT TO TARGET DATABASE(TEST):-&lt;br /&gt;
&lt;br /&gt;
         sql&gt; CREATE USER STREAMADMIN IDENTIFIED BY STREAMADMIN; GRNAT CONNECT , RESOURCE,DBA TO STREAMADMIN;&lt;br /&gt;
       sql&gt; BEGIN DBMS_STREAMS_AUTH.GRANT_ADMIN_PRIVILEGE(GRANTEE=&gt;&#39;STREAMADMIN&#39;,GRANT_PRIVILEGES=&gt;TRUE); END;\&lt;br /&gt;
       sql&gt; GRANT SELECT_CATALOG_ROLE, SELECT ANY DICTIONARY TO STREAMADMIN;&lt;br /&gt;
&lt;br /&gt;
4.CONNECT TO SOURCR DATABASE(DBBACKUP).&lt;br /&gt;
        sql&gt;alter system set global_names=true;&lt;br /&gt;
        sql&gt;alter system set streams_pool_size = 100 m;&lt;br /&gt;
&lt;br /&gt;
5. CONNECT TO TARGET DATABASE(TEST):-&lt;br /&gt;
&lt;br /&gt;
       sql&gt;alter system set global_names=true;&lt;br /&gt;
        sql&gt;alter system set streams_pool_size = 100 m;&lt;br /&gt;
&lt;br /&gt;
6. CONNECT TO SOURCR DATABASE(DBBACKUP) AS STREAMADMIN USER.&lt;br /&gt;
&lt;br /&gt;
       sql&gt;CREATE DATABASE LINK TEST CONNECT TO STREAMADMIN IDENTIFIED BY STREAMADMIN USING &#39;TEST&#39;;&lt;br /&gt;
&lt;br /&gt;
7.CONNECT TO TARGET DATABASE(TEST) AS STREAMADMIN USER:-&lt;br /&gt;
 &lt;br /&gt;
        sql&gt;CREATE DATABASE LINK DBBACKUP CONNECT TO STREAMADMIN IDENTIFIED BY STREAMADMIN USING &#39;DBBACKUP&#39;;&lt;br /&gt;
&lt;br /&gt;
8. SET UP SOURCE &amp; DESTINATION QUEUE:-&lt;br /&gt;
&lt;br /&gt;
   A)CONNECT TO SOURCE DATABASE AS STREAMADMIN USER:- &lt;br /&gt;
 &lt;br /&gt;
       sql&gt;EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE();&lt;br /&gt;
&lt;br /&gt;
   B)CONNECT TO TARGET DATABASE(TEST) AS STREAMADMIN USER:-&lt;br /&gt;
       sql&gt;EXEC DBMS_STREAMS_ADM.SET_UP_QUEUE();&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
9. CONNECT TO SOURCE DATABASE(dbbackup) AS SCOTT USER:- &lt;br /&gt;
      sql&gt; create table STREAM_TABLE ( no number primary key,name varchar2(20),ddate date);&lt;br /&gt;
      sql&gt;alter table STREAM_TABLE add supplemental log data (primary key,unique) columns;&lt;br /&gt;
&lt;br /&gt;
10. CONNECT TO TARGET DATABASE(TEST) AS SCOTT USER:-&lt;br /&gt;
&lt;br /&gt;
     sql&gt; create table STREAM_TABLE ( no number primary key,name varchar2(20),ddate date);&lt;br /&gt;
      sql&gt;alter table STREAM_TABLE add supplemental log data (primary key,unique) columns;&lt;br /&gt;
&lt;br /&gt;
11. CONFIGURE CAPTURE PROCESS AT SOURCE DATABASE(dbbackup) AS STREAMADMIN USER:- &lt;br /&gt;
&lt;br /&gt;
Begin DBMS_STREAMS_ADM.SET_UP_QUEUE (&lt;br /&gt;
   QUEUE_TABLE=&gt;&#39;STREAMS_QUEUE_TABLE&#39;,&lt;br /&gt;
   QUEUE_NAME =&gt;&#39;STREAMS_QUEUE&#39;,&lt;br /&gt;
    QUEUE_USER=&gt;&#39;STREAMADMIN&#39;);&lt;br /&gt;
    END;&lt;br /&gt;
    /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      sql&gt; begin dbms_streams_adm.add_table_rules&lt;br /&gt;
                       ( table_name =&gt; &#39;scott.STREAM_TABLE&#39;,&lt;br /&gt;
                         streams_type =&gt; &#39;capture&#39;,&lt;br /&gt;
                         streams_name =&gt; &#39;capture_stream&#39;,&lt;br /&gt;
                         queue_name=&gt; &#39;STREAMADMIN.STREAMS_QUEUE&#39;,&lt;br /&gt;
                         include_dml =&gt; true,&lt;br /&gt;
                         include_ddl =&gt; true,&lt;br /&gt;
                         inclusion_rule =&gt; true);&lt;br /&gt;
                          end;&lt;br /&gt;
                         /&lt;br /&gt;
&lt;br /&gt;
12. CONFIGURE PROPOGATION PROCESS AT SOURCE DATABASE(DBBACKUP) AS STREAMADMIN USER:- &lt;br /&gt;
&lt;br /&gt;
    sql&gt; begin dbms_streams_adm.add_table_propagation_rules&lt;br /&gt;
                               ( table_name =&gt; &#39;scott.STREAM_TABLE&#39;,&lt;br /&gt;
                                 streams_name =&gt; &#39;DBBACKUP_TO_TEST&#39;,&lt;br /&gt;
                                 source_queue_name =&gt; &#39;STREAMADMIN.STREAMS_QUEUE&#39;,&lt;br /&gt;
                                 destination_queue_name =&gt; &#39;STREAMADMIN.STREAMS_QUEUE@TEST&#39;,&lt;br /&gt;
                                 include_dml =&gt; true,&lt;br /&gt;
                                 include_ddl =&gt; true,&lt;br /&gt;
                                 source_database =&gt; &#39;DBBACKUP&#39;,&lt;br /&gt;
                                 inclusion_rule =&gt; true);&lt;br /&gt;
                                 end;&lt;br /&gt;
                                  /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
13. Set the instantiation system change number (SCN). CONNECT TO SOURCE DATABASE(DBBACKUP) AS STREAMADMIN USER:- &lt;br /&gt;
              sql&gt; declare source_scn number;&lt;br /&gt;
                    begin&lt;br /&gt;
                    source_scn := dbms_flashback.get_system_change_number();&lt;br /&gt;
                    dbms_apply_adm.set_table_instantiation_scn@TEST&lt;br /&gt;
                   ( source_object_name =&gt; &#39;scott.STREAM_TABLE&#39;,&lt;br /&gt;
                     source_database_name =&gt; &#39;DBBACKUP&#39;,&lt;br /&gt;
                     instantiation_scn =&gt; source_scn);&lt;br /&gt;
                      end;/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
14.CONFIGURE APPLY PROCESS AS DESTINATION DATABASE(TEST). CONNEC TO THE TEST DATABASE AS STREAMADMIN USER:-&lt;br /&gt;
&lt;br /&gt;
Begin DBMS_STREAMS_ADM.SET_UP_QUEUE (&lt;br /&gt;
   QUEUE_TABLE=&gt;&#39;STREAMS_QUEUE_TABLE&#39;,&lt;br /&gt;
   QUEUE_NAME =&gt;&#39;STREAMS_QUEUE&#39;,&lt;br /&gt;
    QUEUE_USER=&gt;&#39;STREAMADMIN&#39;);&lt;br /&gt;
    END;&lt;br /&gt;
    /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 sql&gt;begin dbms_streams_adm.add_table_rules&lt;br /&gt;
 ( table_name =&gt; &#39;scott.STREAM_TABLE&#39;,&lt;br /&gt;
 streams_type =&gt; &#39;apply&#39;,&lt;br /&gt;
 streams_name =&gt; &#39;apply_stream&#39;,&lt;br /&gt;
 queue_name =&gt; &#39;STREAMADMIN.STREAMS_QUEUE&#39;,&lt;br /&gt;
 include_dml =&gt; true,&lt;br /&gt;
 include_ddl =&gt; true,&lt;br /&gt;
 source_database =&gt; &#39;DBBACKUP&#39;,&lt;br /&gt;
 inclusion_rule =&gt; true);&lt;br /&gt;
 end;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
15. START CAPTURE &amp; APPLY PROCESS AT SOURCE DATABASE(DBBACKUP). CONNECT TO THE DATABASE AS STREAMADMIN USER:-&lt;br /&gt;
&lt;br /&gt;
sql&gt; begin dbms_capture_adm.start_capture&lt;br /&gt;
( capture_name =&gt; &#39;capture_stream&#39;);&lt;br /&gt;
 end;&lt;br /&gt;
 /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
16. START APPLY PROCESS AS DESTINATION DATABASE(TEST). CONNEC TO THE TEST DATABASE AS STREAMADMIN USER:-&lt;br /&gt;
&lt;br /&gt;
SQL&gt;begin dbms_apply_adm.set_parameter&lt;br /&gt;
 ( apply_name =&gt; &#39;apply_stream&#39;,&lt;br /&gt;
 parameter =&gt; &#39;disable_on_error&#39;,&lt;br /&gt;
 value =&gt; &#39;n&#39;);&lt;br /&gt;
 end;&lt;br /&gt;
 /&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
sql&gt;begin&lt;br /&gt;
   dbms_apply_adm.start_apply&lt;br /&gt;
   ( apply_name =&gt; &#39;apply_stream&#39;);&lt;br /&gt;
   end;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
 &lt;br /&gt;
&lt;br /&gt;
  &lt;br /&gt;
  </content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/2145626197951496367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/steps-for-implementing-streams-in-oracle.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/2145626197951496367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/2145626197951496367'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/steps-for-implementing-streams-in-oracle.html' title='Steps For Implementing STREAMS in Oracle'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-6406911185789484489</id><published>2012-08-22T23:13:00.001-07:00</published><updated>2012-08-22T23:13:17.972-07:00</updated><title type='text'>Changing datatype for a table column in oracle</title><content type='html'>&lt;br /&gt;
&lt;br /&gt;
1.)Check For any constraints on that table:-&lt;br /&gt;
&lt;br /&gt;
select constraint_name , constraint_type from user_constraints where table_name=&#39;XXXX&#39;;&lt;br /&gt;
&lt;br /&gt;
2.)Drop that constraint after taking the backup of DDL.&lt;br /&gt;
&lt;br /&gt;
select dbms_metadata.get_ddl(&#39;CONSTRAINT&#39;,&#39;XXXX&#39;,&#39;SCHEMA_NAME&#39;) from dual;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
3.)Adding Temporary column with new datatype:-&lt;br /&gt;
&lt;br /&gt;
alter table XXXXX add (REFERENCE_TXN_ID_TEMP VARCHAR2(51));&lt;br /&gt;
&lt;br /&gt;
4.)Copy existing column data to new temp column:-&lt;br /&gt;
&lt;br /&gt;
update table XXXXXX set REFERENCE_TXN_ID_TEMP=REFERENCE_TXN_ID;&lt;br /&gt;
commit;&lt;br /&gt;
&lt;br /&gt;
5.)Mark existing column as Unused:-&lt;br /&gt;
&lt;br /&gt;
alter table XXXXX set unused column REFERENCE_TXN_ID;&lt;br /&gt;
&lt;br /&gt;
6.)Rename Temp Column to Original Column:-&lt;br /&gt;
&lt;br /&gt;
alter table XXXXX rename column REFERENCE_TXN_ID_TEMP to REFERENCE_TXN_ID;&lt;br /&gt;
&lt;br /&gt;
7.)Drop Un-used Column:-&lt;br /&gt;
&lt;br /&gt;
alter table drop unused column;&lt;br /&gt;
&lt;br /&gt;
</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/6406911185789484489/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/changing-datatype-for-table-column-in.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/6406911185789484489'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/6406911185789484489'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/changing-datatype-for-table-column-in.html' title='Changing datatype for a table column in oracle'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-375501959111286473.post-6746270259935004809</id><published>2012-08-22T22:27:00.000-07:00</published><updated>2012-08-22T23:14:01.750-07:00</updated><title type='text'>Automated Tablespace Point-In Time Recovery</title><content type='html'>&lt;div dir=&quot;ltr&quot; style=&quot;text-align: left;&quot; trbidi=&quot;on&quot;&gt;&lt;span style=&quot;font-size: x-small;&quot;&gt;Pre-requistie for automated Tablespace Point-In Time Recovery:-&lt;br /&gt;
&lt;br /&gt;
---------------------------------------------------------------&lt;br /&gt;
&lt;br /&gt;
1. Specifiy the auxiliary location for rman to restore auxiliary datafiles.&lt;br /&gt;
&lt;br /&gt;
2. Configure the auxiliary channel on target database.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Step:-&lt;br /&gt;
&lt;br /&gt;
-----------&lt;br /&gt;
&lt;br /&gt;
1. Run the below script.&lt;br /&gt;
&lt;br /&gt;
run {&lt;br /&gt;
&lt;br /&gt;
recover tablespace users&lt;br /&gt;
&lt;br /&gt;
until logseq xxx thread 1&lt;br /&gt;
&lt;br /&gt;
auxiliary destination &#39;/u01/temp&#39;;&lt;br /&gt;
&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
How rman works.&lt;br /&gt;
&lt;br /&gt;
a. Rman creates a auxiliary instance , starts it up and connect to it , &lt;br /&gt;
&lt;br /&gt;
if there is no connection to auxiliary instance. &lt;br /&gt;
&lt;br /&gt;
b. Rman makes the tablespace users offline , in target database.&lt;br /&gt;
&lt;br /&gt;
c. Rman restores backup control file before point in time to the auxiliary instance.&lt;br /&gt;
&lt;br /&gt;
d. Rman restores datafiles from the recovery set and the auxiliary &lt;br /&gt;
&lt;br /&gt;
set to the auxiliary instance.&lt;br /&gt;
&lt;br /&gt;
e. The restored data files are recovered till point in time in auxiliary instance.&lt;br /&gt;
&lt;br /&gt;
f. Rman opens auxiliary instance with resetlogs option.&lt;br /&gt;
&lt;br /&gt;
g. Rman exports the dictionary metadata about the object.&lt;br /&gt;
&lt;br /&gt;
h. It shuts down the auxiliary instance.&lt;br /&gt;
&lt;br /&gt;
i. Rman issues the switch command on the target database to the recovered auxiliary &lt;br /&gt;
&lt;br /&gt;
instance tablespace.&lt;br /&gt;
&lt;br /&gt;
j. Dictionay metadata are imported in the target database.&lt;br /&gt;
&lt;br /&gt;
k. Deletion of auxiliary set files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
------------&lt;/span&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://step2oracledba.blogspot.com/feeds/6746270259935004809/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/automated-tablespace-point-in-time.html#comment-form' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/6746270259935004809'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/375501959111286473/posts/default/6746270259935004809'/><link rel='alternate' type='text/html' href='http://step2oracledba.blogspot.com/2012/08/automated-tablespace-point-in-time.html' title='Automated Tablespace Point-In Time Recovery'/><author><name>Unknown</name><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='https://img1.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>