<?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: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-4027744840783458035</id><updated>2012-02-06T18:13:47.387+02:00</updated><title type='text'>Michael A.  Georgiou   マイケル</title><subtitle type='html'>Technical articles for oracle database</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://mikegeorgiou.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default?start-index=101&amp;max-results=100'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>111</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2311872214978237728</id><published>2012-01-23T15:36:00.002+02:00</published><updated>2012-01-23T15:46:49.234+02:00</updated><title type='text'>Find logs for java application that is deployed on OC4J</title><content type='html'>tail -f $ORACLE_HOME /j2ee/&lt;OC4J_NAME&gt;/application-deployments/&lt;APPLICATION_NAME&gt;/&lt;OC4J_NAME&gt;_default_island_1/application.log&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2311872214978237728?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2311872214978237728'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2311872214978237728'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2012/01/find-logs-for-java-application-that-is_23.html' title='Find logs for java application that is deployed on OC4J'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2013363315370842168</id><published>2012-01-23T15:36:00.000+02:00</published><updated>2012-01-23T15:37:08.261+02:00</updated><title type='text'>Find logs for java application that is deployed on OC4J</title><content type='html'>tail -f $ORACLE_HOME /j2ee/&lt;OC4J_NAME&gt;/application-deployments/&lt;APPLICATION_NAME&gt;/&lt;OC4J_NAME&gt;_default_island_1/application.log&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2013363315370842168?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2013363315370842168'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2013363315370842168'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2012/01/find-logs-for-java-application-that-is.html' title='Find logs for java application that is deployed on OC4J'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8224896464669293241</id><published>2012-01-20T09:50:00.003+02:00</published><updated>2012-01-20T09:53:20.277+02:00</updated><title type='text'>Deploy ear application on Standalone oc4j</title><content type='html'>Deploy ear application on Standalone oc4j &lt;br /&gt;1. Right click on “Project” and select “New”.&lt;br /&gt;2. Select “Deployment Profiles” and on the right screen select “WAR file”. Click OK&lt;br /&gt;3. Write the “Deployment Profile Name”: webapp1. Click OK.&lt;br /&gt;4. Select under WEB-INF/classes, the Contributors and on the right screen select all the checkboxes. Click OK.&lt;br /&gt;5. Right click on the webapp1 /weapp2 and select “Deploy to EAR file”.&lt;br /&gt;6. Put ear under : C:\FileMover\oc4j_home\oc4j\j2ee\home\applications&lt;br /&gt;7. Add the line below in the file C:\FileMover\oc4j_home\oc4j\j2ee\home\config\server.xml.&lt;br /&gt;---application name="FileMoverMg" path="../../home/applications/FileMoverMg.ear" auto-start="true" /&gt;&lt;br /&gt;8. Add the line below in the file C:\FileMover\oc4j_home\oc4j\j2ee\home\config\default-web-site.xml&lt;br /&gt;---web-app application="FileMoverMg" name="FileMoverMg" root="/FileMoverMg" /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8224896464669293241?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8224896464669293241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8224896464669293241'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2012/01/deploy-ear-application-on-standalone.html' title='Deploy ear application on Standalone oc4j'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1992416904395132494</id><published>2011-12-28T12:37:00.000+02:00</published><updated>2011-12-28T12:38:02.743+02:00</updated><title type='text'>Revoke object granted to PUBLIC for a specific USER</title><content type='html'>SELECT ' revoke all on  '||owner||'.'||table_name||'  from public;'     &lt;br /&gt;FROM table_privileges  &lt;br /&gt;WHERE grantee = 'PUBLIC'  &lt;br /&gt;AND OWNER='UM'&lt;br /&gt;ORDER BY owner, table_name;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1992416904395132494?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1992416904395132494'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1992416904395132494'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/revoke-object-granted-to-public-for.html' title='Revoke object granted to PUBLIC for a specific USER'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8203414190301601297</id><published>2011-12-28T12:34:00.002+02:00</published><updated>2011-12-28T12:36:52.083+02:00</updated><title type='text'>When a new table is created , a SELECT priveleges on that TABLE is added to a ROLE.</title><content type='html'>When a new table is created , a SELECT priveleges on that TABLE is added to a ROLE.&lt;br /&gt;====================================================================================&lt;br /&gt;--Create the tigger and the hr_s role under sys.&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE TRIGGER ddl_trig&lt;br /&gt;AFTER DDL&lt;br /&gt;ON DATABASE &lt;br /&gt;DECLARE&lt;br /&gt;      main_sql_text varchar2(100);&lt;br /&gt;      job_name_   varchar2(30);&lt;br /&gt;      job_type_   varchar2(30); &lt;br /&gt;      job_action_ varchar2(4000);&lt;br /&gt;      sql_text  varchar2(400);&lt;br /&gt;      job_id_ varchar2(30);&lt;br /&gt;      start_date_ timestamp;&lt;br /&gt;BEGIN&lt;br /&gt;&lt;br /&gt;      if (ora_sysevent='CREATE' and ora_dict_obj_type='TABLE' and ora_dict_obj_owner='HR' )then&lt;br /&gt;          sql_text := 'grant select on '||ora_dict_obj_owner||'.'||ora_dict_obj_name||' to hr_s';&lt;br /&gt;          select to_char(systimestamp,'DDMMYYYYHH24MISS') into job_id_ from dual;&lt;br /&gt;    select SYSTIMESTAMP  + interval '1' minute into start_date_ from dual;&lt;br /&gt;    main_sql_text:=''''||sql_text||''''; &lt;br /&gt;    job_name_:='job'||job_id_;&lt;br /&gt;    job_type_:='PLSQL_BLOCK';&lt;br /&gt;    job_action_:='begin execute immediate('||main_sql_text||'); end;';  &lt;br /&gt;  execute immediate ('begin DBMS_SCHEDULER.create_job (job_name=&gt; :a,job_type=&gt; :b,job_action =&gt; :c,start_date=&gt; :d,repeat_interval =&gt; NULL,end_date=&gt; NULL,enabled=&gt;TRUE,comments=&gt; NULL); end;') using job_name_,job_type_,job_action_,start_date_;&lt;br /&gt;      end if;&lt;br /&gt;END ddl_trig;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--Grant the role on a privelges users.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8203414190301601297?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8203414190301601297'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8203414190301601297'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/when-new-table-is-created-select.html' title='When a new table is created , a SELECT priveleges on that TABLE is added to a ROLE.'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-5475316110931316206</id><published>2011-12-27T12:48:00.003+02:00</published><updated>2012-01-20T09:56:30.927+02:00</updated><title type='text'>Prepare Oracle Linux 6 for Installing Oracle 11gR2 (rpm packages))</title><content type='html'>Prepare Oracle Linux 6 for Installing Oracle 11gR2&lt;br /&gt;by Michael Georgiou&lt;br /&gt;============================================================&lt;br /&gt;mpfr-2.4.1-6&lt;br /&gt;cpp-4.4.4-13&lt;br /&gt;ppl-0.10.2-11&lt;br /&gt;gcc-4.4.4-13&lt;br /&gt;cloog-ppl-0.15.7-1.2&lt;br /&gt;binutils-2&lt;br /&gt;glibc-2 &lt;br /&gt;nss-softokn-freebl-3&lt;br /&gt;glibc-2&lt;br /&gt;nss-softokn-freebl-3&lt;br /&gt;compat-libstdc++-33&lt;br /&gt;glibc-common-2&lt;br /&gt;glibc-devel-2&lt;br /&gt;glibc-headers-2&lt;br /&gt;elfutils-libelf-0&lt;br /&gt;elfutils-libelf-devel-0&lt;br /&gt;gcc-4&lt;br /&gt;gcc-c++-4&lt;br /&gt;ksh-&lt;br /&gt;libaio-0&lt;br /&gt;libaio-devel-0&lt;br /&gt;libgcc-4&lt;br /&gt;libstdc++-4&lt;br /&gt;libstdc++-devel-4&lt;br /&gt;make-3.81mpfr-2.4.1-6&lt;br /&gt;cpp-4.4.4-13&lt;br /&gt;ppl-0.10.2-11&lt;br /&gt;gcc-4.4.4-13&lt;br /&gt;cloog-ppl-0.15.7-1.2&lt;br /&gt;numactl-devel-2&lt;br /&gt;sysstat-9&lt;br /&gt;compat-libstdc++-33&lt;br /&gt;compat-libcap&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;All packages are available :/media/OL6.0 i386 Disc 1 20110203/Server/Packages&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-5475316110931316206?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/5475316110931316206'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/5475316110931316206'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/packages-installing-oracle-11gr2-32.html' title='Prepare Oracle Linux 6 for Installing Oracle 11gR2 (rpm packages))'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1562208625159401651</id><published>2011-12-23T12:45:00.000+02:00</published><updated>2011-12-23T12:46:43.031+02:00</updated><title type='text'>SQL Performance</title><content type='html'>DECLARE&lt;br /&gt;   TYPE rc IS REF CURSOR;&lt;br /&gt;   l_rc rc;&lt;br /&gt;   l_dummy all_objects.object_name%TYPE;&lt;br /&gt;   l_start number DEFAULT dbms_utility.get_time;&lt;br /&gt;BEGIN&lt;br /&gt;   FOR i IN 1 .. 1000&lt;br /&gt;   LOOP&lt;br /&gt;      OPEN l_rc FOR&lt;br /&gt;         'select object_name&lt;br /&gt;            from all_objects&lt;br /&gt;           where object_id = ' || i;&lt;br /&gt;      FETCH l_rc INTO l_dummy;&lt;br /&gt;      CLOSE l_rc;&lt;br /&gt;      dbms_output.put_line(l_dummy);&lt;br /&gt;   END LOOP;&lt;br /&gt;   dbms_output.put_line(ROUND((dbms_utility.get_time-l_start)/100, 2) ||' Seconds...' );&lt;br /&gt;END;&lt;br /&gt;/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1562208625159401651?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1562208625159401651'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1562208625159401651'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/sql-performance.html' title='SQL Performance'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-6631269571185182294</id><published>2011-12-22T13:03:00.002+02:00</published><updated>2011-12-22T13:05:34.020+02:00</updated><title type='text'>Create schema statistics using DBMS_STATS</title><content type='html'>dbms_stats.gather_schema_stats&lt;br /&gt;(&lt;br /&gt; ownname=&gt;'HR',&lt;br /&gt; cascade=&gt;TRUE,  ---Indexes are included&lt;br /&gt; method_opt=&gt;'FOR ALL INDEXED COLUMNS',--Create Histograms&lt;br /&gt; estimate_percent =&gt; dbms_stats.auto_sample_size, --Takes Sample size for the tables and Indexes &lt;br /&gt; degree           =&gt; 2 --Parallel degree 2&lt;br /&gt;);&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-6631269571185182294?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6631269571185182294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6631269571185182294'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/create-schema-statistics-using.html' title='Create schema statistics using DBMS_STATS'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1076455889766172194</id><published>2011-12-21T14:09:00.002+02:00</published><updated>2011-12-21T14:10:49.419+02:00</updated><title type='text'>Create Service in  a single Instance database</title><content type='html'>exec DBMS_SERVICE.CREATE_SERVICE('TPCH','TPCH');&lt;br /&gt;exec DBMS_SERVICE.START_SERVICE('TPCH','ORCL');&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; TPCH =&lt;br /&gt;   (DESCRIPTION =&lt;br /&gt;     (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))&lt;br /&gt;     (CONNECT_DATA =&lt;br /&gt;       (SERVER = DEDICATED)&lt;br /&gt;       (SERVICE_NAME = TPCH)&lt;br /&gt;     )&lt;br /&gt;   )&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;sqlplus system/xxxxxx@TPCH&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1076455889766172194?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1076455889766172194'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1076455889766172194'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/12/create-service-in-single-instance.html' title='Create Service in  a single Instance database'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8148496223541431423</id><published>2011-11-14T14:08:00.002+02:00</published><updated>2011-11-14T14:13:39.312+02:00</updated><title type='text'>Package persistent stage - Example</title><content type='html'>Package persistent stage - Example &lt;br /&gt;--------------------------------------------------------------------------------------- Every time ( in the same session ) that a procedure EMP is executed it returns the next 30 rows from table employees until the cursor returns all rows. &lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE PACKAGE EMP AS &lt;br /&gt;&lt;br /&gt;  /* TODO enter package declarations (types, exceptions, methods etc) here */ &lt;br /&gt;   cursor c is select * from employees;&lt;br /&gt;   return_rows number:=30;&lt;br /&gt;   procedure PRINTEMPLOYEES ;&lt;br /&gt;END EMP;&lt;br /&gt;----------------------------------------------------------------------------------------&lt;br /&gt;CREATE OR REPLACE PACKAGE BODY EMP AS&lt;br /&gt;&lt;br /&gt;  procedure PRINTEMPLOYEES &lt;br /&gt;  as&lt;br /&gt;  cr c%ROWTYPE;&lt;br /&gt;  fetched number:=0;&lt;br /&gt;  BEGIN&lt;br /&gt;   &lt;br /&gt;        IF NOT c%ISOPEN THEN&lt;br /&gt;            OPEN c;&lt;br /&gt;        END IF;&lt;br /&gt;    loop&lt;br /&gt;        fetch c into cr;&lt;br /&gt;        EXIT WHEN c%ROWCOUNT &gt; return_rows OR c%NOTFOUND;&lt;br /&gt;           DBMS_OUTPUT.PUT_LINE(cr.last_name);&lt;br /&gt;    end loop;&lt;br /&gt;    return_rows:=return_rows+30;&lt;br /&gt;  END PRINTEMPLOYEES;&lt;br /&gt;&lt;br /&gt;END EMP;&lt;br /&gt;/&lt;br /&gt;----------------------------------------------------------------------------------------&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8148496223541431423?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8148496223541431423'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8148496223541431423'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/package-persistent-stage-example.html' title='Package persistent stage - Example'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-682546893149721156</id><published>2011-11-11T11:14:00.001+02:00</published><updated>2011-11-11T11:14:45.068+02:00</updated><title type='text'>Check Alert.log for ORA- errors using PLSQL</title><content type='html'>&lt;p style="margin-bottom: 0in; line-height: 100%; "&gt;         &lt;/p&gt;&lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace procedure write_file &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;( DIR IN VARCHAR2,filename IN VARCHAR2,text IN varchar2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;is&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;file utl_file.file_type;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;begin&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;file:=utl_file.fopen(DIR,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;filename,'a');&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;utl_file.put_line(file,text);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;utl_file.new_line(file);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;utl_file.fclose(file);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in"&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;procedure read_file ( DIR IN VARCHAR2,filename IN VARCHAR2, report IN VARCHAR2)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;is&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;file utl_file.file_type; --file handler&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;buffer char(1000);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;--EOF boolean:=false;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;begin&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;if not utl_file.is_open(file) then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;file := utl_file.fopen(DIR,filename,'R');&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end if;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;loop&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;begin&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;utl_file.get_Line(file,buffer,32767);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;--dbms_output.put_line(buffer);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;if instr(buffer,'ORA-')=1 then&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;          &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;---dbms_output.put_line(buffer); &lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;           &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;write_file(DIR, report,buffer);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;end if;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;exception&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;when no_data_found then&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;     &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;exit;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end loop;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;-- To run everynight at midnight starting tonight&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;exec dbms_job.submit&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;(:v_JobNo, 'proc1;', TRUNC(SYSDATE)+1, 'TRUNC(SYSDATE)+1');&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-682546893149721156?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/682546893149721156'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/682546893149721156'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/check-alertlog-for-ora-errors-using.html' title='Check Alert.log for ORA- errors using PLSQL'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8618306853021622200</id><published>2011-11-11T11:10:00.004+02:00</published><updated>2011-11-11T11:13:12.525+02:00</updated><title type='text'>How to call c shared library (.so)  from PLSQL</title><content type='html'>&lt;p style="margin-bottom: 0in"&gt;The example uses Oracle Linux 5 32bits , Oracle 11gR2 EE &lt;/p&gt;&lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;Call  C &lt;/span&gt; &lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;csum&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;int csum(int a, int b) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;{ &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;return (a+b); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;gcc -c -fPIC csum.c -o csum.o&lt;br /&gt;gcc -shared -Wl,-soname,csum.so.1 -o csum.so.1.0.1 csum.o &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;mv csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;ln -sf /oracle/product/11.2.0/dbhome_1/lib/csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib/csum.so &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;ln -sf /oracle/product/11.2.0/dbhome_1/lib/csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib/csum.so.1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace library calc_sum as '/oracle/product/11.2.0/dbhome_1/lib/csum.so';&lt;br /&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace function getCSUM( a binary_integer,b binary_integer) return binary_integer&lt;br /&gt;as language c&lt;br /&gt;library calc_sum&lt;br /&gt;name "csum";&lt;br /&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;select getCSUM(10,2) from dual;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8618306853021622200?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8618306853021622200'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8618306853021622200'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/how-to-call-c-shared-library-from-plsql.html' title='How to call c shared library (.so)  from PLSQL'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-6287097296732959851</id><published>2011-11-11T11:10:00.001+02:00</published><updated>2011-11-11T11:10:43.103+02:00</updated><title type='text'>How to Call C and Java from PLSQL</title><content type='html'>&lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;Call  C &lt;/span&gt; &lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;csum&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;int csum(int a, int b) &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;{ &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt; return (a+b); &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;gcc -c -fPIC csum.c -o csum.o&lt;br /&gt;gcc -shared -Wl,-soname,csum.so.1 -o csum.so.1.0.1 csum.o &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;mv csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;ln -sf /oracle/product/11.2.0/dbhome_1/lib/csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib/csum.so &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;br /&gt;ln -sf /oracle/product/11.2.0/dbhome_1/lib/csum.so.1.0.1 /oracle/product/11.2.0/dbhome_1/lib/csum.so.1&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace library calc_sum as '/oracle/product/11.2.0/dbhome_1/lib/csum.so';&lt;br /&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace function getCSUM( a binary_integer,b binary_integer) return binary_integer&lt;br /&gt;as language c&lt;br /&gt;library calc_sum&lt;br /&gt;name "csum";&lt;br /&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-top: 0.02in; margin-bottom: 0.02in; background: #ffffff; line-height: 100%"&gt; &lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;select getCSUM(10,2) from dual;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span lang="en-US"&gt;Call Java&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;java&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;public class JSUM &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;{&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;public static int sum ( int a , int b){return a+b;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;}&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;[oracle@db11g myC]$ /oracle/product/11.2.0/dbhome_1/jdk/bin/javac JSUM.java&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;[oracle@db11g myC]$ loadjava -user hr/hr JSUM.class&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace function javaSUM( a number,b number) return number&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;as&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;language java&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;name 'JSUM.sum(int,int) return int';&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;select javaSUM(1,2) from dual;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-6287097296732959851?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6287097296732959851'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6287097296732959851'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/how-to-call-c-and-java-from-plsql.html' title='How to Call C and Java from PLSQL'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8832697761888739835</id><published>2011-11-11T11:09:00.001+02:00</published><updated>2011-11-11T11:09:34.046+02:00</updated><title type='text'>PLSQL Large objects example</title><content type='html'>&lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;Large objects exercise &lt;/b&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;As sys create the oracle directory EMP_DATA. Grant the appropriate privileges to user HR to read and write on this directory.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;Modify your employees table (&lt;yourname&gt;_emp) add columns &lt;/yourname&gt;&lt;/span&gt;&lt;span lang="en-US"&gt;&lt;i&gt;emp_resume clob&lt;/i&gt;&lt;/span&gt;&lt;span lang="en-US"&gt; and &lt;/span&gt;&lt;span lang="en-US"&gt;&lt;i&gt;emp_photo bfile&lt;/i&gt;&lt;/span&gt;&lt;span lang="en-US"&gt;. For each employee that exist in your table update the new columns as follows: (a) for emp_resume add the String 32000 bytes &lt;/span&gt;&lt;span lang="en-US"&gt;&lt;b&gt;String emp_name ||' resume is: '||&lt;/b&gt;&lt;/span&gt;&lt;span lang="en-US"&gt;&lt;i&gt;&lt;b&gt;plus dots(....) till 32000 characters&lt;/b&gt;&lt;/i&gt;&lt;/span&gt;&lt;span lang="en-US"&gt;  (b) add the anonymous photo for all employee.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;Write a procedure to print your table's date. For the resume print its length,for photo just print the photo size.&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;Solution&lt;/b&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;As sys:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace directory IMG as 'C:\Libraries\Pictures';&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;grant read,write on directory IMG to hr;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;As hr:&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;drop table michael_emp purge;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create table michael_emp &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;(&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;emp_id number primary key,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;  &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;emp_name varchar2(30) not null&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;insert into michael_emp values ( 1,'mmmmm');&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;insert into michael_emp values ( 2,'ggggg');&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;commit;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;alter table michael_emp add emp_resume clob;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;alter table michael_emp add emp_photo bfile;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;create or replace procedure updateEMP&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;as&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;cursor c is select emp_id,emp_name from michael_emp  FOR UPDATE;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;   &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;cr c%ROWTYPE;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;begin&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;     &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;for cr in c loop&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;       &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;update michael_emp set emp_resume=RPAD(cr.emp_name||' resume is: ',32000,'.') ,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;           &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;emp_photo=bfilename('EMP_DATA','anonymous.jpg')&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;             &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;where current of c;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;     &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end loop;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;commit;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-US" style="margin-bottom: 0in; line-height: 100%; "&gt;&lt;br /&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;CREATE OR REPLACE PROCEDURE PRINTEMP AS &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;cursor c is select * from michael_emp ;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt; &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;cr c%ROWTYPE;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;BEGIN&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;for cr in c loop&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;        &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;dbms_lob.fileopen(cr.emp_photo);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;        &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;dbms_output.put_line('Employee ID:'||cr.emp_id||' Name:'||cr.emp_name||' Resume size: '||dbms_lob.getlength(cr.emp_resume) ||' Photo size: '||dbms_lob.getlength(cr.emp_photo));&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;        &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;dbms_lob.fileclose(cr.emp_photo);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;    &lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;end loop;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; line-height: 100%; "&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;END PRINTEMP;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8832697761888739835?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8832697761888739835'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8832697761888739835'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/plsql-large-objects-example.html' title='PLSQL Large objects example'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3802304336894476789</id><published>2011-11-11T11:08:00.001+02:00</published><updated>2011-11-11T11:08:36.737+02:00</updated><title type='text'>Create a small plsql parser</title><content type='html'>&lt;p style="margin-bottom: 0in"&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;CREATE OR REPLACE FUNCTION pl_parser ( SQL_ IN VARCHAR2) RETURN varchar2&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;AS&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;    cursor_name INTEGER;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;    ecode NUMBER;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;    emesg VARCHAR2(200);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;BEGIN&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;       cursor_name := dbms_sql.open_cursor;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;       DBMS_SQL.PARSE(cursor_name,SQL_,DBMS_SQL.NATIVE);&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;       return 0;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;EXCEPTION WHEN OTHERS THEN&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;        ecode := SQLCODE;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;        emesg := SQLERRM;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;    return SQLERRM;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;END;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;b&gt;&lt;span style="background: #ffffff"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 8pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="background: #ffffff"&gt;/&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3802304336894476789?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3802304336894476789'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3802304336894476789'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/create-small-plsql-parser.html' title='Create a small plsql parser'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2806642088548754355</id><published>2011-11-11T11:06:00.001+02:00</published><updated>2011-11-11T11:06:52.593+02:00</updated><title type='text'>Using PLSQL Collections -- Simple Example with Nested Table</title><content type='html'>&lt;div&gt;Scenario:&lt;/div&gt;&lt;div&gt;============&lt;/div&gt;&lt;div&gt;Three intelligence sensors are used to keep the temperature and humidity of an Area XYZ . &lt;/div&gt;&lt;div&gt;Create a table that will be host sensors results. &lt;/div&gt;&lt;div&gt;Create a procedure to add the temperature (Celsius) and humidity  per sensor.&lt;/div&gt;&lt;div&gt;Create a procedure to display temperature (Fahrenheit or Celsius) and humidity  per sensor.&lt;/div&gt;&lt;div&gt;Use the TABLE expression to display the table's results &lt;/div&gt;&lt;div&gt;Note : You ust use a NESTED TABLE for your COLLECTION.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace type sensor_measure is object &lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;   temperature number,&lt;/div&gt;&lt;div&gt;   humidity number&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace type sensor_measure_tab as table of sensor_measure;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create table sensors&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;   sensor_id number primary key,&lt;/div&gt;&lt;div&gt;   sensor_name char(1) unique,&lt;/div&gt;&lt;div&gt;   location char(3)&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create table weather&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;   sensor_id number,&lt;/div&gt;&lt;div&gt;   m_date number(8) not null,&lt;/div&gt;&lt;div&gt;   time number(4) not null,&lt;/div&gt;&lt;div&gt;   s_measures sensor_measure_tab&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;NESTED TABLE s_measures STORE AS s_measures_storage;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;alter table weather add constraint weather_fk foreign key(sensor_id) references sensors ( sensor_id);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insert into sensors values ( 1,'A','XYZ');&lt;/div&gt;&lt;div&gt;insert into sensors values ( 2,'B','XYZ');&lt;/div&gt;&lt;div&gt;insert into sensors values ( 3,'C','XYZ');&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;commit;&lt;/div&gt;&lt;div&gt;-------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE PROCEDURE ADD_SENSOR_MEASURES &lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;  SENSOR_ID_ IN NUMBER  &lt;/div&gt;&lt;div&gt;, TEMPERATURE_ IN NUMBER  &lt;/div&gt;&lt;div&gt;, HUMIDITY_ IN NUMBER  &lt;/div&gt;&lt;div&gt;) &lt;/div&gt;&lt;div&gt;AS&lt;/div&gt;&lt;div&gt;    sm sensor_measure;&lt;/div&gt;&lt;div&gt;    s sensor_measure_tab;&lt;/div&gt;&lt;div&gt;    i integer;&lt;/div&gt;&lt;div&gt;    m_date_ number;&lt;/div&gt;&lt;div&gt;    r_date_ number;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;       sm:=sensor_measure(TEMPERATURE_,HUMIDITY_);&lt;/div&gt;&lt;div&gt;       s:=sensor_measure_tab(sm);&lt;/div&gt;&lt;div&gt;       m_date_ := to_number(to_char(sysdate,'YYYYMMDD'));&lt;/div&gt;&lt;div&gt;       r_date_ := to_number(to_char(sysdate,'HH24MI'));&lt;/div&gt;&lt;div&gt;       insert into weather values (&lt;/div&gt;&lt;div&gt;                                SENSOR_ID_,&lt;/div&gt;&lt;div&gt;                                m_date_,&lt;/div&gt;&lt;div&gt;                                r_date_,&lt;/div&gt;&lt;div&gt;                                s);&lt;/div&gt;&lt;div&gt;      commit;&lt;/div&gt;&lt;div&gt;END ADD_SENSOR_MEASURES;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--------------------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE PROCEDURE PRINT_WEATHER_PER_SENSOR &lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;  SENSOR_ID_ IN NUMBER  &lt;/div&gt;&lt;div&gt;) &lt;/div&gt;&lt;div&gt;AS&lt;/div&gt;&lt;div&gt;    cursor data_(sensorid number) is&lt;/div&gt;&lt;div&gt;    select w.sensor_id, w.m_date,w.time,w.s_measures &lt;/div&gt;&lt;div&gt;        from weather w&lt;/div&gt;&lt;div&gt;           where w.sensor_id=SENSORID;&lt;/div&gt;&lt;div&gt;    r data_%ROWTYPE;&lt;/div&gt;&lt;div&gt;    s sensor_measure_tab;&lt;/div&gt;&lt;div&gt;    sm sensor_measure;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;     dbms_output.put_line('Data for sensor:'||SENSOR_ID_);&lt;/div&gt;&lt;div&gt;     For r_data IN data_(sensor_id_) loop&lt;/div&gt;&lt;div&gt;         for i in r_data.s_measures.first..r_data.s_measures.last loop&lt;/div&gt;&lt;div&gt;              sm:=r_data.s_measures(i);&lt;/div&gt;&lt;div&gt;              dbms_output.put_line('Date:'||r_data.m_date||' '||'Time:'||r_data.time||'  Temperature:'||sm.temperature||'  Humidity:'||sm.humidity);&lt;/div&gt;&lt;div&gt;        end loop;&lt;/div&gt;&lt;div&gt;     end loop;&lt;/div&gt;&lt;div&gt;END PRINT_WEATHER_PER_SENSOR;&lt;/div&gt;&lt;div&gt;------------------------------------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt; select w.sensor_id, w.m_date,time,ws.temperature,ws.humidity from weather w,table(w.s_measures) ws&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2806642088548754355?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2806642088548754355'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2806642088548754355'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/using-plsql-collections-simple-example_11.html' title='Using PLSQL Collections -- Simple Example with Nested Table'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-9057896732033979597</id><published>2011-11-11T11:03:00.000+02:00</published><updated>2011-11-11T11:05:17.691+02:00</updated><title type='text'>PLSQL Fine Grained Control Example</title><content type='html'>&lt;div&gt;-- sys --&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE &lt;/div&gt;&lt;div&gt;PACKAGE PROTECT_HR_SALARY_PKG AS  &lt;/div&gt;&lt;div&gt; procedure set_app_context(emp_id_value IN number);&lt;/div&gt;&lt;div&gt;  function the_predicate (schema_in IN varchar2,name_in IN VARCHAR2) return varchar2;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;END PROTECT_HR_SALARY_PKG;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE&lt;/div&gt;&lt;div&gt;PACKAGE BODY PROTECT_HR_SALARY_PKG &lt;/div&gt;&lt;div&gt;AS&lt;/div&gt;&lt;div&gt;  procedure set_app_context(emp_id_value IN number) AS&lt;/div&gt;&lt;div&gt;  BEGIN&lt;/div&gt;&lt;div&gt;     dbms_session.set_context ('protect_hr_salaries','emp_id_value',''||emp_id_value);&lt;/div&gt;&lt;div&gt;    NULL;&lt;/div&gt;&lt;div&gt;  END set_app_context;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;  function the_predicate (schema_in IN varchar2,name_in IN VARCHAR2) return varchar2 &lt;/div&gt;&lt;div&gt;  AS&lt;/div&gt;&lt;div&gt;    v_r varchar2(2000);&lt;/div&gt;&lt;div&gt;    employee_id_ number;&lt;/div&gt;&lt;div&gt;  BEGIN&lt;/div&gt;&lt;div&gt;      employee_id_:=nvl(sys_context('protect_hr_salaries','emp_id_value'),0);&lt;/div&gt;&lt;div&gt;      v_r := 'department_id=( select department_id from hr.departments where manager_id='||employee_id_||')';&lt;/div&gt;&lt;div&gt;      return v_r;&lt;/div&gt;&lt;div&gt;  END the_predicate;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;END PROTECT_HR_SALARY_PKG;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace context protect_hr_salaries using PROTECT_HR_SALARY_PKG;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;-- Apply the policy function to the table.&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;  DBMS_RLS.ADD_POLICY (object_schema     =&amp;gt; 'HR',&lt;/div&gt;&lt;div&gt;                       object_name       =&amp;gt; 'EMPLOYEES',&lt;/div&gt;&lt;div&gt;                       policy_name       =&amp;gt; 'PROTECT_EMPLOYEES',&lt;/div&gt;&lt;div&gt;                       function_schema   =&amp;gt; 'sys',&lt;/div&gt;&lt;div&gt;                       policy_function   =&amp;gt; 'PROTECT_HR_SALARY_PKG.the_predicate',&lt;/div&gt;&lt;div&gt;                       statement_types =&amp;gt; 'SELECT,INSERT,UPDATE,DELETE',&lt;/div&gt;&lt;div&gt;                       enable =&amp;gt; TRUE);&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;grant execute on PROTECT_HR_SALARY_PKG to hr&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;hr &lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;   sys.PROTECT_HR_SALARY_PKG. set_app_context(103);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SQL&amp;gt; select first_name,salary from employees;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;FIRST_NAME               SALARY&lt;/div&gt;&lt;div&gt;-------------------- ----------&lt;/div&gt;&lt;div&gt;Alexander                  9000&lt;/div&gt;&lt;div&gt;Bruce                      6000&lt;/div&gt;&lt;div&gt;David                      4800&lt;/div&gt;&lt;div&gt;Valli                      4800&lt;/div&gt;&lt;div&gt;Diana                      4200&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;   sys.PROTECT_HR_SALARY_PKG. set_app_context(102);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SQL&amp;gt; select first_name,salary from employees;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;no rows selected&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-9057896732033979597?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9057896732033979597'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9057896732033979597'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/plsql-fine-grained-control-example.html' title='PLSQL Fine Grained Control Example'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3042682183275464707</id><published>2011-11-11T11:02:00.000+02:00</published><updated>2011-11-11T11:03:34.381+02:00</updated><title type='text'>Using PLSQL Collections -- Simple Example with VARRAY</title><content type='html'>&lt;div&gt;Using Collections &lt;/div&gt;&lt;div&gt;===================&lt;/div&gt;&lt;div&gt;Simple Example with VARRAY&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace type colors as varray (10) of varchar2(10);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;set serveroutput on size 1000000;&lt;/div&gt;&lt;div&gt;DECLARE&lt;/div&gt;&lt;div&gt;   rainbow colors;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;      rainbow := Colors('Red','Orange','Yellow','Green','Blue','Indigo','Violet');&lt;/div&gt;&lt;div&gt;      for i in rainbow.first..rainbow.last loop&lt;/div&gt;&lt;div&gt;           DBMS_OUTPUT.put_line(rainbow(i));&lt;/div&gt;&lt;div&gt;      end loop;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create table my_rainbows_per_day&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;    r_date number(8),&lt;/div&gt;&lt;div&gt;    rainbow colors&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;---INSERT DATA---&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insert into my_rainbows_per_day values ( '20111024',Colors('Red','Orange','Yellow','Green','Blue','Indigo','Violet'));&lt;/div&gt;&lt;div&gt;insert into my_rainbows_per_day values ( '20111025',Colors('Red','Orange','Yellow','Green'));&lt;/div&gt;&lt;div&gt;insert into my_rainbows_per_day values ( '20111026',Colors('Red','Orange','Yellow','Green'));&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--- Read data using first and last methods&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;set serveroutput on size 1000000&lt;/div&gt;&lt;div&gt;DECLARE&lt;/div&gt;&lt;div&gt;   cursor c is &lt;/div&gt;&lt;div&gt;        select r_date ,rainbow &lt;/div&gt;&lt;div&gt;          from MY_RAINBOWS_PER_DAY;&lt;/div&gt;&lt;div&gt;   c_r c%rowtype;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;      FOR c_r IN c LOOP&lt;/div&gt;&lt;div&gt;          DBMS_OUTPUT.put_line('DAY:'||c_r.r_date);&lt;/div&gt;&lt;div&gt;          for i in c_r.rainbow.first..c_r.rainbow.last loop&lt;/div&gt;&lt;div&gt;              DBMS_OUTPUT.put_line(c_r.rainbow(i));&lt;/div&gt;&lt;div&gt;          end loop;&lt;/div&gt;&lt;div&gt;      END LOOP;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--- Read data using first and next methods&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;set serveroutput on size 1000000&lt;/div&gt;&lt;div&gt;DECLARE&lt;/div&gt;&lt;div&gt;   cursor c is &lt;/div&gt;&lt;div&gt;        select r_date ,rainbow &lt;/div&gt;&lt;div&gt;          from MY_RAINBOWS_PER_DAY;&lt;/div&gt;&lt;div&gt;    c_r c%rowtype;&lt;/div&gt;&lt;div&gt;    i integer;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;    FOR c_r IN c LOOP&lt;/div&gt;&lt;div&gt;          DBMS_OUTPUT.put_line('DAY:'||c_r.r_date);&lt;/div&gt;&lt;div&gt;         i:=c_r.rainbow.first;&lt;/div&gt;&lt;div&gt;          while i is not null  loop&lt;/div&gt;&lt;div&gt;              DBMS_OUTPUT.put_line(c_r.rainbow(i));&lt;/div&gt;&lt;div&gt;              i:=c_r.rainbow.next(i);&lt;/div&gt;&lt;div&gt;          end loop;&lt;/div&gt;&lt;div&gt;      END LOOP;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;---- Read data using the TABLE expression&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;select * from TABLE( select r.rainbow from  my_rainbows_per_day r where r.r_date=20111024);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;---------------------------------------------------------------------------------------------&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3042682183275464707?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3042682183275464707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3042682183275464707'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/11/using-plsql-collections-simple-example.html' title='Using PLSQL Collections -- Simple Example with VARRAY'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1152307356727179190</id><published>2011-10-16T23:20:00.000+02:00</published><updated>2011-10-16T23:21:30.875+02:00</updated><title type='text'>Summarizing RAC's service control utility ( SRVCTL) 10gR2</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Summarizing RAC's service control utility ( SRVCTL) 10gR2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;by Michael Georgiou&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Srvctl&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt; is the main Oracle Real Application Cluster (RAC) utility which administer RAC objects. RAC objects are databases, instances, asm, nodeapps and services. The purposes of the srvctl is divided in three categories:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Oracle cluster database      configuration tasks&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;General Oracle cluster database      administration tasks&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Node level tasks &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Oracle cluster database configuration tasks&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Add, remove modify databases, instances, services&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Set and unset environment from databases, instances, services&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;General Oracle cluster database administration tasks&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Start, stop, enable, disable and get statuses for databases, instances, services&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Relocate a service back to the preferred instance. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="margin-left:18.0pt"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Node level tasks &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Add, remove modify node level applications &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Set and unset environment from node level applications&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Start , stop applications ( Applications can be Virtual IP Adress, Listeners, Oracle notification services and Oracle enterprise manager) . &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Srvctl commands&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;add&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;config&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;enable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;disable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;start&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;stop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;modify&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;relocate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;status&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;getenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;setenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;unsetenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;remove&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Commands description&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;add&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language: EN-US"&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl add database -d ORCL -o $ORACLE_HOME&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl add instance -d ORCL -i ORCL1 -n racnode1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl add service -d ORCL -s ORCLSRV -r racnode1 -a racnode2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl add asm -n racnode1 -i asm1 -o $ORACLE_HOME&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl add nodeapps -n racnode1 -o $ORACLE_HOME \&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;-A 192.168.0.1/255.255.255.0 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;config&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;listener&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl config database -ORCL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl config &lt;span&gt; &lt;/span&gt;-d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl config asm -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl config nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl config listener -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;enable|disable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl enable database -d ORCL &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl enable instance -d ORCL -i ORCL1,ORCL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl enable service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl enable asm -n noderac1 -i asm1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl disable database -d ORCL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl disable instance -d ORCL -i ORCL2,ORCL3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl disable service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl disable asm -n noderac1 -i asm1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;start|stop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;listener&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl start database -d ORCL -o open&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl start instance -d ORCL -i ORCL1,ORCL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl start service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl start asm -n noderac1 -i asm1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl start nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvcrl start listener -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl stop database -d ORCL -o immediate -c sys/****@ORCL1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl stop instance -d ORCL -i ORCL1,ORCL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl stop service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl stop asm -n noderac1 -i asm1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl stop nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvcrl stop listener -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;modify&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;Use modify database when:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-change ORACLE_HOME location&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-change spfile location&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-change the database role (primary,physical_standby,logical_standby)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-change startup option&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-change management policy(automatic,manual&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;Use modify instance when:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-relocate a database instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-establish a dependency between an asm instance and database instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;Use modify service when:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-Move service from one instance to another&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;-Changes which instances to be preferred and available&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify database -d ORCL -r logical_standby&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify instance -d ORCL -i ORCL1 -s ASM1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify service -d ORCL -s ORCLSRV -r ORCL2 -a ORCL1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify nodeapps -n noderac1 -A 192.168.100.2/255.255.255.0/etch0&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;More service examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;-Move a service from instance ORCL1 to ORCL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify service -d ORCL -s ORCLSRV -i ORCL1 -t ORCL2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;-Change an available instance to be a preferred instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl modify service -d ORCL -s ORCLSRV -i ORCL1 -r &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;relocate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;example:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl relocate service -d ORCL -s ORCLSRV -i ORCL1 -t ORCL3 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;status&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;srvctl status database -d ORCL -f&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;srvctl status instance -d ORCL -i ORCL1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;srvctl status service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;srvctl status asm -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;srvctl status nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;getenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl getenv database -d ORCL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl getenv instance -d ORCL -i ORCL1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl getenv service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl getenv nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;setenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl setenv database -d ORCL -t LANG=EN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl setenv instance -d ORCL -i ORCL1 -t LANG=EN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl setenv service -d ORCL -s ORCLSRV -t CLASSPATH=/usr/local/jdk/jre/rt.jar &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl setenv nodeapps -n noderac1 -t CLASSPATH=/usr/local/jdk/jre/rt.jar &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;unsetenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl unsetenv database -d ORCL -t LANG&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl unsetenv instance -d ORCL -i ORCL1 -t LANG=EN&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl unsetenv service -d ORCL -s ORCLSRV -t CLASSPATH &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl unsetenv nodeapps -n noderac1 -t CLASSPATH &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;remove&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt;     &lt;/span&gt;asm&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;examples:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove database -d ORCL&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove instance -d ORCL -i ORCL1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove service -d ORCL -s ORCLSRV&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove service -d ORCL -s ORCLSRV -i ORCL3,ORCL4&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove nodeapps -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;srvctl remove asm -n noderac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;Note : use crs_stat -t or crs_stat -u for validating commands&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;Table: Available commands per RAC's object&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;table class="MsoTableGrid" border="1" cellspacing="0" cellpadding="0" style="border-collapse:collapse;border:none;mso-border-alt:solid black .5pt;  mso-border-themecolor:text1;mso-yfti-tbllook:1184;mso-padding-alt:0cm 5.4pt 0cm 5.4pt"&gt;  &lt;tbody&gt;&lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;Command&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;Database&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;Instance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;Service&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ASM&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-left:none;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;Nodeapps&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;add&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;config&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;enable|disable&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;start|stop&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;modify&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;relocate&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;Status&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;getenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;setenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;unsetenv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt;  &lt;tr&gt;   &lt;td width="138" valign="top" style="width:103.25pt;border:solid black 1.0pt;   mso-border-themecolor:text1;border-top:none;mso-border-top-alt:solid black .5pt;   mso-border-top-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;remove&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.9pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="87" valign="top" style="width:65.1pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="72" valign="top" style="width:54.0pt;border-top:none;border-left:none;   border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;   &lt;td width="91" valign="top" style="width:67.95pt;border-top:none;border-left:   none;border-bottom:solid black 1.0pt;mso-border-bottom-themecolor:text1;   border-right:solid black 1.0pt;mso-border-right-themecolor:text1;mso-border-top-alt:   solid black .5pt;mso-border-top-themecolor:text1;mso-border-left-alt:solid black .5pt;   mso-border-left-themecolor:text1;mso-border-alt:solid black .5pt;mso-border-themecolor:   text1;padding:0cm 5.4pt 0cm 5.4pt"&gt;   &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;;   mso-ansi-language:EN-US"&gt;√&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;   &lt;/td&gt;  &lt;/tr&gt; &lt;/tbody&gt;&lt;/table&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US" style="font-size:11.0pt;font-family:&amp;quot;Courier New&amp;quot;; mso-ansi-language:EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt; &lt;/span&gt;For more details please read oracle's reference Oracle database clusterware and oracle real application clusters administration and deployment appendix E.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;     &lt;/span&gt;&lt;span&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1152307356727179190?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1152307356727179190'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1152307356727179190'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/10/summarizing-racs-service-control.html' title='Summarizing RAC&apos;s service control utility ( SRVCTL) 10gR2'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1926792010538945581</id><published>2011-10-14T21:14:00.000+02:00</published><updated>2011-10-14T21:15:43.386+02:00</updated><title type='text'>Oracle 10g RAC Utilities</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Oracle 10g RAC Utilities by michael A. Georgiou &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;This article provides a small tutorial for all the RAC utilities, that are available in oracle rac 10g r2. the &lt;b&gt;srvctl&lt;/b&gt; utility is not covered in this document. &lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;olsnodes &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;olsnodes : is used to list cluster's members&lt;span&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;olsnodes -n&lt;span&gt;  &lt;/span&gt;&lt;span&gt; &lt;/span&gt;--returns the cluster's nodes associated with each cluster number&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;olsnodes -i&lt;span&gt;    &lt;/span&gt;--returns cluster's nodes associated with each number and vip name&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;olsnodes -l&lt;span&gt;    &lt;/span&gt;--returns the local member name and cluster number&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;crsctl ( as root)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl : The cluster control is responsible manage&lt;span&gt;  &lt;/span&gt;the cluster components , the main options are the following: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl stop crs&lt;span&gt;   &lt;/span&gt;--stop the cluster &lt;span&gt; &lt;/span&gt;the same as /etc/init.d/init.crs stop &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl start crs --start the cluster , the same as /etc/init.d/init.crs start&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl disable crs&lt;span&gt;  &lt;/span&gt;--disable cluster to start automatically &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl enable crs&lt;span&gt;   &lt;/span&gt;--enable cluster to start automatically&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl lsmodule [crs|evm|css]&lt;span&gt;  &lt;/span&gt;--list the available modules per cluster components, these modules can be used later for debugging purposes. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl check crs&lt;span&gt;  &lt;/span&gt;--check all daemons(crsd,evmd,cssd) if are healthy &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl add css vodedisk &lt;path&gt;&lt;span&gt;  &lt;/span&gt;-- add a new voding disk&lt;o:p&gt;&lt;/o:p&gt;&lt;/path&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl delete css vodedisk &lt;path&gt; --delete existing voding disk&lt;o:p&gt;&lt;/o:p&gt;&lt;/path&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl debug log [crs|evm|css] "MODULE:DEGUG_LEVEl[,..]"&lt;span&gt;  &lt;/span&gt;--enable debugging &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl debug log res "RESOURCE:DEGUG_LEVEl[,..]"&lt;span&gt;  &lt;/span&gt;--enable debugging &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;All logs are available under&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;$CRS_HOME/log/hostname/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;/cssd&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;/evmd&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;/crsd&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;$CRS_HOME/bin/diagcollection.pl -- this perl script collect information for diagnostic purposes. &lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;racgons &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;racgons : It used to register a middle tier node[s] , such a ons server&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;racgons add_config node1:port,nodeN:port &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;racgons remove­_config node1:port&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;ocrcheck&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrcheck : Block by block check on ocr and ocr mirror files , it is returns&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocr file space details ( total      space,available space,used space)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocr id&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocr and ocr mirror location &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;ocrdump &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrdump : consolitate ocr into a dump file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrdump&lt;span&gt;   &lt;/span&gt;--create an ocr dump , by default the OCRDUMPFILE is created&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrdump mydump &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrdump mydump -stdout -keyname system&lt;span&gt;        &lt;/span&gt;--create an ocr dump ,dumping only the system keyname&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrdump mydump -stdout xml&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;evmwatch&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;evmwatch : waits for event to happen&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;evmwatch -A -t "@ timestamp @@"&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;evmpost&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;evmpost : port event to node[s]&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;evmpost -u "hello" node&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;ocrconfig &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig : ocr file administration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -backuploc &lt;new path=""&gt;&lt;span&gt;  &lt;/span&gt;----change ocr backup location&lt;o:p&gt;&lt;/o:p&gt;&lt;/new&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -showbackup&lt;span&gt;    &lt;/span&gt;---show the backups that are done&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -overwrite&lt;span&gt;   &lt;/span&gt;---overwrite the contents of the ocr loacted in local sga to disk&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -repair --repair ocr file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -export -- export ocr file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -import --import and exported file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -replace &lt;span&gt; &lt;/span&gt;ocr| ocr mirror --change ocr file&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -restore --restore ocr backup as listed via showbackup option&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -upgrade &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig -downgrade&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;oifcfg &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg : Oracle's network interface configuration tools . This tools set which network interface will plays the role of public or private interconnect&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg iflist ---&amp;gt; returns the if_name and the subnet ( if_name can be the eth0,eth1 etc) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg getif ---&amp;gt; return the if_name,subnet and if_type ( the if_type can be global public or private interconnect)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg setif&lt;span&gt;  &lt;/span&gt;-global eth3/192.168.10.0:private_interconnect&lt;span&gt;  &lt;/span&gt;---&amp;gt; add a second private_interconnect&lt;span&gt;   &lt;/span&gt;network interface in cluster, the global option is applied in all nodes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg delif&lt;span&gt;  &lt;/span&gt;-global eth3/192.168.10.0:private_interconnect&lt;span&gt;  &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;oifcfg delif&lt;span&gt;  &lt;/span&gt;-global&lt;span&gt;  &lt;/span&gt;--delete all global interfaces &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;clscfg&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;clscfg : Cluster configuration , with this tool you can register/add a new node in a cluster&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;clscfg -add -nn node3,3 -pn node3-priv,3 -hn node3,3&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;cluvfy&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy:&lt;span&gt;   &lt;/span&gt;Cluster verification utility &lt;span&gt; &lt;/span&gt;for following areas in the cluster &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Installation verification&lt;span&gt;  &lt;/span&gt;( inst)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Storage verification&lt;span&gt;     &lt;/span&gt;(ssa,space)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Cluster integrity&lt;span&gt;       &lt;/span&gt;(clu)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Cluster components&lt;span&gt;   &lt;/span&gt;(crs,ocr,cfs)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;user and Permissions&lt;span&gt;   &lt;/span&gt;(admprv)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Connectivity&lt;span&gt;          &lt;/span&gt;(conn)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;System requirements verification      (sys) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Arguments and Options (peer)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -list&lt;span&gt;    &lt;/span&gt;---list of the valid components for verification&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy stage -list&lt;span&gt;   &lt;/span&gt;---list the valid stage of the verification ( pre stage and post stage e.g the system is able for oracle database installation) &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;clucfy comp -clu ----check the integrity of your entire cluster, which is mean to verify that all of the nodes in the cluster have the same view of the cluster configuration&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -sys -n all -p crs -verbose&lt;span&gt;    &lt;/span&gt;---Verify the min system requirement on cluster nodes prior to installing oracle cluster ware. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -ssa -n all -s /dev/sda&lt;span&gt;   &lt;/span&gt;----Discover all of the shared storage system available on cluster on system /dev/sda&lt;span&gt;   &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -space -n all -l /oracle -z 2G ---Verify the availability of at least 2G of free space &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp cfs -n all -F /ocfs-disk&lt;span&gt;  &lt;/span&gt;---Verify the integrity of the cluster file system&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -admprv -n all &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                                &lt;/span&gt;-o user_priv&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                                &lt;/span&gt;-o crs_inst&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                                &lt;/span&gt;-o db_inst&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                                &lt;/span&gt;-o db_config -d $ORACLE_HOME&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Verify user privileges , user privileges to install crs and install and configure database &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -conn -n all --- Discover all of the network interfaces that are available on the cluster nodes&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp peer -n all -r 10gR2&lt;span&gt;  &lt;/span&gt;-- compare all the node in the cluster &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp peer -refnode rac1 -n rac2,rac3 -r 10gR2 -- compare all the node in the cluster base on rac1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -stage -post crsinst -n all ---Verify the crs installation &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy comp -stage -pre dbinst -n all -r 10gR2&lt;span&gt;    &lt;/span&gt;--Verify that the system is configured properly in order to proceed with database installation &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;cluvfy stage -pre dbcfg -n all -d $ORACLE_HOME&lt;span&gt;  &lt;/span&gt;---Verify whether your system meet all of the criteria for creating a database or for making a database configuration change &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1926792010538945581?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1926792010538945581'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1926792010538945581'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/10/oracle-10g-rac-utilities.html' title='Oracle 10g RAC Utilities'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-6336053142090414140</id><published>2011-09-23T07:27:00.000+02:00</published><updated>2011-09-23T07:28:32.385+02:00</updated><title type='text'>Insert into clob using plsql bind variable</title><content type='html'>Insert into clob using plsql bind variable&lt;br /&gt; &lt;br /&gt; create table tab1 ( id number primary key , big_text clob);&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; create or replace procedure insert_into_tab1(a number,b varchar2)&lt;br /&gt; as&lt;br /&gt; begin&lt;br /&gt;      insert into tab1 values(a,b);&lt;br /&gt;      commit;&lt;br /&gt; end;&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;exec insert_into_tab1(1,rpad('Start string from here ..','32000','.'))&lt;br /&gt;&lt;br /&gt;SQL&gt; exec insert_into_tab1(1,rpad('Start string from here ..','32000','.'));&lt;br /&gt;&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;SQL&gt; select count(*) from tab1;&lt;br /&gt;&lt;br /&gt;  COUNT(*)&lt;br /&gt;----------&lt;br /&gt;         1&lt;br /&gt;&lt;br /&gt;SQL&gt; select big_text from tab1;&lt;br /&gt;&lt;br /&gt;BIG_TEXT&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;Start string from here .........................................................&lt;br /&gt;&lt;br /&gt;SQL&gt; select dbms_lob.getlength(big_text) from tab1;&lt;br /&gt;&lt;br /&gt;DBMS_LOB.GETLENGTH(BIG_TEXT)&lt;br /&gt;----------------------------&lt;br /&gt;                       32000&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;PLSQL limits my bind variable to 32000.&lt;br /&gt;SQL, the limit is 4,000 characters.  &lt;br /&gt;Using straight SQL like that, without a bind variable, you'll be limited to 4,000 characters.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;refence : http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:388196216305&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-6336053142090414140?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6336053142090414140'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6336053142090414140'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/09/insert-into-clob-using-plsql-bind.html' title='Insert into clob using plsql bind variable'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1470404255833245208</id><published>2011-09-18T06:54:00.001+02:00</published><updated>2011-09-18T06:54:50.314+02:00</updated><title type='text'>How to Use Flash Recovery Area  as your archivelog location</title><content type='html'>First set :&lt;br /&gt;            db_recovery_file_dest='/oracle/flashRecoveryArea'&lt;br /&gt;            db_recovery_file_dset_size=&lt;90% of the size '/oracle/flashRecoveryArea'&gt;&lt;br /&gt;Second :&lt;br /&gt;            log_archive_dest_1='LOCATION=USE_DB_RECOVERY_FILE_DEST' ;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1470404255833245208?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1470404255833245208'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1470404255833245208'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/09/how-to-use-flash-recovery-area-as-your.html' title='How to Use Flash Recovery Area  as your archivelog location'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3548473449565230775</id><published>2011-09-13T22:53:00.000+02:00</published><updated>2011-09-13T22:57:07.553+02:00</updated><title type='text'>Adding instance on RAC database without dbca ( 10gR2)</title><content type='html'>The suggested method to add an instance is via the dbca utility ( below is the silent version)&lt;br /&gt;&lt;br /&gt;dbca -silent -addInstance -nodeList rac3 -gdbName ocfs -instanceName ocf3 -sysDBAUserName sysdba -sysDBAPassword xxxxx&lt;br /&gt;&lt;br /&gt;If a dbca failed , try to add your new instance manually as follows&lt;br /&gt;&lt;br /&gt;Add a new Listener using netca&lt;br /&gt;Add a new Listener information in tnsnames.ora ( Remote Listener section)&lt;br /&gt;&lt;br /&gt;Edit the tnsnames.ora for all instances&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Prepare the database &lt;br /&gt;&lt;br /&gt;Create a new thread &lt;br /&gt;====================&lt;br /&gt; &lt;br /&gt; ALTER DATABASE &lt;br /&gt;  ADD LOGFILE THREAD 3&lt;br /&gt;    GROUP 5 ('/ocfs-disk/ocfs/redo05.log') size 50M,&lt;br /&gt;    GROUP 6 ('/ocfs-disk/ocfs/redo06.log') size 50M;&lt;br /&gt;    &lt;br /&gt;alter database enable thread 3;&lt;br /&gt;    &lt;br /&gt;Create a new Undo tablespace&lt;br /&gt;=============================&lt;br /&gt; &lt;br /&gt;create undo tablespace UNDOTBS3 datafile '/ocfs-disk/ocfs/undotbs03.dbf' size 100M autoextend off;&lt;br /&gt;&lt;br /&gt;Create init&lt;&gt;.ora and password file from the new node and assign the new thread and undo tablespace&lt;br /&gt;&lt;br /&gt;add the instance using srvctl&lt;br /&gt;==============================&lt;br /&gt;&lt;br /&gt;srvctl add instance -d ocfs -i ocfs3 -n rac3&lt;br /&gt;srvctl config database -d ocfs&lt;br /&gt;srvctl start instance -d ocfs -i ocfs3&lt;br /&gt;&lt;br /&gt;Ensure that the services_names is not set&lt;br /&gt;ALTER SYSTEM SET service_names='' SCOPE=SPFILE SID='*';&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3548473449565230775?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3548473449565230775'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3548473449565230775'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/09/adding-instance-on-rac-database-without.html' title='Adding instance on RAC database without dbca ( 10gR2)'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-7837023602006559578</id><published>2011-09-02T11:36:00.000+02:00</published><updated>2011-09-02T11:37:24.763+02:00</updated><title type='text'>NetManager does not display Advance Security Option Under Profile.</title><content type='html'> &lt;br /&gt;&lt;br /&gt;Add&lt;br /&gt;&lt;br /&gt;INSTALLEDCOMPONENTS=CLIENT,NET8,JAVAVM,SERVER,ANO &lt;br /&gt;&lt;br /&gt;under &lt;br /&gt;&lt;br /&gt;$ORACLE_HOME/network/tools/NetProperties   &lt;br /&gt;&lt;br /&gt;Restart netMgr&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-7837023602006559578?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7837023602006559578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7837023602006559578'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/09/netmanager-does-not-display-advance.html' title='NetManager does not display Advance Security Option Under Profile.'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3967685358941591374</id><published>2011-08-31T10:56:00.002+02:00</published><updated>2011-08-31T11:06:44.727+02:00</updated><title type='text'>Flashback table is not working with Materialized views</title><content type='html'>create table t ( id number);&lt;br /&gt;alter table t enable row movement;&lt;br /&gt;&lt;br /&gt;insert into t values (1);&lt;br /&gt;insert into t values (1);&lt;br /&gt;insert into t values (1);&lt;br /&gt;commit;&lt;br /&gt;select sys.dbms_flashback.get_system_change_number,min(id), max(id), count(*) from t;&lt;br /&gt;GET_SYSTEM_CHANGE_NUMBER    MIN(ID)    MAX(ID)   COUNT(*)&lt;br /&gt;------------------------ ---------- ---------- ----------&lt;br /&gt;               799014346          1          1          3&lt;br /&gt;update t set id=2;&lt;br /&gt;commit;&lt;br /&gt;select sys.dbms_flashback.get_system_change_number,min(id), max(id), count(*) from t;&lt;br /&gt;GET_SYSTEM_CHANGE_NUMBER    MIN(ID)    MAX(ID)   COUNT(*)&lt;br /&gt;------------------------ ---------- ---------- ----------&lt;br /&gt;               799014354          2          2          3&lt;br /&gt;&lt;br /&gt;create materialized view t_mv&lt;br /&gt;as&lt;br /&gt;select id from t;&lt;br /&gt;&lt;br /&gt;ORA-08194: Flashback Table operation is not allowed on materialized views&lt;br /&gt;flashback table t to scn 799014346;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;drop materialized view t_mv&lt;br /&gt;&lt;br /&gt;flashback table t to scn 799014346;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;How to flashback MVs and MV referred tables [ID 781112.1]&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3967685358941591374?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3967685358941591374'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3967685358941591374'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/flashback-table-is-not-working-with.html' title='Flashback table is not working with Materialized views'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2204617045839379057</id><published>2011-08-26T11:37:00.001+02:00</published><updated>2011-08-26T11:39:29.869+02:00</updated><title type='text'>Bulk load insert - Example</title><content type='html'>create or replace&lt;br /&gt;PROCEDURE MIKE_BULK_EXAMPLE&lt;br /&gt;AS &lt;br /&gt;  /*  Fetch into user defined PL/SQL table */&lt;br /&gt;TYPE CC IS TABLE OF TAB1%ROWTYPE INDEX BY BINARY_INTEGER;&lt;br /&gt;plsql_tab_TAB1 CC;&lt;br /&gt;&lt;br /&gt;BEGIN&lt;br /&gt;&lt;br /&gt; DBMS_MVIEW.REFRESH('TAB1','C');&lt;br /&gt;&lt;br /&gt; delete ccinfo;&lt;br /&gt; commit;&lt;br /&gt;&lt;br /&gt;SELECT &lt;br /&gt;  a,&lt;br /&gt;  b,&lt;br /&gt;  c,&lt;br /&gt;  d&lt;br /&gt;BULK COLLECT INTO plsql_tab_TAB1&lt;br /&gt;FROM TAB1;&lt;br /&gt;&lt;br /&gt;FOR ALL i IN plsql_tab_tab1.FIRST .. plsql_tab_tab1.LAST&lt;br /&gt;     INSERT MAIN_TABLE VALUES plsql_tab_tab(i);&lt;br /&gt;  COMMIT;&lt;br /&gt;commit;&lt;br /&gt;&lt;br /&gt;END MIKE_BULK_EXAMPLE;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2204617045839379057?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2204617045839379057'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2204617045839379057'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/bulk-load-insert-example.html' title='Bulk load insert - Example'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-6318398024679466391</id><published>2011-08-25T15:47:00.001+02:00</published><updated>2011-08-25T15:47:40.191+02:00</updated><title type='text'>Database high availability best practices 10g-11g</title><content type='html'>&lt;p class="MsoNormal"&gt;Database high availability best practices , for single-instance,RAC databases and data guard standby database.&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;ol style="margin-top:0in" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;Always      use spfile&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Multiplex      control files&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Set      control_file_record_keep_time long enough &lt;/li&gt;  &lt;li class="MsoNormal"&gt;Multiplex      production and standby redo log&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Log      checkpoint to the alert&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use auto      tune checkpoints&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Enable      archive mode and use flash recovery area&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Enable      flashback database&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Enable      block checking (db_block_checksum=true)&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use      automatic undo management &lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use      locally managed tablespace&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use      segment space management auto&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use re-sumable      space allocation&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use      database resource manager&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Register      all instances with remote Listeners&lt;/li&gt;  &lt;li class="MsoNormal"&gt;Use      Temporary tablespaces&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;Reference: Oracle database 10g : Real Application clusters (d17276gc10) p.11-16&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-6318398024679466391?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6318398024679466391'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6318398024679466391'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/database-high-availability-best.html' title='Database high availability best practices 10g-11g'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-730709920727325169</id><published>2011-08-22T11:22:00.000+02:00</published><updated>2011-08-22T11:23:57.688+02:00</updated><title type='text'>Evaluating 1Z0-007: Introduction to Oracle9i SQL®  Prepkits by ucertify</title><content type='html'>&lt;meta equiv="CONTENT-TYPE" content="text/html; charset=utf-8"&gt; 	&lt;title&gt;&lt;/title&gt; 	&lt;meta name="GENERATOR" content="LibreOffice 3.3  (Linux)"&gt; 	&lt;style type="text/css"&gt; 	&lt;!-- 		@page { margin: 0.79in } 		P { margin-bottom: 0.08in } 		A:link { so-language: zxx } 	--&gt; 	&lt;/style&gt;   &lt;p lang="en-GB" style="font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;&lt;span &gt;1. Simple, intuitive, user-friendly interface&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;2. One click dashboard makes it easy to find what you need&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;3. Guided learning steps you through the process of learning and test preparation, including crucial information about the exam format and test preparation tips&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;4. Reference Notes and Study Guides organized according to the actual test objectives&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;5. Numerous study aids, including study notes, flash cards,pop quizzes and more&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;6. Useful Technical Articles section contains information&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;written by industry experts and How To’s that help for easy look up to specific questions&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;7. Collaboration&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;8. Exhaustive practice questions and tests, starting with &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class="Apple-style-span" style="font-family: TimesNewRomanPSMT; font-size: 21px; "&gt;Diagnostic tests to determine your initial level&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;9. Learning and test modes&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;10. Customize your tests – decide how many questions,&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;combine one or more topics of your choice, quiz yourself&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;on a study note, increase the level of difficulty based on&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;your performance at any point in time, even create a test&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;based on the amount of time you have to take a test!&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; widows: 2; orphans: 2"&gt;&lt;span &gt; &lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;11. Feedback and assessment when you need it, including Gap Analysis that clearly indicate your areas of strength and weakness&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; widows: 2; orphans: 2"&gt;&lt;span &gt; &lt;/span&gt;&lt;/p&gt; &lt;p lang="en-GB" style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt; &lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;12. Full length Final Practice test that closely simulates those on the certification exam to gauge your preparation level for the actual exam&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; widows: 2; orphans: 2"&gt;&lt;span &gt; &lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; widows: 2; orphans: 2"&gt;&lt;span &gt; &lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; widows: 2; orphans: 2"&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="font-style: normal"&gt;&lt;span style="font-weight: normal"&gt;See more   at &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://www.ucertify.com/" target="_blank"&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="font-style: normal"&gt;&lt;span style="font-weight: normal"&gt;http://www.ucertify.com&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;span &gt;&lt;span &gt;&lt;span style="font-size: 16pt"&gt;&lt;span lang="en-US"&gt;&lt;span style="font-style: normal"&gt;&lt;span style="font-weight: normal"&gt; &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p style="margin-bottom: 0in; font-style: normal; font-weight: normal; widows: 2; orphans: 2"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-730709920727325169?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/730709920727325169'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/730709920727325169'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/evaluating-1z0-007-introduction-to.html' title='Evaluating 1Z0-007: Introduction to Oracle9i SQL®  Prepkits by ucertify'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3119503888329590664</id><published>2011-08-20T19:22:00.001+02:00</published><updated>2011-08-20T19:23:39.332+02:00</updated><title type='text'>Managing OCR and Voting disk in Oracle 10gR2 RAC Database</title><content type='html'>&lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Both files are managed by the crsd daemon. Voting disk is used for monitoring information for the members of the cluster. OCR is the cluster configuration file and contains everything about the cluster such as list of nodes , mapping between nodes and instances, application profiles and etc.Both file must be located on share device with RAW,CFS,OCFS filesystems. In&lt;span&gt;  &lt;/span&gt;10gR2 RAC Database these files can not be hosted in ASM.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:14.0pt;mso-ansi-language:EN-US"&gt;Manage OCR files&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;First determine the ocr and ocrmirror location&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Way 1:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[oracle@rac1 crs]$ &lt;/span&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ocrcheck&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Status of Oracle Cluster Registry is as follows :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Version&lt;span&gt;                  &lt;/span&gt;:&lt;span&gt;          &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Total space (kbytes)&lt;span&gt;     &lt;/span&gt;:&lt;span&gt;     &lt;/span&gt;262120&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Used space (kbytes)&lt;span&gt;      &lt;/span&gt;:&lt;span&gt;       &lt;/span&gt;4644&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Available space (kbytes) :&lt;span&gt;     &lt;/span&gt;257476&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;ID&lt;span&gt;                       &lt;/span&gt;: 1900957196&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;&lt;b&gt;Device/File Name&lt;span&gt;         &lt;/span&gt;: /ocfs-disk/ocr0.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                    &lt;/span&gt;Device/File integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;&lt;b&gt;Device/File Name&lt;span&gt;         &lt;/span&gt;: /ocfs-disk/ocr1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                    &lt;/span&gt;Device/File integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Cluster registry integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Way 2:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[oracle@rac1 ocfs-disk]$ &lt;/span&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;cat /etc/oracle/ocr.loc&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrconfig_loc&lt;b&gt;=/ocfs-disk/ocr0.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;ocrmirrorconfig_loc=&lt;b&gt;/ocfs-disk/ocr1.ora&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;local_only=FALSE&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Ensure you have backup&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[oracle@rac1 crs]$ &lt;/span&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ocrconfig -showbackup&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;rac1&lt;span&gt;     &lt;/span&gt;2011/07/07 22:00:25&lt;span&gt;     &lt;/span&gt;/oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;rac1&lt;span&gt;     &lt;/span&gt;2011/07/07 18:00:11&lt;span&gt;     &lt;/span&gt;/oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;rac1&lt;span&gt;     &lt;/span&gt;2011/07/07 14:00:10&lt;span&gt;     &lt;/span&gt;/oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;rac1&lt;span&gt;     &lt;/span&gt;2011/07/06 01:59:58&lt;span&gt;     &lt;/span&gt;/oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;rac1&lt;span&gt;     &lt;/span&gt;2011/06/27 02:43:25&lt;span&gt;     &lt;/span&gt;/oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Move OCR and OCR mirror in a new Location &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;The cluster is UP&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;*** su - oracle ***&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;cp /dev/null /ocfs-disk/OCR-DISKS/ocr1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;cp /dev/null /ocfs-disk/OCR-DISKS/ocr2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;*** su root ( using oracle's profile) ****&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ocrconfig -replace ocr /ocfs-disk/OCR-DISKS/ocr1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ocrconfig -replace ocrmirror /ocfs-disk/OCR-DISKS/ocr2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;chown root /ocfs-disk/OCR-DISKS/ocr1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;chown root /ocfs-disk/OCR-DISKS/ocr2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[oracle@rac2 ~]$ ocrcheck&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Status of Oracle Cluster Registry is as follows :&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;       &lt;/span&gt;&lt;span&gt;  &lt;/span&gt;Version&lt;span&gt;                  &lt;/span&gt;:&lt;span&gt;          &lt;/span&gt;2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Total space (kbytes)&lt;span&gt;     &lt;/span&gt;:&lt;span&gt;     &lt;/span&gt;262120&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Used space (kbytes)&lt;span&gt;      &lt;/span&gt;:&lt;span&gt;       &lt;/span&gt;4644&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Available space (kbytes) :&lt;span&gt;     &lt;/span&gt;257476&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;ID&lt;span&gt;                       &lt;/span&gt;: 1900957196&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Device/File Name&lt;span&gt;   &lt;/span&gt;&lt;span&gt;      &lt;/span&gt;: &lt;b&gt;/ocfs-disk/OCR-DISKS/ocr1.ora&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                    &lt;/span&gt;Device/File integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;         &lt;/span&gt;Device/File Name&lt;span&gt;         &lt;/span&gt;: &lt;b&gt;/ocfs-disk/OCR-DISKS/ocr2.ora&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;                                    &lt;/span&gt;Device/File integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt;   &lt;/span&gt;&lt;span&gt;      &lt;/span&gt;Cluster registry integrity check succeeded&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Post Actions after file Remove&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="1" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Remove the old files manually&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;ol style="margin-top:0cm" start="2" type="1"&gt;  &lt;li class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Export the new ocr &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/li&gt; &lt;/ol&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;*** su root ( using oracle's profile) ****&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;ocrconfig -export /ocfs-disk/OCR-EXPORTS/ocrExp.dmp &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:14.0pt;mso-ansi-language:EN-US"&gt;Manage Voting files&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;First determine the current voting disks location&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US" style="font-size:10.0pt;font-family:&amp;quot;Courier New&amp;quot;;mso-ansi-language:EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[root@rac2 OCR-EXPORTS]# crsctl query css votedisk&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;0.&lt;span&gt;     &lt;/span&gt;0&lt;span&gt;    &lt;/span&gt;/ocfs-disk/vot0.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;1.&lt;span&gt;     &lt;/span&gt;0&lt;span&gt;    &lt;/span&gt;/ocfs-disk/vot1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;2.&lt;span&gt;     &lt;/span&gt;0&lt;span&gt;    &lt;/span&gt;/ocfs-disk/vot2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;located 3 votedisk(s).&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Backup the voting disks &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;*** su - oracle ***&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;dd if=/ocfs-disk/vot0.ora of=/ocfs-disk/VOT-BACKUP/vot0.ora.dmp bs=4k&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;dd if=/ocfs-disk/vot1.ora of=/ocfs-disk/VOT-BACKUP/vot1.ora.dmp bs=4k&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;dd if=/ocfs-disk/vot2.ora of=/ocfs-disk/VOT-BACKUP/vot2.ora.dmp bs=4k&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Stop your rac system (databases,services, listener etc) using srvctl &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Stop your crs as root&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;crsctl stop crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;as oracle&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;touch /ocfs-disk/VOT-DISKS/vdisk1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;touch /ocfs-disk/VOT-DISKS/vdisk2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;Use the touch since the file system is OCFS2 &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl add css votedisk /ocfs-disk/VOT-DISKS/vdisk1.ora -force&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Now formatting voting disk: /ocfs-disk/VOT-DISKS/vdisk1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;successful addition of votedisk /ocfs-disk/VOT-DISKS/vdisk1.ora.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl add css votedisk /ocfs-disk/VOT-DISKS/vdisk2.ora -force&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Now formatting voting disk: /ocfs-disk/VOT-DISKS/vdisk2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;successful addition of votedisk /ocfs-disk/VOT-DISKS/vdisk2.ora.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl delete css votedisk /ocfs-disk/vot0.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl delete css votedisk /ocfs-disk/vot1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;crsctl delete css votedisk /ocfs-disk/vot2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;[oracle@rac2 ~]$ crsctl query css votedisk&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;0.&lt;span&gt;     &lt;/span&gt;0&lt;span&gt;    &lt;/span&gt;/ocfs-disk/VOT-DISKS/vdisk1.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;span&gt; &lt;/span&gt;1.&lt;span&gt;     &lt;/span&gt;0&lt;span&gt;    &lt;/span&gt;/ocfs-disk/VOT-DISKS/vdisk2.ora&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;crsctl start crs&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Metalink References &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span lang="EN-GB" style="font-size:10.0pt;font-family: Arial;color:black;mso-ansi-language:EN-GB"&gt;OCR / Vote disk Maintenance Operations: (ADD/REMOVE/REPLACE/MOVE) [ID 428681.1]&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span lang="EN-GB" style="font-size:10.0pt;font-family: Arial;color:black;mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span lang="EN-GB" style="font-size:10.0pt;font-family: Arial;color:black;mso-ansi-language:EN-GB"&gt;Failed to Start CRS stack After Adding a New Voting Disk [ID 460874.1]&lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;strong&gt;&lt;span lang="EN-GB" style="font-size:10.0pt;font-family: Arial;color:black;mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Web Reference &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;a href="http://www.idevelopment.info/data/Oracle/DBA_tips/Oracle10gRAC/CLUSTER_65.shtml#Relocate a Voting Disk"&gt;&lt;span lang="EN-GB"&gt;http://www.idevelopment.info/data/Oracle/DBA_tips/Oracle10gRAC/CLUSTER_65.shtml#Relocate a Voting Disk&lt;/span&gt;&lt;/a&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3119503888329590664?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3119503888329590664'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3119503888329590664'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/managing-ocr-and-voting-disk-in-oracle.html' title='Managing OCR and Voting disk in Oracle 10gR2 RAC Database'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-7922292303353611310</id><published>2011-08-04T17:14:00.000+02:00</published><updated>2011-08-04T17:15:38.103+02:00</updated><title type='text'>Remove or delete virtual disk from Virtual box</title><content type='html'>&lt;div&gt;Remove or delete virtual disk from Virtual box&lt;/div&gt;C:\Program Files\Oracle\VirtualBox&amp;gt;VBoxManage closemedium disk F:\VBOX-DISKS\LINUX5.vdi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-7922292303353611310?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7922292303353611310'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7922292303353611310'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/remove-or-delete-virtual-disk-from.html' title='Remove or delete virtual disk from Virtual box'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8694184875940375730</id><published>2011-08-01T15:28:00.001+02:00</published><updated>2011-08-01T15:28:21.400+02:00</updated><title type='text'>PL/SQL examples</title><content type='html'>&lt;div&gt;create or replace package name is&lt;/div&gt;&lt;div&gt;f_name varchar2(30):='Anonymous ';  --global varibles&lt;/div&gt;&lt;div&gt;l_name varchar2(30):='Anonymous ';  --global varibles&lt;/div&gt;&lt;div&gt;initial char := '_'; --global varibles&lt;/div&gt;&lt;div&gt;procedure name1;&lt;/div&gt;&lt;div&gt;procedure name1(f_name varchar2,last_name varchar2 default 'Amonymous',initial_v char:=initial);&lt;/div&gt;&lt;div&gt;procedure name1(f_name varchar2,l_name varchar2,initial char);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body name is&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;procedure name1 is&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('1-Name:'||f_name||' '||initial||' '||l_name);&lt;/div&gt;&lt;div&gt;end name1;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;procedure name1 (f_name varchar2,last_name varchar2 default 'Amonymous',initial_v char:=initial)is&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('2-Name:'||f_name||' '||initial_v||' '||l_name);&lt;/div&gt;&lt;div&gt;end name1;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;procedure name1(f_name varchar2,l_name varchar2,initial char)is&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('3-Name:'||f_name||' '||initial||' '||l_name);&lt;/div&gt;&lt;div&gt;end name1;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1;&lt;/div&gt;&lt;div&gt;1-Name:Anonymous  _ Anonymous&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1(f_name=&amp;gt;'MIKE',last_name=&amp;gt;'Georgiou',initial_v=&amp;gt;'A');&lt;/div&gt;&lt;div&gt;2-Name:MIKE A Anonymous&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1(f_name=&amp;gt;'MIKE',initial_v=&amp;gt;'A');&lt;/div&gt;&lt;div&gt;2-Name:MIKE A Anonymous&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1('MIKE',initial_v=&amp;gt;'A');&lt;/div&gt;&lt;div&gt;2-Name:MIKE A Anonymous&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1('MIKE',initial=&amp;gt;'A',f_name=&amp;gt;'GEORGIOU);&lt;/div&gt;&lt;div&gt;ERROR:&lt;/div&gt;&lt;div&gt;ORA-01756: quoted string not properly terminated&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1('MICHAEL');&lt;/div&gt;&lt;div&gt;2-Name:MICHAEL _ Anonymous&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1('MICHAEL','GEORGIOU','A');&lt;/div&gt;&lt;div&gt;BEGIN name.name1('MICHAEL','GEORGIOU','A'); END;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;      *&lt;/div&gt;&lt;div&gt;ERROR at line 1:&lt;/div&gt;&lt;div&gt;ORA-06550: line 1, column 7:&lt;/div&gt;&lt;div&gt;PLS-00307: too many declarations of 'NAME1' match this call&lt;/div&gt;&lt;div&gt;ORA-06550: line 1, column 7:&lt;/div&gt;&lt;div&gt;PL/SQL: Statement ignored&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec name.name1(f_name=&amp;gt;'MICHAEL',l_name=&amp;gt;'GEORGIOU',initial=&amp;gt;'A');&lt;/div&gt;&lt;div&gt;3-Name:MICHAEL A GEORGIOU&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package forwDecl is&lt;/div&gt;&lt;div&gt;procedure t2( id number );&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body forwDecl is&lt;/div&gt;&lt;div&gt;procedure t1( id number ); --forward declaration below&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;procedure t2( id number ) is&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;t1(10);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;procedure t1( id number ) is&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;dbms_output.put_line(id);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package hr_standard is&lt;/div&gt;&lt;div&gt;function to_char(id number) return number;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;create or replace package body hr_standard is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function to_char(id number) return number is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;return null;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package vat&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;t1 number :=1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;t2 number :=1;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body vat &lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;   t3 number ;&lt;/div&gt;&lt;div&gt;   begin&lt;/div&gt;&lt;div&gt;   &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;t1 :=10;&lt;/div&gt;&lt;div&gt;   &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;t2 :=20;&lt;/div&gt;&lt;div&gt;   &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;t3 :=30;&lt;/div&gt;&lt;div&gt;   end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number IS&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;id number;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; select max(employee_id) into id from employees;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; return id+1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insert into employees(EMPLOYEE_ID,FIRST_NAME,LAST_NAME,EMAIL,HIRE_DATE,JOB_ID) &lt;/div&gt;&lt;div&gt;values&lt;/div&gt;&lt;div&gt;(funct_test.em_max_id,'Michael','Georgiou','michaelg@netu.com.cy',sysdate,'AC_MGR');&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;select EMPLOYEE_ID,FIRST_NAME,LAST_NAME,EMAIL,HIRE_DATE,JOB_ID&lt;/div&gt;&lt;div&gt;from employees;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number IS&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;id number;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; select max(employee_id) into id from employees;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; commit;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; return id+1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insert into employees(EMPLOYEE_ID,FIRST_NAME,LAST_NAME,EMAIL,HIRE_DATE,JOB_ID) &lt;/div&gt;&lt;div&gt;values&lt;/div&gt;&lt;div&gt;(funct_test.em_max_id,'Michael','Georgiou','michaelg@netu.com.cy',sysdate,'AC_MGR');&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;select EMPLOYEE_ID,FIRST_NAME,LAST_NAME,EMAIL,HIRE_DATE,JOB_ID&lt;/div&gt;&lt;div&gt;from employees;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; insert into employees(EMPLOYEE_ID,FIRST_NAME,LAST_NAME,EMAIL,HIRE_DATE,JOB_ID)&lt;/div&gt;&lt;div&gt;  2  values&lt;/div&gt;&lt;div&gt;  3  (funct_test.em_max_id,'Michael','Georgiou','michaelg@netu.com.cy',sysdate,'AC_MGR');&lt;/div&gt;&lt;div&gt;(funct_test.em_max_id,'Michael','Georgiou','michaelg@netu.com.cy',sysdate,'AC_MGR')&lt;/div&gt;&lt;div&gt; *&lt;/div&gt;&lt;div&gt;ERROR at line 3:&lt;/div&gt;&lt;div&gt;ORA-14552: cannot perform a DDL, commit or rollback inside a query or DML&lt;/div&gt;&lt;div&gt;ORA-06512: at "HR.FUNCT_TEST", line 6&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body funct_test is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function em_max_id return number IS&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;id number;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; select max(employee_id) into id from employees;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; return id+1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;update employees&lt;/div&gt;&lt;div&gt;set employee_id=funct_test.em_max_id&lt;/div&gt;&lt;div&gt;where employee_id=207;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;commit;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; update employees&lt;/div&gt;&lt;div&gt;  2  set employee_id=funct_test.em_max_id&lt;/div&gt;&lt;div&gt;  3  where employee_id=207;&lt;/div&gt;&lt;div&gt;set employee_id=funct_test.em_max_id&lt;/div&gt;&lt;div&gt;                *&lt;/div&gt;&lt;div&gt;ERROR at line 2:&lt;/div&gt;&lt;div&gt;ORA-04091: table HR.EMPLOYEES is mutating, trigger/function may not see it&lt;/div&gt;&lt;div&gt;ORA-06512: at "HR.FUNCT_TEST", line 5&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;update employees&lt;/div&gt;&lt;div&gt;set employee_id=funct_test.em_max_id&lt;/div&gt;&lt;div&gt;where employee_id=207;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package pkg_state&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt; PRAGMA SERIALLY_REUSABLE;--must be declared first&lt;/div&gt;&lt;div&gt; --tha dosei tin time sta variables tha ginei to job&lt;/div&gt;&lt;div&gt; -- kai amesos meta ta variable tha ginoun set opos itan&lt;/div&gt;&lt;div&gt; a number;&lt;/div&gt;&lt;div&gt; b number;&lt;/div&gt;&lt;div&gt; procedure print;&lt;/div&gt;&lt;div&gt; procedure setA(a1 number);&lt;/div&gt;&lt;div&gt; procedure setB(b1 number);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body pkg_state&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PRAGMA SERIALLY_REUSABLE;--must be declared first&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;procedure print is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('a:'||a);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('b:'||b);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; procedure setA(a1 number) is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; a :=a1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; print;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; procedure setB(b1 number) is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; b :=b1;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; print;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec pkg_state.setA(10);    --First call&lt;/div&gt;&lt;div&gt;a:10&lt;/div&gt;&lt;div&gt;b:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;EKTORAS&amp;gt; exec pkg_state.print;     --first call&lt;/div&gt;&lt;div&gt;a:&lt;/div&gt;&lt;div&gt;b:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package pkg_state&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt; a number;&lt;/div&gt;&lt;div&gt; b number;&lt;/div&gt;&lt;div&gt; procedure print;&lt;/div&gt;&lt;div&gt; procedure setA(a1 number);&lt;/div&gt;&lt;div&gt; procedure setB(b1 number);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body pkg_state&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;procedure print is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('a:'||a);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('b:'||b);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; procedure setA(a1 number) is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; a :=a1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; print;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; procedure setB(b1 number) is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; b :=b1;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; print;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; a:=0;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; b:=0;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt; &lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create table mike_sequences ( sequence_name varchar2(30)unique,increment_by number default 1,currval number);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package seq_pkg&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt; a number:=0;&lt;/div&gt;&lt;div&gt; session_id :=0;&lt;/div&gt;&lt;div&gt; function nextval(name mike_sequences.sequence_name%type)return number;&lt;/div&gt;&lt;div&gt; function currval(name mike_sequences.sequence_name%type)return number;&lt;/div&gt;&lt;div&gt; procedure setSequence(sequence_name varchar2,increment_by number default 1);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body seq_pkg&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function currval(name mike_sequences.sequence_name%type);&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function nextval(name mike_sequences.sequence_name%type);&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function nextval(name mike_sequences.sequence_name%type)return number is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;       if session_id = 0 then&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        a:=currval(name)+1;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        return a&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;       else&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        return a := a +1 ;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;       end if;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;       &lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;function currval(name mike_sequences.sequence_name%type)return number is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;current_value number ;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;if session_id = 0 then&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;select currval into current_value from mike_sequences where sequence_name=Upper(name);&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;session_id := SYS_CONTEXT('USERENV','SESSIONID');&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;return current_value;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;else&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;a := a +1 ;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;e mike_sequences set currval=a where sequence_name=Upper(name);&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;commit;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;return a;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;end if;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;procedure setSequence(sequence_name varchar2,increment_by number default 1)is&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;null;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CONNECT Scott/Tiger &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;DROP PACKAGE Sr_pkg;&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE PACKAGE Sr_pkg IS&lt;/div&gt;&lt;div&gt;   PRAGMA SERIALLY_REUSABLE;&lt;/div&gt;&lt;div&gt;   TYPE Str_table_type IS TABLE OF VARCHAR2(200) INDEX BY BINARY_INTEGER;&lt;/div&gt;&lt;div&gt;   Num     NUMBER        := 10;&lt;/div&gt;&lt;div&gt;   Str     VARCHAR2(200) := 'default-init-str';&lt;/div&gt;&lt;div&gt;   Str_tab STR_TABLE_TYPE;&lt;/div&gt;&lt;div&gt;   &lt;/div&gt;&lt;div&gt;    PROCEDURE Print_pkg;&lt;/div&gt;&lt;div&gt;    PROCEDURE Init_and_print_pkg(N NUMBER, V VARCHAR2);&lt;/div&gt;&lt;div&gt;END Sr_pkg;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE OR REPLACE PACKAGE BODY Sr_pkg IS&lt;/div&gt;&lt;div&gt;   -- the body is required to have the pragma because the&lt;/div&gt;&lt;div&gt;  -- specification of this package has the pragma&lt;/div&gt;&lt;div&gt;  PRAGMA SERIALLY_REUSABLE;&lt;/div&gt;&lt;div&gt;   PROCEDURE Print_pkg IS&lt;/div&gt;&lt;div&gt;   BEGIN&lt;/div&gt;&lt;div&gt;      DBMS_OUTPUT.PUT_LINE('num: ' || Sr_pkg.Num);&lt;/div&gt;&lt;div&gt;      DBMS_OUTPUT.PUT_LINE('str: ' || Sr_pkg.Str);&lt;/div&gt;&lt;div&gt;      DBMS_OUTPUT.PUT_LINE('number of table elems: ' || Sr_pkg.Str_tab.Count);&lt;/div&gt;&lt;div&gt;      FOR i IN 1..Sr_pkg.Str_tab.Count LOOP&lt;/div&gt;&lt;div&gt;         DBMS_OUTPUT.PUT_LINE(Sr_pkg.Str_tab(i));&lt;/div&gt;&lt;div&gt;      END LOOP;&lt;/div&gt;&lt;div&gt;   END;&lt;/div&gt;&lt;div&gt;  &lt;/div&gt;&lt;div&gt;  PROCEDURE Init_and_print_pkg(N NUMBER, V VARCHAR2) IS&lt;/div&gt;&lt;div&gt;   BEGIN&lt;/div&gt;&lt;div&gt;   -- init the package globals&lt;/div&gt;&lt;div&gt;      Sr_pkg.Num := N;&lt;/div&gt;&lt;div&gt;      Sr_pkg.Str := V;&lt;/div&gt;&lt;div&gt;      FOR i IN 1..n LOOP&lt;/div&gt;&lt;div&gt;         Sr_pkg.Str_tab(i) := V || ' ' || i;&lt;/div&gt;&lt;div&gt;   END LOOP;&lt;/div&gt;&lt;div&gt;   -- print the package&lt;/div&gt;&lt;div&gt;   Print_pkg;&lt;/div&gt;&lt;div&gt;   END;&lt;/div&gt;&lt;div&gt; END Sr_pkg;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SET SERVEROUTPUT ON;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Rem SR package access in a CALL:&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;   -- initialize and print the package&lt;/div&gt;&lt;div&gt;   DBMS_OUTPUT.PUT_LINE('Initing and printing pkg state..');&lt;/div&gt;&lt;div&gt;   Sr_pkg.Init_and_print_pkg(4, 'abracadabra');&lt;/div&gt;&lt;div&gt;   -- print it in the same call to the server.&lt;/div&gt;&lt;div&gt;   -- we should see the initialized values.&lt;/div&gt;&lt;div&gt;   DBMS_OUTPUT.PUT_LINE('Printing package state in the same CALL...');&lt;/div&gt;&lt;div&gt;   Sr_pkg.Print_pkg;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Initing and printing pkg state..&lt;/div&gt;&lt;div&gt;num: 4&lt;/div&gt;&lt;div&gt;str: abracadabra&lt;/div&gt;&lt;div&gt;number of table elems: 4&lt;/div&gt;&lt;div&gt;abracadabra 1&lt;/div&gt;&lt;div&gt;abracadabra 2&lt;/div&gt;&lt;div&gt;abracadabra 3&lt;/div&gt;&lt;div&gt;abracadabra 4&lt;/div&gt;&lt;div&gt;Printing package state in the same CALL...&lt;/div&gt;&lt;div&gt;num: 4&lt;/div&gt;&lt;div&gt;str: abracadabra&lt;/div&gt;&lt;div&gt;number of table elems: 4&lt;/div&gt;&lt;div&gt;abracadabra 1&lt;/div&gt;&lt;div&gt;abracadabra 2&lt;/div&gt;&lt;div&gt;abracadabra 3&lt;/div&gt;&lt;div&gt;abracadabra 4&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;REM SR package access in subsequent CALL:&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;   -- print the package in the next call to the server. &lt;/div&gt;&lt;div&gt;   -- We should that the package state is reset to the initial (default) values.&lt;/div&gt;&lt;div&gt;   DBMS_OUTPUT.PUT_LINE('Printing package state in the next CALL...');&lt;/div&gt;&lt;div&gt;   Sr_pkg.Print_pkg;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;Statement processed.&lt;/div&gt;&lt;div&gt;Printing package state in the next CALL...&lt;/div&gt;&lt;div&gt;num: 10&lt;/div&gt;&lt;div&gt;str: default-init-str&lt;/div&gt;&lt;div&gt;number of table elems: 0&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;drop table customer purge;&lt;/div&gt;&lt;div&gt;create table customer &lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;customerid number,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;email varchar2(100)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;tablespace users;&lt;/div&gt;&lt;div&gt;create unique index customer_customerid_pk on customer(customerid) tablespace tools;&lt;/div&gt;&lt;div&gt;alter table customer &lt;/div&gt;&lt;div&gt;add constraint customer_customerid_pk primary key(customerid);&lt;/div&gt;&lt;div&gt;alter table customer &lt;/div&gt;&lt;div&gt;add constraint customer_email_nn check (email &amp;lt;&amp;gt; null);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;comment on table customer is 'The customer table contains information for demo customers';&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create sequence key_customerid;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;insert into customer values(key_customerid.nextval,'michaelg@netu.com.cy');&lt;/div&gt;&lt;div&gt;insert into customer values(key_customerid.nextval,'andreas@netu.com.cy');&lt;/div&gt;&lt;div&gt;insert into customer values(key_customerid.nextval,'katerina@netu.com.cy');&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;set serveroutput on size 1000000&lt;/div&gt;&lt;div&gt;create or replace procedure selectCustomer &lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;cust_data_rec customer%ROWTYPE;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;customerid customer.customerid%type;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;email customer.email%type;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;n number:=0;&lt;/div&gt;&lt;div&gt;cursor cust_data is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;select customerid,email from customer;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;if not cust_data%isopen then&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;open cust_data;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end if;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Loop&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;n:=n+1;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;        fetch cust_data into customerid,email;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;exit when cust_data%notfound;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;dbms_output.put_line('['||n||'] '||customerid||' '||email);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end loop;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;if cust_data%isopen then&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;close cust_data;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end if;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;EXCEPTION&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;WHEN OTHERS THEN&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;dbms_output.put_line('error:');&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package customer_pkg&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;type all_customer is ref cursor;&lt;/div&gt;&lt;div&gt;procedure findAllCustomers(customers OUT all_customer);&lt;/div&gt;&lt;div&gt;procedure printCustomers;&lt;/div&gt;&lt;div&gt;--procedure findByPrimaryKey(customerid IN number ,customers OUT all_customer);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;create or replace package body customer_pkg&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;   procedure findAllCustomers(customers OUT all_customer)&lt;/div&gt;&lt;div&gt;   is&lt;/div&gt;&lt;div&gt;   begin&lt;/div&gt;&lt;div&gt;      open customers for select * from customer;&lt;/div&gt;&lt;div&gt;   end;&lt;/div&gt;&lt;div&gt;   &lt;/div&gt;&lt;div&gt;   procedure printCustomers&lt;/div&gt;&lt;div&gt;   is&lt;/div&gt;&lt;div&gt;   tmp_customer all_customer;&lt;/div&gt;&lt;div&gt;   all_customers customer%rowtype;&lt;/div&gt;&lt;div&gt;   n number;&lt;/div&gt;&lt;div&gt;   begin&lt;/div&gt;&lt;div&gt;      findAllCustomers(tmp_customer);&lt;/div&gt;&lt;div&gt;      dbms_output.put_line('Printing customers  '||tmp_customer%rowcount);&lt;/div&gt;&lt;div&gt;       loop&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;fetch tmp_customer into all_customers;&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;exit when tmp_customer%notfound;&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line(all_customers.customerid||':'||all_customers.email);&lt;/div&gt;&lt;div&gt;      end loop;&lt;/div&gt;&lt;div&gt;   end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;declare &lt;/div&gt;&lt;div&gt;type a is table of char(3200) index by binary_integer;&lt;/div&gt;&lt;div&gt;data a;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;for i IN 1..10 loop&lt;/div&gt;&lt;div&gt;data(i):= 'abcd';&lt;/div&gt;&lt;div&gt;end loop;&lt;/div&gt;&lt;div&gt;for i IN 1..10 loop&lt;/div&gt;&lt;div&gt;dbms_output.put_line(data(i));&lt;/div&gt;&lt;div&gt;end loop;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;FOR i IN (SElect * from customer) LOOP&lt;/div&gt;&lt;div&gt;   dbms_output.put_line(i.email);&lt;/div&gt;&lt;div&gt;  END LOOP;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--wrap pl/sql&lt;/div&gt;&lt;div&gt;create or replace package customer_pkg2&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;type all_customer is ref cursor;&lt;/div&gt;&lt;div&gt;procedure findAllCustomers(customers OUT all_customer);&lt;/div&gt;&lt;div&gt;procedure printCustomers;&lt;/div&gt;&lt;div&gt;--procedure findByPrimaryKey(customerid IN number ,customers OUT all_customer);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace package body customer_pkg2&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;   procedure findAllCustomers(customers OUT all_customer)&lt;/div&gt;&lt;div&gt;   is&lt;/div&gt;&lt;div&gt;   begin&lt;/div&gt;&lt;div&gt;      open customers for select * from customer;&lt;/div&gt;&lt;div&gt;   end;&lt;/div&gt;&lt;div&gt;   &lt;/div&gt;&lt;div&gt;   procedure printCustomers&lt;/div&gt;&lt;div&gt;   is&lt;/div&gt;&lt;div&gt;   tmp_customer all_customer;&lt;/div&gt;&lt;div&gt;   all_customers customer%rowtype;&lt;/div&gt;&lt;div&gt;   n number;&lt;/div&gt;&lt;div&gt;   begin&lt;/div&gt;&lt;div&gt;      findAllCustomers(tmp_customer);&lt;/div&gt;&lt;div&gt;      dbms_output.put_line('Printing customers  '||tmp_customer%rowcount);&lt;/div&gt;&lt;div&gt;       loop&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;fetch tmp_customer into all_customers;&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;exit when tmp_customer%notfound;&lt;/div&gt;&lt;div&gt;      &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line(all_customers.customerid||':'||all_customers.email);&lt;/div&gt;&lt;div&gt;      end loop;&lt;/div&gt;&lt;div&gt;   end;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--dbms_output&lt;/div&gt;&lt;div&gt;set serveroutput on size 1000000&lt;/div&gt;&lt;div&gt;declare&lt;/div&gt;&lt;div&gt;buffer varchar(100);&lt;/div&gt;&lt;div&gt;status number;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;dbms_output.put_line('Write a line');&lt;/div&gt;&lt;div&gt;dbms_output.get_line(buffer,status);&lt;/div&gt;&lt;div&gt;dbms_output.put_line('Your line is :'||buffer);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;undefine username&lt;/div&gt;&lt;div&gt;set verify off&lt;/div&gt;&lt;div&gt;define username&lt;/div&gt;&lt;div&gt;ACCEPT username PROMPT "Username:"&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;dbms_output.put_line('Username from check is:'||'&amp;amp;username');&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;define username&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;--------&lt;/div&gt;&lt;div&gt;/*&lt;/div&gt;&lt;div&gt;UTL_FILE.GET_LINE (&lt;/div&gt;&lt;div&gt;   file        IN  FILE_TYPE,&lt;/div&gt;&lt;div&gt;   buffer      OUT VARCHAR2,&lt;/div&gt;&lt;div&gt;   linesize    IN  NUMBER,&lt;/div&gt;&lt;div&gt;   len         IN  PLS_INTEGER DEFAULT NULL);&lt;/div&gt;&lt;div&gt;*/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;--UTL_FILE&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace procedure write_file&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;file utl_file.file_type;&lt;/div&gt;&lt;div&gt;begin&lt;/div&gt;&lt;div&gt;file:=utl_file.fopen('ORA_DIR2','test.txt','w');&lt;/div&gt;&lt;div&gt;utl_file.put_line(file,'first line');&lt;/div&gt;&lt;div&gt;utl_file.new_line(file);&lt;/div&gt;&lt;div&gt;utl_file.put_line(file,'Second line');&lt;/div&gt;&lt;div&gt;utl_file.new_line(file);&lt;/div&gt;&lt;div&gt;utl_file.fclose(file);&lt;/div&gt;&lt;div&gt;file:=utl_file.fopen('ORA_DIR2','test.txt','a');&lt;/div&gt;&lt;div&gt;utl_file.put_line(file,'Thrird line');&lt;/div&gt;&lt;div&gt;utl_file.new_line(file);&lt;/div&gt;&lt;div&gt;utl_file.fclose(file);&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create or replace procedure read_file&lt;/div&gt;&lt;div&gt;is&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;file utl_file.file_type; --file handler&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;buffer char(1000);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;--EOF boolean:=false;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;if not utl_file.is_open(file) then&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;file := utl_file.fopen('ORA_DIR2','test.txt','R',32767);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;end if;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;loop&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;begin&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;utl_file.get_Line(file,buffer,32767);&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;dbms_output.put_line(buffer);&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;--exit when EOF=true;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;exception&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;when no_data_found then&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;--EOF:=true;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;     &lt;/span&gt;exit;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;    &lt;/span&gt;end;&lt;/div&gt;&lt;div&gt; &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;end loop;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;if utl_file.is_open(file) then&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;utl_file.fclose(file);&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;end if;&lt;/div&gt;&lt;div&gt;        &lt;/div&gt;&lt;div&gt;        exception&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;when utl_file.INVALID_FILEHANDLE then&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('INVALID_FILEHANDLE');&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;when utl_file.INVALID_OPERATION then&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;dbms_output.put_line('INVALID_OPERATION');&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;when utl_file.READ_ERROR then &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;dbms_output.put_line('READ_ERROR');&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;when others then&lt;/div&gt;&lt;div&gt;        &lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;dbms_output.put_line('Unknow error');&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;end;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SET SERVEROUTPUT ON SIZE 100000&lt;/div&gt;&lt;div&gt;BEGIN                       -- Generates:&lt;/div&gt;&lt;div&gt; htp.htmlOpen;   ---------&amp;gt;&lt;/div&gt;&lt;div&gt; htp.headOpen;   ---------&amp;gt;&lt;/div&gt;&lt;div&gt; htp.title('Welcome');  --&amp;gt;&lt;/div&gt;&lt;div&gt; htp.headClose;  ---------&amp;gt;&lt;/div&gt;&lt;div&gt; htp.bodyOpen;   ---------&amp;gt;&lt;/div&gt;&lt;div&gt; htp.print('My home page');&lt;/div&gt;&lt;div&gt; htp.bodyClose;  ---------&amp;gt;&lt;/div&gt;&lt;div&gt; htp.htmlClose;  ---------&amp;gt;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;EXECUTE OWA_UTIL.SHOWPAGE&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt; UTL_MAIL.SEND('oracle@tom.domain.local','oracle@tom.domain.local',&lt;/div&gt;&lt;div&gt;   message =&amp;gt; 'For latest downloads visit OTN',&lt;/div&gt;&lt;div&gt;   subject =&amp;gt; 'OTN Newsletter');&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;DECLARE&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;file utl_file.file_type;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CURSOR RES IS SELECT ID,ID2 FROM A;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;BEGIN&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;file:=utl_file.fopen('ORA_DIR','test.txt','w');&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;FOR I IN RES LOOP&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--utl_file.put_line(file,I.ID);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;NULL;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;END LOOP;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--utl_file.fclose(file);&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;&lt;/div&gt;&lt;div&gt;END;&lt;/div&gt;&lt;div&gt;/&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8694184875940375730?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8694184875940375730'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8694184875940375730'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/plsql-examples.html' title='PL/SQL examples'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3675319435445778758</id><published>2011-08-01T15:25:00.001+02:00</published><updated>2011-08-01T15:25:28.701+02:00</updated><title type='text'>Transportable tablespaces in Oracle 10g</title><content type='html'>&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;|                                                                                           |&lt;/div&gt;&lt;div&gt;|  &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;Transportable tablespaces in Oracle 10g                             |&lt;/div&gt;&lt;div&gt;|                                                                                           |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;| Techonology : Oracle database                                                             |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;| Created : 11/7/2007                                                                       |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SYS@ORCL &amp;gt; exec dbms_tts.transport_set_check('TBS1',TRUE,TRUE);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PL/SQL procedure successfully completed.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SYS@ORCL &amp;gt; select * from transport_set_violations;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;VIOLATIONS&lt;/div&gt;&lt;div&gt;--------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;Sys owned object  SYS_C007034 in tablespace TBS1 not allowed in pluggable set&lt;/div&gt;&lt;div&gt;Sys owned object  DATAE in tablespace TBS1 not allowed in pluggable set&lt;/div&gt;&lt;div&gt;Sys owned object  SYS_IL0000021148C00002$$ in tablespace TBS1 not allowed in plu&lt;/div&gt;&lt;div&gt;ggable set&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Sys owned object  SYS_LOB0000021148C00002$$ in tablespace TBS1 not allowed in pl&lt;/div&gt;&lt;div&gt;uggable set&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;-----------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;[oracle@tom datafiles]$ expdp "'sys/oracle as sysdba'" transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Export: Release 10.2.0.2.0 - Production on Thursday, 12 July, 2007 1:08:54&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;With the Partitioning, OLAP and Data Mining options&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;Starting "SYS"."SYS_EXPORT_TRANSPORTABLE_01":  'sys/******** AS SYSDBA' transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;ORA-39123: Data Pump transportable tablespace job aborted&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;ORA-29341: The transportable set is not self-contained&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;-----------------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[oracle@tom datafiles]$  expdp system/oracle transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Export: Release 10.2.0.2.0 - Production on Thursday, 12 July, 2007 1:16:42&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production&lt;/div&gt;&lt;div&gt;With the Partitioning, OLAP and Data Mining options&lt;/div&gt;&lt;div&gt;Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01":  system/******** transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/TABLE&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/CONSTRAINT/CONSTRAINT&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK&lt;/div&gt;&lt;div&gt;Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;/div&gt;&lt;div&gt;******************************************************************************&lt;/div&gt;&lt;div&gt;Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is:&lt;/div&gt;&lt;div&gt;  /home/oracle/tbs.dmp&lt;/div&gt;&lt;div&gt;Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at 01:18:21&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Name (192.168.0.2:oracle): ftp&lt;/div&gt;&lt;div&gt;331 Password required for ftp.&lt;/div&gt;&lt;div&gt;Password:&lt;/div&gt;&lt;div&gt;230 User ftp logged in.&lt;/div&gt;&lt;div&gt;Remote system type is UNIX.&lt;/div&gt;&lt;div&gt;Using binary mode to transfer files.&lt;/div&gt;&lt;div&gt;ftp&amp;gt; bin&lt;/div&gt;&lt;div&gt;200 Type set to I.&lt;/div&gt;&lt;div&gt;ftp&amp;gt; put tbs1_01.dbf&lt;/div&gt;&lt;div&gt;local: tbs1_01.dbf remote: tbs1_01.dbf&lt;/div&gt;&lt;div&gt;227 Entering Passive Mode (192,168,0,2,9,101).&lt;/div&gt;&lt;div&gt;150 Opening data connection for tbs1_01.dbf.&lt;/div&gt;&lt;div&gt;226 File received ok&lt;/div&gt;&lt;div&gt;10493952 bytes sent in 9.2 seconds (1.1e+03 Kbytes/s)&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;RMAN&amp;gt; convert datafile 'tbs1_01.dbf'&lt;/div&gt;&lt;div&gt;2&amp;gt; from platform='Linux IA (32-bit)'&lt;/div&gt;&lt;div&gt;3&amp;gt; db_file_name_convert="ts","win";&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Starting backup at 12-JUL-07&lt;/div&gt;&lt;div&gt;using channel ORA_DISK_1&lt;/div&gt;&lt;div&gt;channel ORA_DISK_1: starting datafile conversion&lt;/div&gt;&lt;div&gt;input filename=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\TBS1_01.DBF&lt;/div&gt;&lt;div&gt;converted datafile=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORCL_I-1121005791_TS-TBS1_FNO-7_&lt;/div&gt;&lt;div&gt;channel ORA_DISK_1: datafile conversion complete, elapsed time: 00:00:02&lt;/div&gt;&lt;div&gt;Finished backup at 12-JUL-07&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C:\&amp;gt;impdp system/oracle directory=data_pump_dir dumpfile=tbs.dmp transport_datafiles=tbs_win01.dbf&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Import: Release 10.2.0.1.0 - Production on Thursday, 12 July, 2007 1:49:14&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/div&gt;&lt;div&gt;With the Partitioning, OLAP and Data Mining options&lt;/div&gt;&lt;div&gt;Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;/div&gt;&lt;div&gt;Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** directory=data_pump_dir dumpfile=tbs.dmp transport_d&lt;/div&gt;&lt;div&gt;atafiles=tbs_win01.dbf&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;/div&gt;&lt;div&gt;ORA-39123: Data Pump transportable tablespace job aborted&lt;/div&gt;&lt;div&gt;ORA-29342: user MICHAEL does not exist in the database&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" stopped due to fatal error at 01:49:20&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;SQL&amp;gt; create user michael identified by michael;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;User created.&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C:\&amp;gt;create user michael identified by michael;&lt;/div&gt;&lt;div&gt;'create' is not recognized as an internal or external command,&lt;/div&gt;&lt;div&gt;operable program or batch file.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;C:\&amp;gt;impdp system/oracle directory=data_pump_dir dumpfile=tbs.dmp transport_datafiles=tbs_win01.dbf&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Import: Release 10.2.0.1.0 - Production on Thursday, 12 July, 2007 1:50:07&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/div&gt;&lt;div&gt;With the Partitioning, OLAP and Data Mining options&lt;/div&gt;&lt;div&gt;Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;/div&gt;&lt;div&gt;Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** directory=data_pump_dir dumpfile=tbs.dmp transport_d&lt;/div&gt;&lt;div&gt;atafiles=tbs_win01.dbf&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/TABLE&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/CONSTRAINT/CONSTRAINT&lt;/div&gt;&lt;div&gt;Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK&lt;/div&gt;&lt;div&gt;Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at 01:50:12&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;-------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;SQL&amp;gt; select tablespace_name from dba_tablespaces;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;TABLESPACE_NAME&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;------------------------------&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;SYSTEM&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;UNDOTBS1&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;SYSAUX&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;TEMP&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;USERS&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;TBS1&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;SQL&amp;gt; alter tablespace tbs1 read write;&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;--------------------------------------------------------------------------&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3675319435445778758?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3675319435445778758'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3675319435445778758'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/transportable-tablespaces-in-oracle-10g.html' title='Transportable tablespaces in Oracle 10g'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-5003606090542371455</id><published>2011-08-01T15:24:00.001+02:00</published><updated>2011-08-01T15:24:38.395+02:00</updated><title type='text'>Partitioning in 10g</title><content type='html'>&lt;div&gt;+----------------------------------                                                          |&lt;/div&gt;&lt;div&gt;|  &lt;span class="Apple-tab-span" style="white-space:pre"&gt;   &lt;/span&gt;Partitioning in 10g                                                 |&lt;/div&gt;&lt;div&gt;|                                                                                           |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;| Techonology : Oracle database  10.2.0                                                     |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;| Created : 28/7/2007                                                                       |&lt;/div&gt;&lt;div&gt;+-------------------------------------------------------------------------------------------+&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Types of Partitioning&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Range&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Hash&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;Composite&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;List&lt;/div&gt;&lt;div&gt;Range&lt;/div&gt;&lt;div&gt;=====&lt;/div&gt;&lt;div&gt;Based on range of the partition key values.&lt;/div&gt;&lt;div&gt;It is used most commonly for dates.&lt;/div&gt;&lt;div&gt;Range partitioning is defined by the PARTITION BY RANGE(partition_key_column), and for&lt;/div&gt;&lt;div&gt;each sub partition in VALUES LESS THAN(value_list).The literal MAXVALUE represent a &lt;/div&gt;&lt;div&gt;virtual infinite value that sorts higher that any other value for the data type &lt;/div&gt;&lt;div&gt;including the null value.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;Range&lt;/div&gt;&lt;div&gt;=====&lt;/div&gt;&lt;div&gt;( Partitioning historical data )&lt;/div&gt;&lt;div&gt;The example below shows how to create a table with range partitioning&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK PRIMARY KEY (PROFILE_ID,ACCESS_DATE)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;PARTITION BY RANGE(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P1 VALUES LESS THAN ( TO_DATE('01-01-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P2 VALUES LESS THAN ( TO_DATE('01-03-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P3 VALUES LESS THAN ( TO_DATE('01-06-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P4 VALUES LESS THAN ( TO_DATE('01-09-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P5 VALUES LESS THAN ( TO_DATE('01-12-2007','DD-MM-YYYY'))&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The example below shows how to create a INDEX with range partitioning on a normal&lt;/div&gt;&lt;div&gt;table&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY2&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK2 PRIMARY KEY (PROFILE_ID)&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE INDEX PROFILE_HISTORY2_INDX&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ON PROFILE_HISTORY2(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;GLOBAL&lt;/div&gt;&lt;div&gt;PARTITION BY RANGE(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P1 VALUES LESS THAN ( TO_DATE('01-01-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P2 VALUES LESS THAN ( TO_DATE('01-03-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P3 VALUES LESS THAN ( TO_DATE('01-06-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P4 VALUES LESS THAN ( TO_DATE('01-09-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P5 VALUES LESS THAN (MAXVALUE)&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The example below shows how to create a INDEX with range partitioning on a partition&lt;/div&gt;&lt;div&gt;table&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt;  &lt;/span&gt;&lt;/div&gt;&lt;div&gt;CREATE INDEX PROFILE_HISTORY_INDX&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ON PROFILE_HISTORY(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;GLOBAL&lt;/div&gt;&lt;div&gt;PARTITION BY RANGE(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P1 VALUES LESS THAN ( TO_DATE('01-01-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P2 VALUES LESS THAN ( TO_DATE('01-03-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P3 VALUES LESS THAN ( TO_DATE('01-06-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P4 VALUES LESS THAN ( TO_DATE('01-09-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P5 VALUES LESS THAN (MAXVALUE)&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Local partition index&lt;/div&gt;&lt;div&gt;=========================&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;The Local partitiom index is created by specified the literal LOCAL.&lt;/div&gt;&lt;div&gt;The local index is created based on partition table.&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY3&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK3 PRIMARY KEY (PROFILE_ID)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;PARTITION BY RANGE(ACCESS_DATE)&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P1 VALUES LESS THAN ( TO_DATE('01-01-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P2 VALUES LESS THAN ( TO_DATE('01-03-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P3 VALUES LESS THAN ( TO_DATE('01-06-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P4 VALUES LESS THAN ( TO_DATE('01-09-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P5 VALUES LESS THAN ( TO_DATE('01-12-2007','DD-MM-YYYY'))&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;create index PROFILE_HISTORY3_indx on PROFILE_HISTORY3(PROFILE_ID,ACCESS_DATE) &lt;/div&gt;&lt;div&gt;LOCAL; &lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;SQL&amp;gt; select partition_name &lt;/div&gt;&lt;div&gt;from dba_ind_partitions &lt;/div&gt;&lt;div&gt;where index_name='PROFILE_HISTORY3_INDX';&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;PARTITION_NAME&lt;/div&gt;&lt;div&gt;------------------------------&lt;/div&gt;&lt;div&gt;P1&lt;/div&gt;&lt;div&gt;P2&lt;/div&gt;&lt;div&gt;P3&lt;/div&gt;&lt;div&gt;P4&lt;/div&gt;&lt;div&gt;P5&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY4&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CUSTOMER_ID   NUMBER,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK4 PRIMARY KEY (PROFILE_ID)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;PARTITION BY RANGE(ACCESS_DATE,CUSTOMER_ID)&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P1 VALUES LESS THAN ( TO_DATE('01-01-2007','DD-MM-YYYY')AND CUSTOMER_ID 10),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P2 VALUES LESS THAN ( TO_DATE('01-03-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P3 VALUES LESS THAN ( TO_DATE('01-06-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P4 VALUES LESS THAN ( TO_DATE('01-09-2007','DD-MM-YYYY')),&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PARTITION P5 VALUES LESS THAN ( TO_DATE('01-12-2007','DD-MM-YYYY'))&lt;/div&gt;&lt;div&gt;);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY6&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CUSTOMER_ID   NUMBER,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK6 PRIMARY KEY (PROFILE_ID)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;PARTITION BY HASH(PROFILE_ID,CUSTOMER_ID);&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;CREATE TABLE PROFILE_HISTORY7&lt;/div&gt;&lt;div&gt;(&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;PROFILE_ID    NUMBER, &lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;ACCESS_DATE   DATE,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CUSTOMER_ID   NUMBER,&lt;/div&gt;&lt;div&gt;&lt;span class="Apple-tab-span" style="white-space:pre"&gt; &lt;/span&gt;CONSTRAINT PROFILE_HISTORY_PK7 PRIMARY KEY (PROFILE_ID)&lt;/div&gt;&lt;div&gt;)&lt;/div&gt;&lt;div&gt;PARTITION BY HASH(PROFILE_ID,CUSTOMER_ID) PARTITION 4;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-5003606090542371455?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/5003606090542371455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/5003606090542371455'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/partitioning-in-10g.html' title='Partitioning in 10g'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-591801809373078251</id><published>2011-08-01T15:21:00.000+02:00</published><updated>2011-08-01T15:22:46.966+02:00</updated><title type='text'>Explain Data Block Addres</title><content type='html'>+-------------------------------------------------------------------------------------------+&lt;br /&gt;|                                                                                           |&lt;br /&gt;|     Explain Data Block Address                                          |&lt;br /&gt;|                                                                                           |&lt;br /&gt;+-------------------------------------------------------------------------------------------+&lt;br /&gt;| Techonology : Oracle database  10.2.0                                                     |&lt;br /&gt;+-------------------------------------------------------------------------------------------+&lt;br /&gt;| Created : 29/7/2007                                                                       |&lt;br /&gt;+-------------------------------------------------------------------------------------------+&lt;br /&gt;| Document Scope:                                                                           |&lt;br /&gt; The scope of the document is to understand and use Data Block Address  .&lt;br /&gt; The Second argument of ORA-600 [3374] corresponds to the expected Data Block Address.&lt;br /&gt; They are 11206682  and 2617431000. The blocks in these DBA are corrupted.&lt;br /&gt; Let's convert DBA to corresponding (file#,block#)&lt;br /&gt; &lt;br /&gt;Example1 :ORA-00600: internal error code, arguments: [3374], [16777298], [825371952],[875376697], [11824], [], [], []&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; SELECT dbms_utility.data_block_address_block(16777298)&lt;br /&gt; 2  FROM dual;&lt;br /&gt;&lt;br /&gt;DBMS_UTILITY.DATA_BLOCK_ADDRESS_BLOCK(16777298)&lt;br /&gt;-----------------------------------------------&lt;br /&gt;                                            82&lt;br /&gt;&lt;br /&gt;SQL&amp;gt;&lt;br /&gt;SQL&amp;gt; SELECT dbms_utility.data_block_address_file(16777298)&lt;br /&gt; 2  FROM dual;&lt;br /&gt;&lt;br /&gt;DBMS_UTILITY.DATA_BLOCK_ADDRESS_FILE(16777298)&lt;br /&gt;----------------------------------------------&lt;br /&gt;                                            4&lt;br /&gt;&lt;br /&gt;The corruption block is the block_id 82 in file_id 4. To find which database objects&lt;br /&gt;belong the corrupted block,use the following query.&lt;br /&gt;&lt;br /&gt;SELECT tablespace_name, segment_type, owner, segment_name&lt;br /&gt;FROM dba_extents&lt;br /&gt;WHERE file_id = 4&lt;br /&gt;and 82 between block_id AND block_id + blocks - 1;&lt;br /&gt;&lt;br /&gt;TABLESPACE_NAME                SEGMENT_TYPE       OWNER&lt;br /&gt;------------------------------ ------------------ ------------------------------&lt;br /&gt;SEGMENT_NAME&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;USERS                          TABLE              SYS&lt;br /&gt;T3&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;The example below , shows how to find the data block addreess base on file_id and some block_id.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; select block_id,block_id + blocks - 1,relative_fno,file_id from dba_extents where segment_name='T3';&lt;br /&gt;&lt;br /&gt; BLOCK_ID BLOCK_ID+BLOCKS-1  FILE_ID&lt;br /&gt;---------- -----------------  ----------&lt;br /&gt;       81                88  4&lt;br /&gt;&lt;br /&gt;SQL&amp;gt; SELECT dbms_utility.make_data_block_address(4,82)&lt;br /&gt; 2  FROM dual;&lt;br /&gt;&lt;br /&gt;DBMS_UTILITY.MAKE_DATA_BLOCK_ADDRESS(4,82)&lt;br /&gt;------------------------------------------&lt;br /&gt;                                 16777298&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Relate Note :&lt;br /&gt;Ref :       http://sysdba.wordpress.com/2006/04/05/how-to-check-for-and-repair-block-corruption-with-rman-in-oracle-9i-and-oracle-10g/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-591801809373078251?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/591801809373078251'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/591801809373078251'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/08/explain-data-block-addres.html' title='Explain Data Block Addres'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1623465180328666170</id><published>2011-07-14T11:57:00.001+02:00</published><updated>2011-07-14T11:57:42.754+02:00</updated><title type='text'>List a complete directory tree</title><content type='html'>List a complete directory tree&lt;br /&gt;&lt;br /&gt;You can use the tree command. If tree command does not exist in your system use the following &lt;br /&gt;&lt;br /&gt;find . -type d -print | sed -e 's;[^/]*/;|____;g;s;____|; |;g'&lt;br /&gt;&lt;br /&gt;Reference: http://www.unix.com/shell-programming-scripting/20702-tree-unix.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1623465180328666170?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1623465180328666170'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1623465180328666170'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/07/list-complete-directory-tree.html' title='List a complete directory tree'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1429901899680124037</id><published>2011-07-12T09:18:00.002+02:00</published><updated>2011-07-12T09:33:06.283+02:00</updated><title type='text'>Enable client tracing in SQLNET</title><content type='html'>add in the %ORACLE_HOME%\network\admin\sqlnet.ora&lt;br /&gt;&lt;br /&gt;TRACE_UNIQUE_CLIENT = ON&lt;br /&gt;TRACE_LEVEL_CLIENT = 16&lt;br /&gt;TRACE_DIRECTORY_CLIENT = C:\temp&lt;br /&gt;TRACE_FILE_CLIENT = SQLNetTrace&lt;br /&gt;TRACE_TIMESTAMP_CLIENT = ON&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1429901899680124037?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1429901899680124037'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1429901899680124037'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/07/enable-client-tracing-in-sqlnet.html' title='Enable client tracing in SQLNET'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3773518472907433031</id><published>2011-07-04T21:28:00.002+02:00</published><updated>2011-07-04T21:30:53.861+02:00</updated><title type='text'>Configure RMAN to use all RAC nodes (Parallel backups)</title><content type='html'>Consider a two-node rac with 1 cpu per node.&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;b&gt;CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 2;&lt;/b&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CHANNEL 1 DEVICE TYPE DISK CONNECT 'sys/oracle@rt1';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CHANNEL 2 DEVICE TYPE DISK CONNECT 'sys/oracle@rt2';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;RMAN&amp;gt; show all;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;RMAN configuration parameters are:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE BACKUP OPTIMIZATION OFF; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 2;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CHANNEL 1 DEVICE TYPE DISK CONNECT '*';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE CHANNEL 2 DEVICE TYPE DISK CONNECT '*';&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE MAXSETSIZE TO UNLIMITED; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE ENCRYPTION FOR DATABASE OFF; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/oracle/app/oracle/product/10.2.0/db_1/dbs/snapcf_RT2.f'; # default&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;RMAN&amp;gt; &lt;b style="mso-bidi-font-weight:normal"&gt;backup database plus archivelog;&lt;o:p&gt;&lt;/o:p&gt;&lt;/b&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;Starting backup at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;current log archived&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;allocated channel: ORA_DISK_1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: sid=143 instance=RT1 devtype=DISK&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;allocated channel: ORA_DISK_2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: sid=132 instance=RT2 devtype=DISK&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: starting compressed archive log backupset&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: specifying archive log(s) in backup set&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=10 recid=6 stamp=755647649&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=11 recid=10 stamp=755648045&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=12 recid=14 stamp=755648207&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=13 recid=16 stamp=755648344&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=14 recid=22 stamp=755648490&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=15 recid=26 stamp=755648538&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=1 sequence=16 recid=30 stamp=755648596&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=12 recid=2 stamp=755647601&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: starting piece 1 at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: starting compressed archive log backupset&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: specifying archive log(s) in backup set&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=13 recid=4 stamp=755647644&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=14 recid=8 stamp=755648043&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=15 recid=12 stamp=755648206&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=16 recid=18 stamp=755648344&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=17 recid=20 stamp=755648488&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=18 recid=24 stamp=755648536&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;input archive log thread=2 sequence=19 recid=28 stamp=755648594&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: starting piece 1 at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: finished piece 1 at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;piece handle=+DISKGROUP01/rt/backupset/2011_07_04/annnf0_tag20110704t222317_0.314.755648601 tag=TAG20110704T222317 comment=NONE&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: finished piece 1 at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;piece handle=+DISKGROUP01/rt/backupset/2011_07_04/annnf0_tag20110704t222317_0.315.755648603 tag=TAG20110704T222317 comment=NONE&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;channel ORA_DISK_2: backup set complete, elapsed time: 00:00:07&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;Finished backup at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;Starting backup at 04-JUL-11&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;using channel ORA_DISK_2&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;using channel ORA_DISK_1&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;....&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;&lt;p class="MsoNormal"&gt;&lt;b style="mso-bidi-font-weight:normal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;Reference : &lt;/span&gt;&lt;/b&gt;&lt;a href="http://oraclehandson.wordpress.com/2008/01/10/parallel-backup-using-rman-in-rac-environment/"&gt;http://oraclehandson.wordpress.com/2008/01/10/parallel-backup-using-rman-in-rac-environment/&lt;/a&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;....&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3773518472907433031?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3773518472907433031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3773518472907433031'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/07/configure-rman-to-use-all-rac-node.html' title='Configure RMAN to use all RAC nodes (Parallel backups)'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2599514229985204840</id><published>2011-07-02T21:40:00.000+02:00</published><updated>2011-07-02T21:41:18.410+02:00</updated><title type='text'>Migrating Existing Backups to ASM Flash Recovery Area</title><content type='html'>&lt;h3 align="center" style="text-align:center"&gt;&lt;span lang="EN-GB" style="font-size: 12.0pt;font-family:Tahoma;color:black;mso-ansi-language:EN-GB"&gt;Migrating Existing Backups to ASM Flash Recovery Area&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/h3&gt;&lt;div&gt;&lt;span lang="EN-GB" style="font-size: 12.0pt;font-family:Tahoma;color:black;mso-ansi-language:EN-GB"&gt;This article coming from &lt;/span&gt;&lt;a href="http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmasm.htm"&gt;&lt;span lang="EN-GB"&gt;http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmasm.htm&lt;/span&gt;&lt;/a&gt;&lt;/div&gt;  &lt;p&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language: EN-GB"&gt;In this example, it is assumed that you have already set the initialization parameters for a flash recovery area in ASM storage, using the process in&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;/span&gt;&lt;span style="font-family:Tahoma;color:black"&gt;&lt;a href="http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmasm.htm#BABJHIHA" style="background:inherit"&gt;&lt;span lang="EN-GB" style="color:#003399;mso-ansi-language: EN-GB"&gt;"Setting Initialization Parameters for Flash Recovery Area in ASM"&lt;/span&gt;&lt;/a&gt;&lt;/span&gt;&lt;span lang="EN-GB" style="font-family:Tahoma; color:black;mso-ansi-language:EN-GB"&gt;.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="notep1" style="margin:0cm;margin-bottom:.0001pt"&gt;&lt;b&gt;&lt;span style="font-family:Tahoma;color:black"&gt;Note:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/b&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black; mso-ansi-language:EN-GB"&gt;After you configure the database to change the location of the flash recovery area, backups created in the old flash recovery area location remain in their old location, still count against the total disk quota of the flash recovery area, are deleted from the old flash recovery area as space is required for other files, and can still be managed by RMAN and used in RMAN recovery operations. There is no need to move existing backups to the new ASM flash recovery area, unless you need the disk space used by those files for other purposes.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language: EN-GB"&gt;If you do need to free the space taken up by leftover non-ASM flash recovery area files, your options include backing them up to tape (for example, by using&lt;span class="apple-converted-space"&gt; &lt;/span&gt;&lt;/span&gt;&lt;code&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black;mso-ansi-language:EN-GB"&gt;BACKUP&lt;/span&gt;&lt;/code&gt;&lt;span class="apple-converted-space"&gt;&lt;span lang="EN-GB" style="font-family:Tahoma; color:black;mso-ansi-language:EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;code&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black;mso-ansi-language:EN-GB"&gt;RECOVERY&lt;/span&gt;&lt;/code&gt;&lt;span class="apple-converted-space"&gt;&lt;span lang="EN-GB" style="font-family:Tahoma; color:black;mso-ansi-language:EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;code&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black;mso-ansi-language:EN-GB"&gt;AREA&lt;/span&gt;&lt;/code&gt;&lt;span class="apple-converted-space"&gt;&lt;span lang="EN-GB" style="font-family:Tahoma; color:black;mso-ansi-language:EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;code&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black;mso-ansi-language:EN-GB"&gt;DELETE&lt;/span&gt;&lt;/code&gt;&lt;span class="apple-converted-space"&gt;&lt;span lang="EN-GB" style="font-family:Tahoma; color:black;mso-ansi-language:EN-GB"&gt; &lt;/span&gt;&lt;/span&gt;&lt;code&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black;mso-ansi-language:EN-GB"&gt;INPUT&lt;/span&gt;&lt;/code&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language:EN-GB"&gt;) or moving the backups from the old flash recovery area location to the new one, as described in this section.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language: EN-GB"&gt;To back up the existing archived redo log files to the new flash recovery area, use this command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;pre space="preserve"&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black; mso-ansi-language:EN-GB"&gt;RMAN&amp;gt; BACKUP AS COPY ARCHIVELOG ALL DELETE INPUT;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;p&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language: EN-GB"&gt;To move backup sets to the new flash recovery area, use this command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;pre space="preserve"&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black; mso-ansi-language:EN-GB"&gt;RMAN&amp;gt; BACKUP DEVICE TYPE DISK BACKUPSET ALL DELETE INPUT;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;p&gt;&lt;span lang="EN-GB" style="font-family:Tahoma;color:black;mso-ansi-language: EN-GB"&gt;To move all datafile copies to the new flash recovery area location, use this command:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;pre space="preserve"&gt;&lt;span lang="EN-GB" style="font-size:6.0pt;color:black; mso-ansi-language:EN-GB"&gt;RMAN&amp;gt; BACKUP AS COPY DATAFILECOPY ALL DELETE INPUT;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/pre&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-GB" style="mso-ansi-language:EN-GB"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;    &lt;p class="MsoNormal"&gt;&lt;br /&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2599514229985204840?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2599514229985204840'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2599514229985204840'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/07/migrating-existing-backups-to-asm-flash.html' title='Migrating Existing Backups to ASM Flash Recovery Area'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8786808859035025971</id><published>2011-06-27T22:49:00.002+02:00</published><updated>2011-06-27T22:53:31.263+02:00</updated><title type='text'>Start and Stop RAC Listeners</title><content type='html'>&lt;div&gt;&lt;b&gt;lsnrctl stop listene&lt;/b&gt;r affect only the connected node&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;On two nodes RAC cluster use the following commands to stop and start RAC's listeners&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;[oracle@rac2 ~]$ srvctl start listener  -n rac1&lt;/div&gt;&lt;div&gt;[oracle@rac2 ~]$ srvctl start listener  -n rac2&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8786808859035025971?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8786808859035025971'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8786808859035025971'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/06/start-and-stop-rac-listeners.html' title='Start and Stop RAC Listeners'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8588935793321117353</id><published>2011-06-26T21:07:00.001+02:00</published><updated>2011-06-26T21:09:00.383+02:00</updated><title type='text'>Restore Oracle RAC OCR file( Oracle Cluster Registry)</title><content type='html'>&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;oracle@rac2 dbs]$ &lt;b&gt;ocrconfig -showbackup&lt;/b&gt;&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;rac2     2011/01/01 22:42:51     /oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;rac2     2011/01/01 18:42:50     /oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;rac2     2011/01/01 14:42:50     /oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;rac1     2010/12/31 20:40:10     /oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;rac1     2010/12/23 16:52:33     /oracle/crs/oracle/product/10.2.0/crs/cdata/crs&lt;/div&gt;&lt;div&gt;&lt;br /&gt;&lt;/div&gt;&lt;div&gt;/etc/init.d/init.crs stop  ## Do in all nodes&lt;/div&gt;&lt;div&gt;&lt;b&gt;ocrconfig -restore /oracle/crs/oracle/product/10.2.0/crs/cdata/crs/backup01.ocr&lt;/b&gt;&lt;/div&gt;&lt;div&gt;/etc/init.d/init.crs start  ## Do in all nodes&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8588935793321117353?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8588935793321117353'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8588935793321117353'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/06/restore-oracle-rac-ocr-file-oracle.html' title='Restore Oracle RAC OCR file( Oracle Cluster Registry)'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-7924096131361651261</id><published>2011-06-14T11:22:00.000+02:00</published><updated>2011-06-14T11:24:04.064+02:00</updated><title type='text'>How to calculate Undo Space (Undo tablespace) for a specific UNDO_RETENTION</title><content type='html'>SELECT d.undo_size/(1024*1024) "ACTUAL UNDO SIZE [MByte]",&lt;br /&gt;TO_NUMBER&lt;strong&gt;(&amp;amp;&amp;amp;Undo_retention&lt;/strong&gt;) "UNDO RETENTION [Sec]",&lt;br /&gt;(TO_NUMBER(&amp;amp;Undo_retention) * TO_NUMBER(f.value) *&lt;br /&gt;g.undo_block_per_sec) / (1024*1024)&lt;br /&gt;"NEEDED UNDO SIZE [MByte]"&lt;br /&gt;FROM (&lt;br /&gt;SELECT SUM(a.bytes) undo_size&lt;br /&gt;FROM v$datafile a,&lt;br /&gt;v$tablespace b,&lt;br /&gt;dba_tablespaces c&lt;br /&gt;WHERE c.contents = 'UNDO'&lt;br /&gt;AND c.status = 'ONLINE'&lt;br /&gt;AND b.name = c.tablespace_name&lt;br /&gt;AND a.ts# = b.ts#&lt;br /&gt;) d,&lt;br /&gt;v$parameter e,&lt;br /&gt;v$parameter f,&lt;br /&gt;(&lt;br /&gt;SELECT MAX(undoblks/((end_time-begin_time)*3600*24))&lt;br /&gt;undo_block_per_sec&lt;br /&gt;FROM v$undostat&lt;br /&gt;) g&lt;br /&gt;WHERE e.name = 'undo_retention'&lt;br /&gt;AND f.name = 'db_block_size'&lt;br /&gt;/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-7924096131361651261?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7924096131361651261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7924096131361651261'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/06/how-to-calculate-undo-space-undo.html' title='How to calculate Undo Space (Undo tablespace) for a specific UNDO_RETENTION'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-998868994065326201</id><published>2011-06-10T12:23:00.001+02:00</published><updated>2011-06-10T12:25:33.641+02:00</updated><title type='text'>Create a version query</title><content type='html'>According the init. parameter UNDO_RETENTION = 900 (15 min) you can see the tuples versions as below:&lt;br /&gt;&lt;br /&gt;select * from &lt;br /&gt;&lt;table&gt;&lt;br /&gt;VERSIONS BETWEEN TIMESTAMP&lt;br /&gt;to_timestamp('2011/06/07 9:30:00', 'YYYY/MM/DD HH24:MI:SS')&lt;br /&gt;AND&lt;br /&gt;to_timestamp('2011/06/07 9:35:00', 'YYYY/MM/DD HH24:MI:SS')&lt;br /&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;tbody&gt;&lt;/tbody&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;/div&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-998868994065326201?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/998868994065326201'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/998868994065326201'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/06/create-version-query.html' title='Create a version query'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-193618767236393944</id><published>2011-06-02T11:06:00.000+02:00</published><updated>2011-06-02T11:09:55.991+02:00</updated><title type='text'>Clean Oracle's Report Server Jobs Queue</title><content type='html'>&lt;p&gt;&lt;strong&gt;&lt;span style="font-size:85%;"&gt;Valid for Oracle Application server 10.2 &lt;/span&gt;&lt;/strong&gt;&lt;/p&gt;&lt;br /&gt;&lt;br /&gt;&lt;p&gt;Stop Report Server&lt;br /&gt;Rename the dat file present in $ORACLE_HOME/reports/server directory and restart the server again&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-193618767236393944?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/193618767236393944'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/193618767236393944'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/06/clean-oracles-report-server-jobs-queue.html' title='Clean Oracle&apos;s Report Server Jobs Queue'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2280661067952241215</id><published>2011-05-31T11:33:00.003+02:00</published><updated>2011-05-31T11:38:10.621+02:00</updated><title type='text'>Five distinct types of database uncertainty</title><content type='html'>&lt;strong&gt;Five distinct types of database uncertainty&lt;/strong&gt; :&lt;br /&gt;&lt;br /&gt;&lt;strong&gt;Uncertainty&lt;/strong&gt; -- There might be uncertainty about the database fact " the age of john is 38"&lt;br /&gt;&lt;strong&gt;Imprecision&lt;/strong&gt; -- The information in the model is not as specific as it should be. For example, when distinct value is required, the information available might be:&lt;br /&gt;&lt;strong&gt;range&lt;/strong&gt; : " The age of john is between 37 and 43"&lt;br /&gt;&lt;strong&gt;disjunctive&lt;/strong&gt;: " The age of john is either 37 or 43"&lt;br /&gt;&lt;strong&gt;negative&lt;/strong&gt; : " The age of john is not 37"&lt;br /&gt;&lt;strong&gt;unknown&lt;/strong&gt; : "unknown" i।e। null &lt;br /&gt;&lt;strong&gt;Vagueness&lt;/strong&gt; -- The model includes elements (e.g predicates or quantifiers) that are inherently vague i.e. " John is in early middle age".&lt;br /&gt;&lt;strong&gt;Inconsistency&lt;/strong&gt;-- The model contains two or more alternatives that cannot be true at the same time e.g. " the age of john is between 37 and 43" and the "age of john is 35".&lt;br /&gt;&lt;strong&gt;Ambiguity&lt;/strong&gt; -- Some elements of the model lack complete semantics leading to several possible interpretations e.g. " employees' commission are given per month or per year" .&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:arial;font-size:85%;"&gt;Ref: Amihai Motro, Management of Uncertainty in database Systems.&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2280661067952241215?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2280661067952241215'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2280661067952241215'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/05/five-distinct-types-of-database.html' title='Five distinct types of database uncertainty'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2800263861742195130</id><published>2011-05-12T10:11:00.000+02:00</published><updated>2011-05-13T22:35:56.942+02:00</updated><title type='text'>Tablespace Encryption</title><content type='html'>&lt;b&gt;Transparent Data Encryption (TDE) and the use of a component known as the Oracle Wallet. Oracle 10.2.4 &lt;/b&gt;+&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE TABLESPACE encrypted_ts&lt;br /&gt;DATAFILE 'C:\ORACLE\ORADATA\SECURE\encrypted_ts01.dbf' SIZE 128K&lt;br /&gt;LOGGING&lt;br /&gt;EXTENT MANAGEMENT LOCAL&lt;br /&gt;SEGMENT SPACE MANAGEMENT AUTO&lt;br /&gt;ENCRYPTION USING 'AES192'&lt;br /&gt;DEFAULT STORAGE(ENCRYPT);&lt;br /&gt;&lt;br /&gt;The link shows you how you are able to create a wallet. &lt;br /&gt;http://mikegeorgiou.blogspot.com/2011/05/column-ecryption-in-oracle-10g.html&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2800263861742195130?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2800263861742195130'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2800263861742195130'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/05/tablespace-encryption.html' title='Tablespace Encryption'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2768005757198245630</id><published>2011-05-12T09:10:00.000+02:00</published><updated>2011-05-13T22:35:56.841+02:00</updated><title type='text'>Disabling and Enabling Oracle Database Vault</title><content type='html'>http://www.filibeto.org/sun/lib/nonsun/oracle/10.2.0.1.0/B19306_01/server.102/b25166/dvdisabl.htm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2768005757198245630?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2768005757198245630'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2768005757198245630'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/05/disabling-and-enabling-oracle-database.html' title='Disabling and Enabling Oracle Database Vault'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1321871134788560888</id><published>2011-05-12T09:00:00.000+02:00</published><updated>2011-05-13T22:35:56.913+02:00</updated><title type='text'>Column ecryption in Oracle 10g</title><content type='html'>Column ecryption in Oracle 10g &lt;br /&gt;&lt;br /&gt;Step 1&lt;br /&gt;=======&lt;br /&gt;Add the following lines in $ORACLE_HOME/network/admin/sqlnet.ora &lt;br /&gt;&lt;br /&gt;# Create a wallet for column ecryption&lt;br /&gt;ENCRYPTION_WALLET_LOCATION=&lt;br /&gt;  (SOURCE=(METHOD=FILE)(METHOD_DATA=&lt;br /&gt;    (DIRECTORY=C:\oracle\oradata\SECURE)))&lt;br /&gt;    &lt;br /&gt;   &lt;br /&gt;Step 2&lt;br /&gt;========&lt;br /&gt;create the wallet &lt;br /&gt;&lt;br /&gt;ALTER SYSTEM SET ENCRYPTION KEY AUTHENTICATED BY "password";&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Step 3&lt;br /&gt;=========&lt;br /&gt;Login as test1/test1&lt;br /&gt;&lt;br /&gt;create table test1&lt;br /&gt;(&lt;br /&gt; id number,&lt;br /&gt; password varchar2(10) encrypt&lt;br /&gt; );&lt;br /&gt; &lt;br /&gt; insert into test1 values (1,'pass1234');&lt;br /&gt; &lt;br /&gt; Any schema (having the appropriate privileges )is able to select the data decrypted.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; &lt;br /&gt; SQL&gt; select * from test1;&lt;br /&gt; select * from test1&lt;br /&gt;               *&lt;br /&gt; ERROR at line 1:&lt;br /&gt;ORA-28365: wallet is not open&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; Wallets must be reopened after an instance restart and can be closed to prevent access to encrypted columns.&lt;br /&gt; &lt;br /&gt; ALTER SYSTEM SET WALLET OPEN IDENTIFIED BY "password";&lt;br /&gt; &lt;br /&gt; ALTER SYSTEM SET WALLET CLOSE;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  References : http://www.oraclebase.com/articles/10g/TransparentDataEncryption_10gR2.php&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1321871134788560888?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1321871134788560888'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1321871134788560888'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/05/column-ecryption-in-oracle-10g.html' title='Column ecryption in Oracle 10g'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1051066555131901407</id><published>2011-04-28T13:39:00.002+02:00</published><updated>2011-04-28T13:52:46.718+02:00</updated><title type='text'>Compile Oracle forms,reports etc. on Unix</title><content type='html'>#!/bin/ksh&lt;br /&gt;#&lt;br /&gt;EXE=/home/oraclefrm/OraHome_1/forms/bin&lt;br /&gt;SRC=/home/oraclefrm/OraHome_1/forms/src&lt;br /&gt;print "######################################################################################"&lt;br /&gt;print "Compile individual components for forms 10.1.2.0.2 on Linux and Solaris"&lt;br /&gt;print "Before start ensure you have database schema name, password and the connection string"&lt;br /&gt;print "######################################################################################"&lt;br /&gt;print "Compile Form press [1]"&lt;br /&gt;print "Compile Menu press [2]"&lt;br /&gt;print "Compile Library press [3]"&lt;br /&gt;print "Compile All Forms press [4]"&lt;br /&gt;print "Compile ALL ( Forms,Libraries and Menus) [5]"&lt;br /&gt;print "For Exit press [0]"&lt;br /&gt;read  answer&lt;br /&gt;case $answer in&lt;br /&gt;        1)&lt;br /&gt;                print "Database schema"&lt;br /&gt;                read schema&lt;br /&gt;                print "Schema password"&lt;br /&gt;                read schema_pass&lt;br /&gt;                print "Connection string"&lt;br /&gt;                read connection&lt;br /&gt;                print "Write the form name"&lt;br /&gt;                read form_name&lt;br /&gt;                frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$form_name module_type=Form&lt;br /&gt;                ;;&lt;br /&gt;        2)&lt;br /&gt;                print "Database schema"&lt;br /&gt;                read schema&lt;br /&gt;                print "Schema password"&lt;br /&gt;                read schema_pass&lt;br /&gt;                print "Connection string"&lt;br /&gt;                read connection&lt;br /&gt;                print "Write the Menu name"&lt;br /&gt;                read menu_name&lt;br /&gt;                frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$menu_name module_type=Menu&lt;br /&gt;                ;;&lt;br /&gt;        3)&lt;br /&gt;                print "Database schema"&lt;br /&gt;                read schema&lt;br /&gt;                print "Schema password"&lt;br /&gt;                read schema_pass&lt;br /&gt;                print "Connection string"&lt;br /&gt;                read connection&lt;br /&gt;                print "Write the Library name"&lt;br /&gt;                read library_name&lt;br /&gt;                frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$library_name module_type=Library&lt;br /&gt;                ;;&lt;br /&gt;         4)     print "Database schema"&lt;br /&gt;                read schema&lt;br /&gt;                print "Schema password"&lt;br /&gt;                read schema_pass&lt;br /&gt;                print "Connection string"&lt;br /&gt;                read connection&lt;br /&gt;  for i in `ls *.fmb`; do&lt;br /&gt;          frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$i output_file=$EXE module_type=Form&lt;br /&gt;  done&lt;br /&gt;  ;;&lt;br /&gt;          5)     print "Database schema"&lt;br /&gt;          read schema&lt;br /&gt;          print "Schema password"&lt;br /&gt;          read schema_pass&lt;br /&gt;          print "Connection string"&lt;br /&gt;          read connection&lt;br /&gt;          print " Compiling libaries .."&lt;br /&gt;          for i in `ls *.pll`; do&lt;br /&gt;          frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$i output_file=$EXE module_type=Libary&lt;br /&gt;          done&lt;br /&gt;          for i in `ls *.fmb`; do&lt;br /&gt;           frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$i output_file=$EXE module_type=Form&lt;br /&gt;    done&lt;br /&gt;          for i in `ls *.mmb`; do&lt;br /&gt;   frmcmp_batch.sh userid=$schema/$schema_pass@$connection batch=yes module=$i output_file=$EXE module_type=Menu&lt;br /&gt;    done&lt;br /&gt;    &lt;br /&gt;  ;;&lt;br /&gt;        *)&lt;br /&gt;                exit 0&lt;br /&gt;                ;;&lt;br /&gt;esac&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1051066555131901407?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1051066555131901407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1051066555131901407'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/compile-oracle-formsreports-etc-on-unix.html' title='Compile Oracle forms,reports etc. on Unix'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-6311125703445748959</id><published>2011-04-20T08:18:00.002+02:00</published><updated>2011-04-20T08:21:22.634+02:00</updated><title type='text'>Set User's password never exprired in AIX 5L</title><content type='html'>smitty user&lt;br /&gt;&lt;br /&gt; change/show characteristics of a user&lt;br /&gt;&lt;br /&gt;type the username in  user name field &lt;br /&gt;&lt;br /&gt;set password max age to 0  ( disables feature)&lt;br /&gt;&lt;br /&gt;set password min age to 0 ( you can change the password at any time –manual)&lt;br /&gt;&lt;br /&gt;set disable to remote login ( false) and use the user as su - &lt;username&gt; for the best security.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-6311125703445748959?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6311125703445748959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/6311125703445748959'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/set-users-password-never-exprired-in.html' title='Set User&apos;s password never exprired in AIX 5L'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-637323990741489961</id><published>2011-04-13T22:33:00.001+02:00</published><updated>2011-04-13T22:43:17.745+02:00</updated><title type='text'>Rolling Patch Upgrade Using RAC</title><content type='html'>Supported on single patches that are marked as “rolling upgrade compatible” . You can determine if the patch is flagged as rolling upgradeable by checking&lt;br /&gt;&lt;br /&gt;patch#/etc/config/inventory file  see&lt;br /&gt;&lt;br /&gt;online_rac_installable&gt;true&lt;online_rac_installable&lt;br /&gt;&lt;br /&gt;Consider a RAC with 4 nodes&lt;br /&gt;Stop the instance on node1&lt;br /&gt;apply the patch&lt;br /&gt;Restart node&lt;br /&gt;Stress node in order to see patch’s impact&lt;br /&gt;Start instance&lt;br /&gt;do the same for each node , until you apply the patch in all nodes&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-637323990741489961?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/637323990741489961'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/637323990741489961'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/rolling-patch-upgrade-using-rac.html' title='Rolling Patch Upgrade Using RAC'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-4006421535688721422</id><published>2011-04-13T08:33:00.002+02:00</published><updated>2011-04-13T08:40:21.602+02:00</updated><title type='text'>Create Oracle User</title><content type='html'>As system :&lt;br /&gt;             --Create application's users profile&lt;br /&gt;             --Create user&lt;br /&gt;             --Grant Roles,System and Object privellege to user.&lt;br /&gt;&lt;br /&gt;CREATE PROFILE app_user LIMIT &lt;br /&gt;   SESSIONS_PER_USER          UNLIMITED &lt;br /&gt;   CPU_PER_SESSION            UNLIMITED &lt;br /&gt;   CPU_PER_CALL               3000 &lt;br /&gt;   CONNECT_TIME               45 &lt;br /&gt;   LOGICAL_READS_PER_SESSION  DEFAULT &lt;br /&gt;   LOGICAL_READS_PER_CALL     1000 &lt;br /&gt;   PRIVATE_SGA                15K&lt;br /&gt;   COMPOSITE_LIMIT            5000000; &lt;br /&gt;&lt;br /&gt;CREATE USER michael&lt;br /&gt;    IDENTIFIED BY michael&lt;br /&gt;    DEFAULT TABLESPACE example &lt;br /&gt;    QUOTA UNLIMITED ON example &lt;br /&gt;    TEMPORARY TABLESPACE temp&lt;br /&gt;    PROFILE app_user &lt;br /&gt;    PASSWORD EXPIRE;&lt;br /&gt;&lt;br /&gt;grant connect,resource to michael;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ref:&lt;br /&gt;1. &lt;br /&gt;http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_8003.htm&lt;br /&gt;2. http://download.oracle.com/docs/cd/B28359_01/server.111/b28286/statements_6010.htm#i2065&lt;br /&gt;&lt;br /&gt;As is Apr, 2011&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-4006421535688721422?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4006421535688721422'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4006421535688721422'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/create-oracle-user.html' title='Create Oracle User'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-23070847851713788</id><published>2011-04-04T10:44:00.000+02:00</published><updated>2011-04-04T10:46:00.395+02:00</updated><title type='text'>Deleting Expired RMAN Backups and Archives Logs after CROSSCHECK</title><content type='html'>export ORACLE_SID=&lt;instance&gt; (UNIX)&lt;br /&gt;or&lt;br /&gt;set &lt;br /&gt;ORACLE_SID=&lt;instance&gt;&lt;br /&gt;RMAN TARGET / catalog rman/rman@rman cmdfile=C:\cleanObsoleteArchives\clean.rman&lt;br /&gt;&lt;br /&gt;clean.rman&lt;br /&gt;=============&lt;br /&gt;change archivelog all crosscheck;&lt;br /&gt;crosscheck backupset ;&lt;br /&gt;DELETE EXPIRED BACKUP;&lt;br /&gt;crosscheck archivelog all;&lt;br /&gt;delete noprompt obsolete;&lt;br /&gt;restore validate database;&lt;br /&gt;list backup;&lt;br /&gt;exit;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Ref: http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/maint003.htm#i1008500&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-23070847851713788?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/23070847851713788'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/23070847851713788'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/deleting-expired-rman-backups-and.html' title='Deleting Expired RMAN Backups and Archives Logs after CROSSCHECK'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-4840685172232015320</id><published>2011-04-02T21:57:00.002+02:00</published><updated>2011-04-02T22:04:43.249+02:00</updated><title type='text'>Prepare a stress testing using TPC-H benchmark</title><content type='html'>Step1&lt;br /&gt;==============================&lt;br /&gt;TPCH Database creation&lt;br /&gt;==============================&lt;br /&gt;C:\&gt;sqlplus / as sysdba&lt;br /&gt;&lt;br /&gt;SQL&gt; CREATE DATABASE TPCH&lt;br /&gt;MAXDATAFILES 100&lt;br /&gt;MAXLOGFILES 6&lt;br /&gt;MAXLOGHISTORY 100&lt;br /&gt;MAXINSTANCES 1&lt;br /&gt;ARCHIVELOG&lt;br /&gt;LOGFILE&lt;br /&gt;GROUP 1 ('/home/oracle/DB11G/redo01.dbf') size 10M,&lt;br /&gt;GROUP 2 ('/home/oracle/DB11G/redo02.dbf') size 10M&lt;br /&gt;DATAFILE '/home/oracle/DB11G/system01.dbf' size 512M AUTOEXTEND ON MAXSIZE UNLIMITED&lt;br /&gt;SYSAUX DATAFILE '/home/oracle/DB11G/sysaux01.dbf' size 512M AUTOEXTEND ON MAXSIZE 1024M&lt;br /&gt;DEFAULT TEMPORARY TABLESPACE TEMP tempfile '/home/oracle/DB11G/temp01.tmp' size 128M AUTOEXTEND OFF&lt;br /&gt;UNDO TABLESPACE UNDO1 DATAFILE '/home/oracle/DB11G/undo101.dbf' size 128M AUTOEXTEND ON &lt;br /&gt;CHARACTER SET UTF8&lt;br /&gt;NATIONAL CHARACTER SET UTF8;&lt;br /&gt;&lt;br /&gt;SQL&gt; create user tpch identified by tpch;&lt;br /&gt;SQL&gt; grant connect,resource to tpch;&lt;br /&gt;=========================================================&lt;br /&gt;Step 2&lt;br /&gt;========================================================&lt;br /&gt;Download and uncompress the tpc-h source code from http://www.tpc.org &lt;br /&gt;Edit the makefile.suite as follows and Compile/make tpc-h source usning make –f command.&lt;br /&gt;&lt;br /&gt;CC = gcc&lt;br /&gt;DATABASE = SQLSERVER&lt;br /&gt;MACHINE = LINUX&lt;br /&gt;WORKLOAD = TPCH&lt;br /&gt;&lt;br /&gt;$ make -f makefile.suite&lt;br /&gt;=====================================================================================&lt;br /&gt;Step 3&lt;br /&gt;====================================================================================&lt;br /&gt;Create tpc-h’s data files using dbgen&lt;br /&gt;&lt;br /&gt;[root@s01 tpch]# ./dbgen -f -v -s 1                                     # where 1 means = 1g of data&lt;br /&gt;TPC-H Population Generator (Version 2.7.0 build 47)&lt;br /&gt;Copyright Transaction Processing Performance Council 1994 - 2008&lt;br /&gt;Generating data for suppliers table [pid: 4566]/&lt;br /&gt;Preloading text ... 100%&lt;br /&gt;done.&lt;br /&gt;Generating data for customers table [pid: 4566]done.&lt;br /&gt;Generating data for orders/lineitem tables [pid: 4566]done.&lt;br /&gt;Generating data for part/partsupplier tables [pid: 4566]done.&lt;br /&gt;Generating data for nation table [pid: 4566]done.&lt;br /&gt;Generating data for region table [pid: 4566]done.&lt;br /&gt;=====================================================================================&lt;br /&gt;Step 3&lt;br /&gt;=============================================================================&lt;br /&gt;&lt;br /&gt;Create the tpc-h schema using the dss.ddl for Oracle 11g&lt;br /&gt;&lt;br /&gt;-- Sccsid:     @(#)dss.ddl	2.1.8.1&lt;br /&gt;CREATE TABLE NATION  ( N_NATIONKEY  NUMBER NOT NULL,&lt;br /&gt;                            N_NAME       CHAR(25) NOT NULL,&lt;br /&gt;                            N_REGIONKEY  NUMBER NOT NULL,&lt;br /&gt;                            N_COMMENT    VARCHAR2(152));&lt;br /&gt;&lt;br /&gt;CREATE TABLE REGION  ( R_REGIONKEY  NUMBER NOT NULL,&lt;br /&gt;                            R_NAME       CHAR(25) NOT NULL,&lt;br /&gt;                            R_COMMENT    VARCHAR2(152));&lt;br /&gt;&lt;br /&gt;CREATE TABLE PART  ( P_PARTKEY     NUMBER NOT NULL,&lt;br /&gt;                          P_NAME        VARCHAR2(55) NOT NULL,&lt;br /&gt;                          P_MFGR        CHAR(25) NOT NULL,&lt;br /&gt;                          P_BRAND       CHAR(10) NOT NULL,&lt;br /&gt;                          P_TYPE        VARCHAR2(25) NOT NULL,&lt;br /&gt;                          P_SIZE        NUMBER NOT NULL,&lt;br /&gt;                          P_CONTAINER   CHAR(10) NOT NULL,&lt;br /&gt;                          P_RETAILPRICE NUMBER(15,2) NOT NULL,&lt;br /&gt;                          P_COMMENT     VARCHAR2(23) NOT NULL );&lt;br /&gt;&lt;br /&gt;CREATE TABLE SUPPLIER ( S_SUPPKEY     NUMBER NOT NULL,&lt;br /&gt;                             S_NAME        CHAR(25) NOT NULL,&lt;br /&gt;                             S_ADDRESS     VARCHAR2(40) NOT NULL,&lt;br /&gt;                             S_NATIONKEY   NUMBER NOT NULL,&lt;br /&gt;                             S_PHONE       CHAR(15) NOT NULL,&lt;br /&gt;                             S_ACCTBAL     NUMBER(15,2) NOT NULL,&lt;br /&gt;                             S_COMMENT     VARCHAR2(101) NOT NULL);&lt;br /&gt;&lt;br /&gt;CREATE TABLE PARTSUPP ( PS_PARTKEY     NUMBER NOT NULL,&lt;br /&gt;                             PS_SUPPKEY     NUMBER NOT NULL,&lt;br /&gt;                             PS_AVAILQTY    NUMBER NOT NULL,&lt;br /&gt;                             PS_SUPPLYCOST  NUMBER(15,2)  NOT NULL,&lt;br /&gt;                             PS_COMMENT     VARCHAR2(199) NOT NULL );&lt;br /&gt;&lt;br /&gt;CREATE TABLE CUSTOMER ( C_CUSTKEY     NUMBER NOT NULL,&lt;br /&gt;                             C_NAME        VARCHAR2(25) NOT NULL,&lt;br /&gt;                             C_ADDRESS     VARCHAR2(40) NOT NULL,&lt;br /&gt;                             C_NATIONKEY   NUMBER NOT NULL,&lt;br /&gt;                             C_PHONE       CHAR(15) NOT NULL,&lt;br /&gt;                             C_ACCTBAL     NUMBER(15,2)   NOT NULL,&lt;br /&gt;                             C_MKTSEGMENT  CHAR(10) NOT NULL,&lt;br /&gt;                             C_COMMENT     VARCHAR2(117) NOT NULL);&lt;br /&gt;&lt;br /&gt;CREATE TABLE ORDERS  ( O_ORDERKEY       NUMBER NOT NULL,&lt;br /&gt;                           O_CUSTKEY        NUMBER NOT NULL,&lt;br /&gt;                           O_ORDERSTATUS    CHAR(1) NOT NULL,&lt;br /&gt;                           O_TOTALPRICE     NUMBER(15,2) NOT NULL,&lt;br /&gt;                           O_ORDERDATE      DATE NOT NULL,&lt;br /&gt;                           O_ORDERPRIORITY  CHAR(15) NOT NULL,  &lt;br /&gt;                           O_CLERK          CHAR(15) NOT NULL, &lt;br /&gt;                           O_SHIPPRIORITY   NUMBER NOT NULL,&lt;br /&gt;                           O_COMMENT        VARCHAR2(79) NOT NULL);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE TABLE LINEITEM ( L_ORDERKEY    NUMBER NOT NULL,&lt;br /&gt;                             L_PARTKEY     NUMBER NOT NULL,&lt;br /&gt;                             L_SUPPKEY     NUMBER NOT NULL,&lt;br /&gt;                             L_LINENUMBER  NUMBER NOT NULL,&lt;br /&gt;                             L_QUANTITY    NUMBER(15,2) NOT NULL,&lt;br /&gt;                             L_EXTENDEDPRICE  NUMBER(15,2) NOT NULL,&lt;br /&gt;                             L_DISCOUNT    NUMBER(15,2) NOT NULL,&lt;br /&gt;                             L_TAX         NUMBER(15,2) NOT NULL,&lt;br /&gt;                             L_RETURNFLAG  CHAR(1) NOT NULL,&lt;br /&gt;                             L_LINESTATUS  CHAR(1) NOT NULL,&lt;br /&gt;                             L_SHIPDATE    DATE NOT NULL,&lt;br /&gt;                             L_COMMITDATE  DATE NOT NULL,&lt;br /&gt;                             L_RECEIPTDATE DATE NOT NULL,&lt;br /&gt;                             L_SHIPINSTRUCT CHAR(25) NOT NULL,&lt;br /&gt;                             L_SHIPMODE     CHAR(10) NOT NULL,&lt;br /&gt;                             L_COMMENT      VARCHAR2(44) NOT NULL);&lt;br /&gt;================================================================================&lt;br /&gt;Step 4&lt;br /&gt;=================================================================================&lt;br /&gt;&lt;br /&gt;Loading benchmark’s data using sqlldr &lt;br /&gt;&lt;br /&gt;***** Ensure that your NLS_DATE_FORMAT="YYYY-MM_DD"  *******************(ANSI)&lt;br /&gt;&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=customer.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=lineitem.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=nation.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=orders.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=partsupp.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=part.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=region.tbl&lt;br /&gt;sqlldr tpch_usr/tpch_usr control=supplier.tbl&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Example of modification&lt;br /&gt;&lt;br /&gt;LOAD DATA&lt;br /&gt;INFILE *&lt;br /&gt;TRUNCATE&lt;br /&gt;INTO TABLE "NATION"&lt;br /&gt;FIELDS TERMINATED BY '|'&lt;br /&gt;TRAILING NULLCOLS ( &lt;br /&gt;N_NATIONKEY,&lt;br /&gt;N_NAME,&lt;br /&gt;N_REGIONKEY,&lt;br /&gt;N_COMMENT&lt;br /&gt;)&lt;br /&gt;begindata&lt;br /&gt;0|ALGERIA|0| haggle. carefully final deposits detect slyly agai&lt;br /&gt;1|ARGENTINA|1|al foxes promise slyly according to the regular accounts. bold requests alon&lt;br /&gt;2|BRAZIL|1|y alongside of the pending deposits. carefully special packages are about the ironic forges. slyly special &lt;br /&gt;3|CANADA|1|eas hang ironic, silent packages. slyly regular packages are furiously over the tithes. fluffily bold&lt;br /&gt;===================================================================&lt;br /&gt;Step 5&lt;br /&gt;==================================================================&lt;br /&gt;When you complete the TPC-H installation (create of data and database loading) , run the following java class (A multithreaded application that contains TPC-H's queries) that execute TPC-H queries randomly. The class allows you to define the number of connections. For example if you define 5 threads, then 5 connections are established to your database, which run randomly 20 TPC-H queries. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;package mypackage;&lt;br /&gt;import java.sql.*;&lt;br /&gt;import java.util.Random;&lt;br /&gt;import java.util.Vector;&lt;br /&gt;import oracle.sql.*;&lt;br /&gt;import oracle.jdbc.*;&lt;br /&gt;&lt;br /&gt;public class Action implements Runnable &lt;br /&gt;{&lt;br /&gt;  int action_id;&lt;br /&gt;  int query_id;&lt;br /&gt;  String query_text="";&lt;br /&gt;  Vector temp = new Vector();&lt;br /&gt;  String thread_status= "IDLE";&lt;br /&gt;  private Connection conn=null;&lt;br /&gt;	private Statement  stm=null;&lt;br /&gt;  &lt;br /&gt;  ///Database connection &lt;br /&gt;  private String server="192.168.10.3";&lt;br /&gt;  private String service_name="orcl";&lt;br /&gt;  private String port="1521";&lt;br /&gt;  private String username="tpch";&lt;br /&gt;  private String password="tpch";&lt;br /&gt;  &lt;br /&gt;   public Action()&lt;br /&gt;  {&lt;br /&gt;  }&lt;br /&gt;  public Action(int action_id)&lt;br /&gt;  {&lt;br /&gt;    this.action_id=action_id; &lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  private void datasourse() throws Exception&lt;br /&gt;	{&lt;br /&gt;		try&lt;br /&gt;		{&lt;br /&gt;      &lt;br /&gt;			DriverManager.registerDriver(new oracle.jdbc.OracleDriver());&lt;br /&gt;		  this.conn=DriverManager.getConnection("jdbc:oracle:thin:@"+server+":"+port+":"+service_name, username,password);&lt;br /&gt;      this.stm = conn.createStatement();&lt;br /&gt;		}&lt;br /&gt;		catch (SQLException e)&lt;br /&gt;		{&lt;br /&gt;			throw new Exception("Sql error: "+e.getMessage());&lt;br /&gt;		}&lt;br /&gt;	}&lt;br /&gt;  &lt;br /&gt;  public void executeQuery(String query)&lt;br /&gt;  {&lt;br /&gt;        ResultSet rst = null;&lt;br /&gt;        try&lt;br /&gt;         {&lt;br /&gt;            rst = this.stm.executeQuery(query);&lt;br /&gt;            while (rst.next()){}&lt;br /&gt;             &lt;br /&gt;         }&lt;br /&gt;        catch (Exception e1)&lt;br /&gt;        {&lt;br /&gt;            System.out.println(e1.getMessage());&lt;br /&gt;        }&lt;br /&gt;  }&lt;br /&gt;   &lt;br /&gt;  public void run() &lt;br /&gt;  {	&lt;br /&gt;    try&lt;br /&gt;    {&lt;br /&gt;        datasourse();&lt;br /&gt;    }&lt;br /&gt;    catch (Exception e)&lt;br /&gt;		{&lt;br /&gt;        System.out.println(e.getMessage());&lt;br /&gt;		}&lt;br /&gt;     this.thread_status = "RUNNING";&lt;br /&gt;     temp.clear();&lt;br /&gt;     for (int i=1; i &lt;= 20 ; i++)&lt;br /&gt;     {&lt;br /&gt;        Random g = new Random();&lt;br /&gt;        this.query_id=g.nextInt(10)+1;&lt;br /&gt;        while ( exist(new Integer(this.query_id)))&lt;br /&gt;        {&lt;br /&gt;            this.query_id=g.nextInt(10)+1;&lt;br /&gt;        }&lt;br /&gt;        temp.add(new Integer(this.query_id));&lt;br /&gt;        System.out.println(" The Worker ["+this.action_id+"] executed the query "+this.query_id);&lt;br /&gt;        this.query_text=getQueryText();&lt;br /&gt;        //System.out.println(" Query Text "+this.query_text);&lt;br /&gt;        executeQuery(this.query_text);&lt;br /&gt;        this.thread_status = "CLOSED";&lt;br /&gt;     }&lt;br /&gt;        try&lt;br /&gt;        {&lt;br /&gt;            conn.close();&lt;br /&gt;        }&lt;br /&gt;         catch (Exception e)&lt;br /&gt;		    {&lt;br /&gt;           System.out.println(e.getMessage());&lt;br /&gt;		    }&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public String getThreadStatus()&lt;br /&gt;  {&lt;br /&gt;    return this.thread_status;&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public int getThreadID()&lt;br /&gt;  {&lt;br /&gt;    return this.getThreadID();&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public String getThreadQueryText()&lt;br /&gt;  {&lt;br /&gt;    return this.query_text;&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  public boolean exist( Integer a)&lt;br /&gt;  {&lt;br /&gt;      int b = 1;&lt;br /&gt;      Integer c = new Integer(-1);&lt;br /&gt;      &lt;br /&gt;      for (int i=0; i&lt;temp.size(); i++)&lt;br /&gt;      {&lt;br /&gt;          //System.out.println((Integer)temp.elementAt(i));&lt;br /&gt;          c=(Integer)temp.elementAt(i);&lt;br /&gt;          if (c.equals(a))&lt;br /&gt;          {&lt;br /&gt;             //System.out.println("equal");&lt;br /&gt;             b = 0;&lt;br /&gt;          }&lt;br /&gt;      }&lt;br /&gt;      if (b==0)&lt;br /&gt;      {&lt;br /&gt;        return true;&lt;br /&gt;      }&lt;br /&gt;      else&lt;br /&gt;      {&lt;br /&gt;        return false;&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;  &lt;br /&gt;  private String getQueryText()&lt;br /&gt;  {&lt;br /&gt;      if (query_id==1)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;          " select											 "+&lt;br /&gt;"        l_returnflag,										 " +&lt;br /&gt;"        l_linestatus,										 " +&lt;br /&gt;"        sum(l_quantity) as sum_qty,								 " +&lt;br /&gt;"        sum(l_extendedprice) as sum_base_price,						 " +&lt;br /&gt;"        sum(l_extendedprice * (1 - l_discount)) as sum_disc_price,				 " +&lt;br /&gt;"        sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge,			 " +&lt;br /&gt;"        avg(l_quantity) as avg_qty,								 " +&lt;br /&gt;"        avg(l_extendedprice) as avg_price,							 " +&lt;br /&gt;"        avg(l_discount) as avg_disc,								 " +&lt;br /&gt;"        count(*) as count_order								 " +&lt;br /&gt;" from												 " +&lt;br /&gt;"        lineitem										 " +&lt;br /&gt;" where												 " +&lt;br /&gt;"        l_shipdate &lt;= to_date('1998-12-01','YYYY-MM-DD') - interval '3' day			 " +&lt;br /&gt;" group by											 " +&lt;br /&gt;"        l_returnflag,										 " +&lt;br /&gt;"        l_linestatus										 " +&lt;br /&gt;" order by											 " +&lt;br /&gt;"        l_returnflag,										 " +&lt;br /&gt;"        l_linestatus										 " ;&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==2)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;"        select								 " +&lt;br /&gt;"        s_acctbal,							 " +&lt;br /&gt;"        s_name,							 " +&lt;br /&gt;"        n_name,							 " +&lt;br /&gt;"        p_partkey,							 " +&lt;br /&gt;"        p_mfgr,							 " +&lt;br /&gt;"        s_address,							 " +&lt;br /&gt;"        s_phone,							 " +&lt;br /&gt;"        s_comment							 " +&lt;br /&gt;" from									 " +&lt;br /&gt;"        part,								 " +&lt;br /&gt;"        supplier,							 " +&lt;br /&gt;"        partsupp,							 " +&lt;br /&gt;"        nation,							 " +&lt;br /&gt;"        region								 " +&lt;br /&gt;" where									 " +&lt;br /&gt;"        p_partkey = ps_partkey						 " +&lt;br /&gt;"        and s_suppkey = ps_suppkey					 " +&lt;br /&gt;"        and p_size = 41						 " +&lt;br /&gt;"        and p_type like 'PROMO%'					 " +&lt;br /&gt;"        and s_nationkey = n_nationkey					 " +&lt;br /&gt;"        and n_regionkey = r_regionkey					 " +&lt;br /&gt;"        and r_name = 'AFRICA'						 " +&lt;br /&gt;"        and ps_supplycost = (						 " +&lt;br /&gt;"                select							 " +&lt;br /&gt;"                        min(ps_supplycost)				 " +&lt;br /&gt;"                from							 " +&lt;br /&gt;"                        partsupp,					 " +&lt;br /&gt;"                        supplier,					 " +&lt;br /&gt;"                        nation,					 " +&lt;br /&gt;"                        region						 " +&lt;br /&gt;"                where							 " +&lt;br /&gt;"                        p_partkey = ps_partkey				 " +&lt;br /&gt;"                        and s_suppkey = ps_suppkey			 " +&lt;br /&gt;"                        and s_nationkey = n_nationkey			 " +&lt;br /&gt;"                        and n_regionkey = r_regionkey			 " +&lt;br /&gt;"                        and r_name = 'AFRICA'				 " +&lt;br /&gt;"        )								 " +&lt;br /&gt;" order by								 " +&lt;br /&gt;"        s_acctbal desc,						 " +&lt;br /&gt;"        n_name,							 " +&lt;br /&gt;"        s_name,							 " +&lt;br /&gt;"        p_partkey							 ";&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==3)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         "   select								     " +&lt;br /&gt;"        l_orderkey,							     " +&lt;br /&gt;"        sum(l_extendedprice * (1 - l_discount)) as revenue,		     " +&lt;br /&gt;"        o_orderdate,							     " +&lt;br /&gt;"        o_shippriority							     " +&lt;br /&gt;" from									     " +&lt;br /&gt;"        customer,							     " +&lt;br /&gt;"        orders,							     " +&lt;br /&gt;"        lineitem							     " +&lt;br /&gt;" where									     " +&lt;br /&gt;"        c_mktsegment = 'BUILDING'					     " +&lt;br /&gt;"        and c_custkey = o_custkey					     " +&lt;br /&gt;"        and l_orderkey = o_orderkey					     " +&lt;br /&gt;"        and o_orderdate &lt; to_date('1998-08-02','YYYY-MM-DD')		     " +&lt;br /&gt;"        and l_shipdate &gt; to_date('1992-01-02','YYYY-MM-DD')		     " +&lt;br /&gt;"        and rownum &lt;= 10						     " +&lt;br /&gt;" group by								     " +&lt;br /&gt;"        l_orderkey,							     " +&lt;br /&gt;"        o_orderdate,							     " +&lt;br /&gt;"        o_shippriority							     " +&lt;br /&gt;" order by								     " +&lt;br /&gt;"        revenue desc,							     " +&lt;br /&gt;"        o_orderdate							     " ;&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==4)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;        " select											" +&lt;br /&gt;"        o_orderpriority,									" +&lt;br /&gt;"        count(*) as order_count								" +&lt;br /&gt;" from												" +&lt;br /&gt;"        orders											" +&lt;br /&gt;" where												" +&lt;br /&gt;"        o_orderdate &gt;= to_date('1992-01-01','YYYY-MM-DD')					" +&lt;br /&gt;"        and o_orderdate &lt; to_date('1998-08-02','YYYY-MM-DD') + interval '3' month		" +&lt;br /&gt;"        and exists (										" +&lt;br /&gt;"                select										" +&lt;br /&gt;"                        *									" +&lt;br /&gt;"                from										" +&lt;br /&gt;"                        lineitem								" +&lt;br /&gt;"                where										" +&lt;br /&gt;"                        l_orderkey = o_orderkey						" +&lt;br /&gt;"                        and l_commitdate &lt; l_receiptdate					" +&lt;br /&gt;"        )											" +&lt;br /&gt;"       and rownum &lt;= 10									" +&lt;br /&gt;" group by											" +&lt;br /&gt;"        o_orderpriority									" +&lt;br /&gt;" order by											" +&lt;br /&gt;"        o_orderpriority									" ;&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==5)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         "         select											  " +&lt;br /&gt;" 	        n_name,											  " +&lt;br /&gt;" 	        sum(l_extendedprice * (1 - l_discount)) as revenue					  " +&lt;br /&gt;" 	from												  " +&lt;br /&gt;" 	        customer,										  " +&lt;br /&gt;" 	        orders,											  " +&lt;br /&gt;" 	        lineitem,										  " +&lt;br /&gt;" 	        supplier,										  " +&lt;br /&gt;" 	        nation,											  " +&lt;br /&gt;" 	        region											  " +&lt;br /&gt;" 	where												  " +&lt;br /&gt;" 	        c_custkey = o_custkey									  " +&lt;br /&gt;" 	        and l_orderkey = o_orderkey								  " +&lt;br /&gt;" 	        and l_suppkey = s_suppkey								  " +&lt;br /&gt;" 	        and c_nationkey = s_nationkey								  " +&lt;br /&gt;" 	        and s_nationkey = n_nationkey								  " +&lt;br /&gt;" 	        and n_regionkey = r_regionkey								  " +&lt;br /&gt;" 	        and r_name = 'EUROPE'									  " +&lt;br /&gt;" 	        and o_orderdate &gt;= to_date('1992-01-01','YYYY-MM-DD')					  " +&lt;br /&gt;" 	        and o_orderdate &lt; to_date('1996-01-01','YYYY-MM-DD') + interval '1' year		  " +&lt;br /&gt;" 		and rownum &lt;= 10									  " +&lt;br /&gt;" 	group by											  " +&lt;br /&gt;" 	        n_name											  " +&lt;br /&gt;" 	order by											  " +&lt;br /&gt;" 	        revenue desc ";										  &lt;br /&gt;      }&lt;br /&gt;       else if (query_id==6)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select										" +&lt;br /&gt;"        sum(l_extendedprice * l_discount) as revenue					" +&lt;br /&gt;" from											" +&lt;br /&gt;"        lineitem									" +&lt;br /&gt;" where											" +&lt;br /&gt;"        l_shipdate &gt;= to_date('1993-01-01','YYYY-MM-DD')				" +&lt;br /&gt;"        and l_shipdate &lt; to_date('1998-01-01','YYYY-MM-DD') + interval '1' year	" +&lt;br /&gt;"        and l_discount between  - 0.01 and  + 0.01					" +&lt;br /&gt;"        and l_quantity &lt; 2								" ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==7)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         "  select											" +	&lt;br /&gt;"         supp_nation,										" +	&lt;br /&gt;"         cust_nation,										" +	&lt;br /&gt;"         l_year,										" +	&lt;br /&gt;"         sum(volume) as revenue								" +	&lt;br /&gt;"  from												" +	&lt;br /&gt;"         (											" +	&lt;br /&gt;"                 select									" +	&lt;br /&gt;"                         n1.n_name as supp_nation,						" +	&lt;br /&gt;"                         n2.n_name as cust_nation,						" +	&lt;br /&gt;"                         extract(year from l_shipdate) as l_year,				" +	&lt;br /&gt;"                         l_extendedprice * (1 - l_discount) as volume				" +	&lt;br /&gt;"                 from										" +	&lt;br /&gt;"                         supplier,								" +	&lt;br /&gt;"                         lineitem,								" +	&lt;br /&gt;"                         orders,								" +	&lt;br /&gt;"                         customer,								" +	&lt;br /&gt;"                         nation n1,								" +	&lt;br /&gt;"                         nation n2								" +	&lt;br /&gt;"                 where										" +	&lt;br /&gt;"                         s_suppkey = l_suppkey							" +	&lt;br /&gt;"                         and o_orderkey = l_orderkey						" +	&lt;br /&gt;"                         and c_custkey = o_custkey						" +	&lt;br /&gt;"                         and s_nationkey = n1.n_nationkey					" +	&lt;br /&gt;"                         and c_nationkey = n2.n_nationkey					" +	&lt;br /&gt;"                         and (									" +	&lt;br /&gt;"                                 (n1.n_name = 'RUSSIA' and n2.n_name = 'FRANCE')		" +	&lt;br /&gt;"                                 or (n1.n_name = 'CANADA' and n2.n_name = 'RUSSIA')		" +	&lt;br /&gt;"                         )									" +	&lt;br /&gt;"                         and l_shipdate between to_date('1995-01-01','YYYY-MM-DD') 		" +&lt;br /&gt;"                          and to_date('1996-12-31','YYYY-MM-DD') 				" +	&lt;br /&gt;"         ) shipping										" +	&lt;br /&gt;"         where rownum &lt;= 10									" +	&lt;br /&gt;"  group by											" +	&lt;br /&gt;"         supp_nation,										" +	&lt;br /&gt;"         cust_nation,										" +	&lt;br /&gt;"         l_year										" +	&lt;br /&gt;"  order by											" +	&lt;br /&gt;"         supp_nation,										" +	&lt;br /&gt;"         cust_nation,										" +	&lt;br /&gt;"         l_year										" ;	&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==8)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;        "       select										    " +&lt;br /&gt;"	        o_year,									    " +&lt;br /&gt;"	        sum(case								    " +&lt;br /&gt;"	                when nation = '' then volume					    " +&lt;br /&gt;"	                else 0								    " +&lt;br /&gt;"	        end) / sum(volume) as mkt_share						    " +&lt;br /&gt;"	from										    " +&lt;br /&gt;"	        (									    " +&lt;br /&gt;"	                select								    " +&lt;br /&gt;"	                        extract(year from o_orderdate) as o_year,		    " +&lt;br /&gt;"	                        l_extendedprice * (1 - l_discount) as volume,		    " +&lt;br /&gt;"	                        n2.n_name as nation					    " +&lt;br /&gt;"	                from								    " +&lt;br /&gt;"	                        part,							    " +&lt;br /&gt;"	                        supplier,						    " +&lt;br /&gt;"	                        lineitem,						    " +&lt;br /&gt;"	                        orders,							    " +&lt;br /&gt;"	                        customer,						    " +&lt;br /&gt;"	                        nation n1,						    " +&lt;br /&gt;"	                        nation n2,						    " +&lt;br /&gt;"	                        region							    " +&lt;br /&gt;"	                where								    " +&lt;br /&gt;"	                        p_partkey = l_partkey					    " +&lt;br /&gt;"	                        and s_suppkey = l_suppkey				    " +&lt;br /&gt;"	                        and l_orderkey = o_orderkey				    " +&lt;br /&gt;"	                        and o_custkey = c_custkey				    " +&lt;br /&gt;"	                        and c_nationkey = n1.n_nationkey			    " +&lt;br /&gt;"	                        and n1.n_regionkey = r_regionkey			    " +&lt;br /&gt;"	                        and r_name = 'EUROPE'					    " +&lt;br /&gt;"	                        and s_nationkey = n2.n_nationkey			    " +&lt;br /&gt;"	                        and o_orderdate between to_date('1995-01-01','YYYY-MM-DD')  " +&lt;br /&gt;"	                        and to_date('1996-12-31','YYYY-MM-DD')			    " +&lt;br /&gt;"	                        and p_type = 'STANDARD PLATED BRASS'			    " +&lt;br /&gt;"	        )all_nations								    " +&lt;br /&gt;"  where rownum &lt;= 10									    " +&lt;br /&gt;"	group by									    " +&lt;br /&gt;"	        o_year									    " +&lt;br /&gt;"	order by									    " +&lt;br /&gt;"	        o_year									    " ;&lt;br /&gt;      }&lt;br /&gt;      else if (query_id==9)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;          " select											      " +&lt;br /&gt;"        nation,										      " +&lt;br /&gt;"        o_year,										      " +&lt;br /&gt;"        sum(amount) as sum_profit								      " +&lt;br /&gt;" from												      " +&lt;br /&gt;"        (											      " +&lt;br /&gt;"                select										      " +&lt;br /&gt;"                        n_name as nation,							      " +&lt;br /&gt;"                        extract(year from o_orderdate) as o_year,				      " +&lt;br /&gt;"                        l_extendedprice * (1 - l_discount) - ps_supplycost * l_quantity as amount    " +&lt;br /&gt;"                from										      " +&lt;br /&gt;"                        part,									      " +&lt;br /&gt;"                        supplier,								      " +&lt;br /&gt;"                        lineitem,								      " +&lt;br /&gt;"                        partsupp,								      " +&lt;br /&gt;"                        orders,								      " +&lt;br /&gt;"                        nation									      " +&lt;br /&gt;"                where										      " +&lt;br /&gt;"                        s_suppkey = l_suppkey							      " +&lt;br /&gt;"                        and ps_suppkey = l_suppkey						      " +&lt;br /&gt;"                        and ps_partkey = l_partkey						      " +&lt;br /&gt;"                        and p_partkey = l_partkey						      " +&lt;br /&gt;"                        and o_orderkey = l_orderkey						      " +&lt;br /&gt;"                        and s_nationkey = n_nationkey						      " +&lt;br /&gt;"                        and p_name like '%lemon%'						      " +&lt;br /&gt;"        )profit										      " +&lt;br /&gt;" where rownum &lt;= 10										      " +&lt;br /&gt;" group by											      " +&lt;br /&gt;"        nation,										      " +&lt;br /&gt;"        o_year											      " +&lt;br /&gt;" order by											      " +&lt;br /&gt;"        nation,										      " +&lt;br /&gt;"        o_year desc 										      " ;&lt;br /&gt;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==10)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;        " select									         " +&lt;br /&gt;"        c_custkey,									 " +&lt;br /&gt;"        c_name,									 " +&lt;br /&gt;"        sum(l_extendedprice * (1 - l_discount)) as revenue,				 " +&lt;br /&gt;"        c_acctbal,									 " +&lt;br /&gt;"        n_name,									 " +&lt;br /&gt;"        c_address,									 " +&lt;br /&gt;"        c_phone,									 " +&lt;br /&gt;"        c_comment									 " +&lt;br /&gt;" from											 " +&lt;br /&gt;"        customer,									 " +&lt;br /&gt;"        orders,									 " +&lt;br /&gt;"        lineitem,									 " +&lt;br /&gt;"        nation										 " +&lt;br /&gt;" where											 " +&lt;br /&gt;"        c_custkey = o_custkey								 " +&lt;br /&gt;"        and l_orderkey = o_orderkey							 " +&lt;br /&gt;"        and o_orderdate &gt;= to_date('1992-01-01','YYYY-MM-DD')				 " +&lt;br /&gt;"        and o_orderdate &lt; to_date('1996-01-01','YYYY-MM-DD') + interval '3' month	 " +&lt;br /&gt;"        and l_returnflag = 'R'								 " +&lt;br /&gt;"        and c_nationkey = n_nationkey							 " +&lt;br /&gt;"        and rownum &lt;= 10								 " +&lt;br /&gt;" group by										 " +&lt;br /&gt;"        c_custkey,									 " +&lt;br /&gt;"        c_name,									 " +&lt;br /&gt;"        c_acctbal,									 " +&lt;br /&gt;"        c_phone,									 " +&lt;br /&gt;"        n_name,									 " +&lt;br /&gt;"        c_address,									 " +&lt;br /&gt;"        c_comment									 " +&lt;br /&gt;" order by										 " +&lt;br /&gt;"        revenue desc									 " ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==11)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;       " select									  " +&lt;br /&gt;"        ps_partkey,								  " +&lt;br /&gt;"        sum(ps_supplycost * ps_availqty) as value				  " +&lt;br /&gt;" from										  " +&lt;br /&gt;"        partsupp,								  " +&lt;br /&gt;"        supplier,								  " +&lt;br /&gt;"        nation									  " +&lt;br /&gt;" where										  " +&lt;br /&gt;"        ps_suppkey = s_suppkey							  " +&lt;br /&gt;"        and s_nationkey = n_nationkey						  " +&lt;br /&gt;"        and n_name = 'UNITED KINGDOM'						  " +&lt;br /&gt;"         and rownum &lt;= 10							  " +&lt;br /&gt;" group by									  " +&lt;br /&gt;"        ps_partkey having							  " +&lt;br /&gt;"                sum(ps_supplycost * ps_availqty) &gt; (				  " +&lt;br /&gt;"                        select							  " +&lt;br /&gt;"                                sum(ps_supplycost * ps_availqty) * 0.00015	  " +&lt;br /&gt;"                        from							  " +&lt;br /&gt;"                                partsupp,					  " +&lt;br /&gt;"                                supplier,					  " +&lt;br /&gt;"                                nation						  " +&lt;br /&gt;"                        where							  " +&lt;br /&gt;"                                ps_suppkey = s_suppkey				  " +&lt;br /&gt;"                                and s_nationkey = n_nationkey			  " +&lt;br /&gt;"                                and n_name = 'UNITED KINGDOM'			  " +&lt;br /&gt;"                )								  " +&lt;br /&gt;" order by									  " +&lt;br /&gt;"        value desc								  " ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==12)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;        " select										   " +&lt;br /&gt;"        l_shipmode,									   " +&lt;br /&gt;"        sum(case									   " +&lt;br /&gt;"                when o_orderpriority = '1-URGENT'					   " +&lt;br /&gt;"                        or o_orderpriority = '2-HIGH'					   " +&lt;br /&gt;"                        then 1								   " +&lt;br /&gt;"                else 0									   " +&lt;br /&gt;"        end) as high_line_count,							   " +&lt;br /&gt;"        sum(case									   " +&lt;br /&gt;"                when o_orderpriority &lt;&gt; '1-URGENT'					   " +&lt;br /&gt;"                        and o_orderpriority &lt;&gt; '2-HIGH'				   " +&lt;br /&gt;"                        then 1								   " +&lt;br /&gt;"                else 0									   " +&lt;br /&gt;"        end) as low_line_count								   " +&lt;br /&gt;" from											   " +&lt;br /&gt;"        orders,									   " +&lt;br /&gt;"        lineitem									   " +&lt;br /&gt;" where											   " +&lt;br /&gt;"        o_orderkey = l_orderkey							   " +&lt;br /&gt;"        and l_shipmode in ('MAIL', 'AIR')						   " +&lt;br /&gt;"        and l_commitdate &lt; l_receiptdate						   " +&lt;br /&gt;"        and l_shipdate &lt; l_commitdate							   " +&lt;br /&gt;"        and l_receiptdate &gt;= to_date('1996-01-01','YYYY-MM-DD')			   " +&lt;br /&gt;"        and l_receiptdate &lt; to_date('1997-01-01','YYYY-MM-DD') + interval '1' year	   " +&lt;br /&gt;"        and rownum &lt;= 10								   " +&lt;br /&gt;" group by										   " +&lt;br /&gt;"        l_shipmode									   " +&lt;br /&gt;" order by										   " +&lt;br /&gt;"        l_shipmode									   ";&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==13)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select								" +&lt;br /&gt;"        c_count,							" +&lt;br /&gt;"        count(*) as custdist						" +&lt;br /&gt;" from									" +&lt;br /&gt;"        (								" +&lt;br /&gt;"                select							" +&lt;br /&gt;"                        c_custkey,					" +&lt;br /&gt;"                        count(o_orderkey) as c_count			" +&lt;br /&gt;"                from							" +&lt;br /&gt;"                        customer left outer join orders on		" +&lt;br /&gt;"                                c_custkey = o_custkey			" +&lt;br /&gt;"                                and o_comment not like '%deposits%'	" +&lt;br /&gt;"                group by						" +&lt;br /&gt;"                        c_custkey					" +&lt;br /&gt;"        ) c_orders 							" +&lt;br /&gt;" group by								" +&lt;br /&gt;"        c_count							" +&lt;br /&gt;" order by								" +&lt;br /&gt;"        custdist desc,							" +&lt;br /&gt;"        c_count desc;							" ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==14)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select										 " +&lt;br /&gt;"        100.00 * sum(case								 " +&lt;br /&gt;"                when p_type like 'PROMO%'						 " +&lt;br /&gt;"                        then l_extendedprice * (1 - l_discount)			 " +&lt;br /&gt;"                else 0									 " +&lt;br /&gt;"        end) / sum(l_extendedprice * (1 - l_discount)) as promo_revenue		 " +&lt;br /&gt;" from											 " +&lt;br /&gt;"        lineitem,									 " +&lt;br /&gt;"        part										 " +&lt;br /&gt;" where											 " +&lt;br /&gt;"        l_partkey = p_partkey								 " +&lt;br /&gt;"        and l_shipdate &gt;= to_date('1996-01-01','YYYY-MM-DD')				 " +&lt;br /&gt;"        and l_shipdate &lt; to_date('1997-01-01','YYYY-MM-DD') + interval '1' month	 ";&lt;br /&gt;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==15)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " create view revenue0 (supplier_no, total_revenue) as						     " +&lt;br /&gt;"        select											     " +&lt;br /&gt;"                l_suppkey,									     " +&lt;br /&gt;"                sum(l_extendedprice * (1 - l_discount))					     " +&lt;br /&gt;"        from											     " +&lt;br /&gt;"                lineitem									     " +&lt;br /&gt;"        where											     " +&lt;br /&gt;"                l_shipdate &gt;= to_date('1996-01-01','YYYY-MM-DD')				     " +&lt;br /&gt;"                and l_shipdate &lt; to_date('1996-01-01','YYYY-MM-DD') + interval '3' month	     " +&lt;br /&gt;"        group by										     " +&lt;br /&gt;"                l_suppkey;									     " +&lt;br /&gt;"												     " +&lt;br /&gt;"												     " +&lt;br /&gt;" select											     " +&lt;br /&gt;"        s_suppkey,										     " +&lt;br /&gt;"        s_name,										     " +&lt;br /&gt;"        s_address,										     " +&lt;br /&gt;"        s_phone,										     " +&lt;br /&gt;"        total_revenue										     " +&lt;br /&gt;" from												     " +&lt;br /&gt;"        supplier,										     " +&lt;br /&gt;"        revenue0										     " +&lt;br /&gt;" where												     " +&lt;br /&gt;"        s_suppkey = supplier_no								     " +&lt;br /&gt;"        and total_revenue = (									     " +&lt;br /&gt;"                select										     " +&lt;br /&gt;"                        max(total_revenue)							     " +&lt;br /&gt;"                from										     " +&lt;br /&gt;"                        revenue0								     " +&lt;br /&gt;"        )											     " +&lt;br /&gt;" order by											     " +&lt;br /&gt;"        s_suppkey;										     " +&lt;br /&gt;" drop view revenue0 										     " ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==16)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select									    " +&lt;br /&gt;"        p_brand,							    " +&lt;br /&gt;"        p_type,								    " +&lt;br /&gt;"        p_size,								    " +&lt;br /&gt;"        count(distinct ps_suppkey) as supplier_cnt			    " +&lt;br /&gt;" from									    " +&lt;br /&gt;"        partsupp,							    " +&lt;br /&gt;"        part								    " +&lt;br /&gt;" where									    " +&lt;br /&gt;"        p_partkey = ps_partkey						    " +&lt;br /&gt;"        and p_brand &lt;&gt; 'Brand#24'					    " +&lt;br /&gt;"        and p_type not like 'PROMO%'					    " +&lt;br /&gt;"        and p_size in (34,36,44,48,6,32,11,21)				    " +&lt;br /&gt;"        and ps_suppkey not in (						    " +&lt;br /&gt;"                select							    " +&lt;br /&gt;"                        s_suppkey					    " +&lt;br /&gt;"                from							    " +&lt;br /&gt;"                        supplier					    " +&lt;br /&gt;"                where							    " +&lt;br /&gt;"                        s_comment like '%Customer%Complaints%'		    " +&lt;br /&gt;"        )								    " +&lt;br /&gt;" group by								    " +&lt;br /&gt;"        p_brand,							    " +&lt;br /&gt;"        p_type,								    " +&lt;br /&gt;"        p_size								    " +&lt;br /&gt;" order by								    " +&lt;br /&gt;"        supplier_cnt desc,						    " +&lt;br /&gt;"        p_brand,							    " +&lt;br /&gt;"        p_type,								    " +&lt;br /&gt;"        p_size                                                              ";&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==17)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " Select sysdate from dual ";&lt;br /&gt;         /*&lt;br /&gt;          * select&lt;br /&gt;        sum(l_extendedprice) / 7.0 as avg_yearly&lt;br /&gt;from&lt;br /&gt;        lineitem,&lt;br /&gt;        part&lt;br /&gt;where&lt;br /&gt;        p_partkey = l_partkey&lt;br /&gt;        and p_brand = 'Brand#24'&lt;br /&gt;        and p_container = 'SM BOX'&lt;br /&gt;        and l_quantity &lt; (&lt;br /&gt;                select&lt;br /&gt;                        0.2 * avg(l_quantity)&lt;br /&gt;                from&lt;br /&gt;                        lineitem&lt;br /&gt;                where&lt;br /&gt;                        l_partkey = p_partkey&lt;br /&gt;        );&lt;br /&gt;          */&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==18)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select							      " +&lt;br /&gt;"         c_name,						      " +&lt;br /&gt;"         c_custkey,						      " +&lt;br /&gt;"         o_orderkey,						      " +&lt;br /&gt;"         o_orderdate,						      " +&lt;br /&gt;"         o_totalprice,						      " +&lt;br /&gt;"         sum(l_quantity)					      " +&lt;br /&gt;" from								      " +&lt;br /&gt;"         customer,						      " +&lt;br /&gt;"         orders,						      " +&lt;br /&gt;"         lineitem						      " +&lt;br /&gt;" where								      " +&lt;br /&gt;"         o_orderkey in (					      " +&lt;br /&gt;"                 select					      " +&lt;br /&gt;"                         l_orderkey				      " +&lt;br /&gt;"                 from						      " +&lt;br /&gt;"                         lineitem				      " +&lt;br /&gt;"                 group by					      " +&lt;br /&gt;"                         l_orderkey having			      " +&lt;br /&gt;"                                 sum(l_quantity) &gt; 10		      " +&lt;br /&gt;"         )							      " +&lt;br /&gt;"         and c_custkey = o_custkey				      " +&lt;br /&gt;"         and o_orderkey = l_orderkey				      " +&lt;br /&gt;"         and rownum &lt; 10					      " +&lt;br /&gt;" group by							      " +&lt;br /&gt;"         c_name,						      " +&lt;br /&gt;"         c_custkey,						      " +&lt;br /&gt;"         o_orderkey,						      " +&lt;br /&gt;"         o_orderdate,						      " +&lt;br /&gt;"         o_totalprice						      " +&lt;br /&gt;"    order by							      " +&lt;br /&gt;"         o_totalprice desc,					      " +&lt;br /&gt;"         o_orderdate;						      " ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==19)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select										   "+&lt;br /&gt;"        sum(l_extendedprice* (1 - l_discount)) as revenue			       " +&lt;br /&gt;" from										       " +&lt;br /&gt;"        lineitem,								       " +&lt;br /&gt;"        part									       " +&lt;br /&gt;" where										       " +&lt;br /&gt;"        (									       " +&lt;br /&gt;"                p_partkey = l_partkey						       " +&lt;br /&gt;"                and p_brand = 'Brand#24'					       " +&lt;br /&gt;"                and p_container in ('SM CASE', 'SM BOX', 'SM PACK', 'SM PKG')	       " +&lt;br /&gt;"                and l_quantity &gt;=9.00  and l_quantity &lt;=9.00  + 10		       " +&lt;br /&gt;"                and p_size between 1 and 5					       " +&lt;br /&gt;"                and l_shipmode in ('AIR', 'AIR REG')				       " +&lt;br /&gt;"                and l_shipinstruct = 'DELIVER IN PERSON'			       " +&lt;br /&gt;"        )									       " +&lt;br /&gt;"        or									       " +&lt;br /&gt;"        (									       " +&lt;br /&gt;"                p_partkey = l_partkey						       " +&lt;br /&gt;"                and p_brand = 'Brand#33'					       " +&lt;br /&gt;"                and p_container in ('MED BAG', 'MED BOX', 'MED PKG', 'MED PACK')       " +&lt;br /&gt;"                and l_quantity &gt;=13.00  and l_quantity &lt;=13.00  + 10		       " +&lt;br /&gt;"                and p_size between 1 and 10					       " +&lt;br /&gt;"                and l_shipmode in ('AIR', 'AIR REG')				       " +&lt;br /&gt;"                and l_shipinstruct = 'DELIVER IN PERSON'			       " +&lt;br /&gt;"        )									       " +&lt;br /&gt;"        or									       " +&lt;br /&gt;"        (									       " +&lt;br /&gt;"                p_partkey = l_partkey						       " +&lt;br /&gt;"                and p_brand = 'Brand#13'					       " +&lt;br /&gt;"                and p_container in ('LG CASE', 'LG BOX', 'LG PACK', 'LG PKG')	       " +&lt;br /&gt;"                and l_quantity &gt;=47.00  and l_quantity &lt;=47.00  + 10		       " +&lt;br /&gt;"                and p_size between 1 and 15					       " +&lt;br /&gt;"                and l_shipmode in ('AIR', 'AIR REG')				       " +&lt;br /&gt;"                and l_shipinstruct = 'DELIVER IN PERSON'			       " +&lt;br /&gt;"        )									       " +&lt;br /&gt;" and rownum &lt; 10								       " ;&lt;br /&gt;      }&lt;br /&gt;       else if (query_id==20)&lt;br /&gt;      {&lt;br /&gt;          return "\n"+&lt;br /&gt;         " select										    " +&lt;br /&gt;"         cntrycode,									    " +&lt;br /&gt;"         count(*) as numcust,								    " +&lt;br /&gt;"         sum(c_acctbal) as totacctbal							    " +&lt;br /&gt;" from											    " +&lt;br /&gt;"         (										    " +&lt;br /&gt;"                 select								    " +&lt;br /&gt;"                         substr(c_phone,1,2) as cntrycode,				    " +&lt;br /&gt;"                         c_acctbal							    " +&lt;br /&gt;"                 from									    " +&lt;br /&gt;"                         customer							    " +&lt;br /&gt;"                 where									    " +&lt;br /&gt;"                         substr(c_phone,1,2) in					    " +&lt;br /&gt;"                                 ('25', '23', '11', '14', '12', '20', '16')		    " +&lt;br /&gt;"                         and c_acctbal &gt; (						    " +&lt;br /&gt;"                                 select						    " +&lt;br /&gt;"                                         avg(c_acctbal)				    " +&lt;br /&gt;"                                 from							    " +&lt;br /&gt;"                                         customer					    " +&lt;br /&gt;"                                 where							    " +&lt;br /&gt;"                                         c_acctbal &gt; 0.00				    " +&lt;br /&gt;"                                         and substr(c_phone,1,2) in			    " +&lt;br /&gt;"                                                ('25', '23', '11', '14', '12', '20', '16') " +&lt;br /&gt;"                         )								    " +&lt;br /&gt;"                         and not exists (						    " +&lt;br /&gt;"                                 select						    " +&lt;br /&gt;"                                         *						    " +&lt;br /&gt;"                                 from							    " +&lt;br /&gt;"                                         orders					    " +&lt;br /&gt;"                                 where							    " +&lt;br /&gt;"                                         o_custkey = c_custkey				    " +&lt;br /&gt;"                         )								    " +&lt;br /&gt;"         ) custsale									    " +&lt;br /&gt;" group by										    " +&lt;br /&gt;"         cntrycode									    " +&lt;br /&gt;" order by										    " +&lt;br /&gt;"        cntrycode";&lt;br /&gt;      }&lt;br /&gt;      else&lt;br /&gt;      {&lt;br /&gt;         return "\n"+&lt;br /&gt;         " Select sysdate from dual ";&lt;br /&gt;      }&lt;br /&gt;  }&lt;br /&gt;   &lt;br /&gt;  public static void main(String[] args)&lt;br /&gt;  {&lt;br /&gt;    int max_thread_number = 1;&lt;br /&gt;    for (int i = 0; i &lt;= max_thread_number ; i++) &lt;br /&gt;    {&lt;br /&gt;          Runnable task = new Action(i);&lt;br /&gt;          Thread worker = new Thread(task);&lt;br /&gt;			    worker.start();&lt;br /&gt;		}&lt;br /&gt;  }&lt;br /&gt;  &lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-4840685172232015320?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4840685172232015320'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4840685172232015320'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/04/prepare-stress-testing-using-tpc-h.html' title='Prepare a stress testing using TPC-H benchmark'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2247355814888274026</id><published>2011-03-29T11:52:00.001+02:00</published><updated>2011-03-29T11:52:51.486+02:00</updated><title type='text'>Generate Random Data, Using bind variables to improve performance</title><content type='html'>create table salary_rates&lt;br /&gt;(&lt;br /&gt;   dept char(1),&lt;br /&gt;   rate number(2,1)&lt;br /&gt; );&lt;br /&gt;&lt;br /&gt;alter table salary_rates cache;&lt;br /&gt;&lt;br /&gt;create table emp&lt;br /&gt;(&lt;br /&gt;  id number,&lt;br /&gt;  dept char,&lt;br /&gt;  salary number&lt;br /&gt;);&lt;br /&gt;&lt;br /&gt;create unique index emp_id_idx on emp(id);&lt;br /&gt;&lt;br /&gt;create sequence emp_id;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE TRIGGER emp_trg &lt;br /&gt; BEFORE INSERT ON emp&lt;br /&gt; FOR EACH ROW&lt;br /&gt; WHEN (new.id IS NULL)&lt;br /&gt; BEGIN&lt;br /&gt;   SELECT emp_id.NEXTVAL INTO   :new.id FROM   dual;&lt;br /&gt; END;&lt;br /&gt; /&lt;br /&gt; &lt;br /&gt;--------&lt;START&gt;Salary rates Loading data------------------------&lt;br /&gt;&lt;br /&gt;insert into salary_rates values( 'A',0.1);&lt;br /&gt;insert into salary_rates values( 'B',0.2);&lt;br /&gt;insert into salary_rates values( 'C',0.3);&lt;br /&gt;insert into salary_rates values( 'D',0.4);&lt;br /&gt;commit;&lt;br /&gt;--------Salary rates Loading data &lt;END&gt;------------------------&lt;br /&gt;&lt;br /&gt;------------------------- Generate random depts -------------------------&lt;br /&gt;CREATE OR REPLACE FUNCTION GET_RANDOM_DPT RETURN CHAR&lt;br /&gt;IS&lt;br /&gt;   X NUMBER;&lt;br /&gt;   RTV CHAR;&lt;br /&gt;   BEGIN&lt;br /&gt;    X:=ROUND(dbms_random.value(1, 5));&lt;br /&gt;   &lt;br /&gt;    IF (X=1) THEN&lt;br /&gt;      RTV := 'A';&lt;br /&gt;    ELSIF (X=2) THEN&lt;br /&gt;      RTV := 'B';&lt;br /&gt;    ELSIF (X=3) THEN&lt;br /&gt;      RTV := 'C';&lt;br /&gt;    ELSE&lt;br /&gt;      RTV := 'D';&lt;br /&gt;    END IF;&lt;br /&gt;   &lt;br /&gt;    RETURN RTV;&lt;br /&gt;END;&lt;br /&gt;/ &lt;br /&gt;------------------------- Generate random depts -------------------------&lt;br /&gt;&lt;br /&gt;create or replace procedure gen_data ( emp_population number)&lt;br /&gt;is&lt;br /&gt;begin&lt;br /&gt;     FOR i IN 1 .. emp_population loop&lt;br /&gt;   insert into emp(dept,salary) values(GET_RANDOM_DPT,ROUND(dbms_random.value(1,1000000)));&lt;br /&gt;   commit;&lt;br /&gt;     END LOOP;&lt;br /&gt;end;&lt;br /&gt;/&lt;br /&gt;-----------------------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;/* Scenario : Update employee salary , ONLY those employees current salary is less than 3000  according the employee's department increase rates. &lt;br /&gt;------------------------------------------------------------------------------------------------------&lt;br /&gt;update 1&lt;br /&gt;Elapsed: 00:00:01.70&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE PROCEDURE UPDATE1 &lt;br /&gt;AS &lt;br /&gt;  rate_ number;&lt;br /&gt;begin &lt;br /&gt;    ---open c_emp;&lt;br /&gt;    for i IN ( select id,dept,salary from emp) loop&lt;br /&gt;      if (i.salary &lt; 3000 ) then&lt;br /&gt;            select rate into rate_ from salary_rates where dept=i.dept;&lt;br /&gt;            update emp set salary=(salary * rate_/100)+salary where id=i.id;&lt;br /&gt;            commit;&lt;br /&gt;      else&lt;br /&gt;          null;&lt;br /&gt;      end if;&lt;br /&gt;    end loop;&lt;br /&gt;END UPDATE1;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE OR REPLACE PROCEDURE UPDATE2 &lt;br /&gt;AS &lt;br /&gt;  rate_ number;&lt;br /&gt;  type rc is ref cursor;&lt;br /&gt;  q rc;&lt;br /&gt;begin &lt;br /&gt;    for i IN ( select id,dept,salary from emp) loop&lt;br /&gt;      if (i.salary &lt; 3007 ) then&lt;br /&gt;            open q for ' select rate from salary_rates where dept= :y ' using i.dept;&lt;br /&gt;            fetch q into rate_;&lt;br /&gt;            execute immediate ( ' update emp set salary=(salary * :r / 100) + salary where id= :x') using rate_,i.id;&lt;br /&gt;            commit;&lt;br /&gt;      else&lt;br /&gt;          null;&lt;br /&gt;      end if;&lt;br /&gt;    end loop;&lt;br /&gt;END UPDATE2;&lt;br /&gt;Elapsed: 00:00:01.32&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2247355814888274026?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2247355814888274026'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2247355814888274026'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/generate-random-data-using-bind.html' title='Generate Random Data, Using bind variables to improve performance'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-807805692081982904</id><published>2011-03-29T08:03:00.000+02:00</published><updated>2011-03-29T08:08:22.000+02:00</updated><title type='text'>How to move a table in new tablespace with NOLOGGING option</title><content type='html'>/*&lt;br /&gt;Login as sys or system &lt;br /&gt;create a tablespace with NOLOGGING option&lt;br /&gt;*/&lt;br /&gt;&lt;br /&gt;create tablespace sh_rate &lt;br /&gt; datafile 'E:\ORADATA\PROD\DATAFILE\RATES.DBF' size 128M autoextend on maxsize 2048M&lt;br /&gt; segment space management auto&lt;br /&gt; NOLOGGING; &lt;br /&gt;/*&lt;br /&gt; Grant user (The owner of the table[s], indexes etc) to access the new tablespace&lt;br /&gt;*/&lt;br /&gt;alter user parameters quota unlimited on sh_rate; &lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt;  Move tables in the new tablespace&lt;br /&gt;*/&lt;br /&gt;&lt;br /&gt;alter table parameters.sh_rates_temp move tablespace sh_rate;&lt;br /&gt;alter table parameters.sh_rate move tablespace sh_rate;&lt;br /&gt;&lt;br /&gt;/*&lt;br /&gt;    create,Recreate, or rebuild indexes &lt;br /&gt;     &lt;br /&gt;    Rebuild index : alter index xyz rebuild tablespace sh_rate;&lt;br /&gt;*/&lt;br /&gt;create index parameters.sh_rates_temp_idx1 on parameters.sh_rates_temp(code) tablespace sh_rate;&lt;br /&gt;create index parameters.sh_rate_idx1 on parameters.sh_rate(code) tablespace sh_rate;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-807805692081982904?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/807805692081982904'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/807805692081982904'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/how-to-move-table-in-new-tablespace.html' title='How to move a table in new tablespace with NOLOGGING option'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-3796424924852160289</id><published>2011-03-24T01:17:00.001+02:00</published><updated>2011-03-24T01:18:43.451+02:00</updated><title type='text'>Find out DBID from RMAN catalog</title><content type='html'>In the case that you need to restore control file or&lt;br /&gt;spfile using RMAN , you need to set the DBID first.&lt;br /&gt;In order to determine the DBID login as rman in rman catalog&lt;br /&gt;and issue the following sql:&lt;br /&gt;&lt;br /&gt;sqlplus rman/***@rman&lt;br /&gt;&lt;br /&gt;sql&gt;select dbid from &lt;span style="font-weight:bold;"&gt;rc_database&lt;/span&gt; where name='DBNAME';&lt;br /&gt;&lt;br /&gt;Another way to find out the DBID is from your RMAN logs.&lt;br /&gt;&lt;br /&gt;Example:&lt;br /&gt;&lt;br /&gt;RMAN&gt; set dbid 1150787593&lt;br /&gt;&lt;br /&gt;executing command: SET DBID&lt;br /&gt;database name is "ORCL" and DBID is 1150787593&lt;br /&gt;&lt;br /&gt;RMAN&gt; restore spfile;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-3796424924852160289?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3796424924852160289'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/3796424924852160289'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/find-out-dbid-from-rman-catalog.html' title='Find out DBID from RMAN catalog'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-158937646994935578</id><published>2011-03-19T22:56:00.001+02:00</published><updated>2011-03-19T22:56:57.912+02:00</updated><title type='text'>Oracle RAC 10g Manage Server-Side Callouts</title><content type='html'>In Oracle 10g RAC, every time a node , database , instance , service and etc. goes up or down, that event can be catched and used to make user defined callouts. So every time a state change occurs, a FAN event is posted to ONS immediately. When a node receives an event through ONS, it will asynchronously execute all executables in the server side callouts directory.&lt;br /&gt;&lt;br /&gt;Callouts directory is under $CRS_HOME/racg/usrco&lt;br /&gt;&lt;br /&gt;The example below creates a file in /home/oracle directory when the ocfs database is down. You can modify it with further functionality i.e. send mail to administrator people etc.&lt;br /&gt;&lt;br /&gt;create the file  parseCallout.sh under the $CRS_HOME/racg/usrco&lt;br /&gt;chmod +x  parseCallout.sh &lt;br /&gt;&lt;br /&gt;#!/bin/sh&lt;br /&gt;NOTIFY_EVENTTYPE=$1&lt;br /&gt;echo $NOTIFY_EVENTTYPE&lt;br /&gt;for ARCS in $*; do&lt;br /&gt;        PROPERTY=`echo $ARCS | awk -F"=" '{print $1}'`&lt;br /&gt;        echo $PROPERTY&lt;br /&gt;        VALUE=`echo $ARCS | awk -F"=" '{print $2}'`&lt;br /&gt;        echo $VALUE&lt;br /&gt;        case $PROPERTY in&lt;br /&gt;                VERSION|version)&lt;br /&gt;                        NOTIFY_VERSION=$VALUE ;;&lt;br /&gt;                SERVICE|service)&lt;br /&gt;                        NOTIFY_SERVICE=$VALUE ;;&lt;br /&gt;                DATABASE|database)&lt;br /&gt;                        NOTIFY_DATABASE=$VALUE ;;&lt;br /&gt;                INSTANCE|instance)&lt;br /&gt;                        NOTIFY_INSTANCE=$VALUE ;;&lt;br /&gt;                HOST|host)&lt;br /&gt;                        NOTIFY_HOST=$VALUE ;;&lt;br /&gt;                STATUS|status)&lt;br /&gt;                        NOTIFY_STATUS=$VALUE ;;&lt;br /&gt;                REASON|reason)&lt;br /&gt;                        NOTIFY_REASON=$VALUE ;;&lt;br /&gt;                CARD|card)&lt;br /&gt;                        NOTIFY_CARDINALITY=$VALUE ;;&lt;br /&gt;                TIMESTAMP|timestamp)&lt;br /&gt;                        NOTIFY_LOGDATE=$VALUE ;;&lt;br /&gt;                ??:??:??)&lt;br /&gt;                        NOTIFY_LOGTIME=$PROPERTY ;;&lt;br /&gt;        esac&lt;br /&gt;done&lt;br /&gt;        if  ([ "$NOTIFY_STATUS" == "down" ] &amp;&amp; [ "$NOTIFY_DATABASE" == "ocfs" ])  then&lt;br /&gt;            echo  "$NOTIFY_DATABASE is down, please investigate ... " &gt; /home/oracle/"$NOTIFY_LOGDATE".callout&lt;br /&gt;        fi&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-158937646994935578?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/158937646994935578'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/158937646994935578'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/oracle-rac-10g-manage-server-side.html' title='Oracle RAC 10g Manage Server-Side Callouts'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-2386798712696181093</id><published>2011-03-10T11:58:00.001+02:00</published><updated>2011-03-10T11:58:43.927+02:00</updated><title type='text'>Rename file using the current date and time</title><content type='html'>( Unix Version )&lt;br /&gt;&lt;br /&gt;mv /file/path/filename.txt /file/path/filename_$(date +"%m%d%y%H%M%S").txt&lt;br /&gt;&lt;br /&gt;Rename file using the current date and time ( Windows Version )&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ren  C:\file\path\filename.txt %time:~0,2%%time:~3,2%%time:~6,2%_%date:~4,2%%date:~7,2%%date:~10,4%_filename.txt&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-2386798712696181093?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2386798712696181093'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/2386798712696181093'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/rename-file-using-current-date-and-time.html' title='Rename file using the current date and time'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-9002766388927082860</id><published>2011-03-10T11:44:00.002+02:00</published><updated>2011-03-10T11:48:24.921+02:00</updated><title type='text'>Convert Oracle Date to Unix epoch and vice versa</title><content type='html'>From Oracle Date to Unix epoch&lt;br /&gt;&lt;br /&gt;select ( TO_DATE('2010-06-29', 'YYYY-MM-DD')- TO_DATE('1970-01-01', 'YYYY-MM-DD')) * 86400000 from dual;&lt;br /&gt;&lt;br /&gt;From UNIX epoch to Oracle date&lt;br /&gt;&lt;br /&gt;select TO_DATE('1970-01-01', 'YYYY-MM-DD') + 1277769600000 / 86400000 from dual&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;JAVA&lt;br /&gt;=====&lt;br /&gt;package mypackage;&lt;br /&gt;import java.text.SimpleDateFormat;&lt;br /&gt;import java.util.Calendar;&lt;br /&gt;import java.util.Date;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;public class TestClear&lt;br /&gt;{&lt;br /&gt;public TestClear()&lt;br /&gt;{&lt;br /&gt;}&lt;br /&gt;public String getUnixTime1()&lt;br /&gt;{&lt;br /&gt;java.lang.Long unixTime= new Long(System.currentTimeMillis()/1000L);&lt;br /&gt;String unixTimeString = new String(""+unixTime);&lt;br /&gt;//return unixTimeString.substring(0,6);&lt;br /&gt;return unixTimeString;&lt;br /&gt;}&lt;br /&gt;public int getUnixTime2()&lt;br /&gt;{&lt;br /&gt;int year = 2010;&lt;br /&gt;int month = 5;&lt;br /&gt;int date = 29;&lt;br /&gt;Calendar cal = Calendar.getInstance();&lt;br /&gt;cal.clear();&lt;br /&gt;cal.set(Calendar.YEAR, year);&lt;br /&gt;cal.set(Calendar.MONTH, month);&lt;br /&gt;cal.set(Calendar.DATE, date);&lt;br /&gt;java.util.Date utilDate = cal.getTime();&lt;br /&gt;java.lang.Long unixTime= new Long(cal.getTimeInMillis()/1000L);&lt;br /&gt;String unixTimeString = new String(""+unixTime);&lt;br /&gt;unixTimeString= unixTimeString.substring(0,5);&lt;br /&gt;int unixTimeInt = Integer.parseInt(unixTimeString);&lt;br /&gt;return unixTimeInt;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/**&lt;br /&gt;*&lt;br /&gt;* @param args&lt;br /&gt;*/&lt;br /&gt;public static void main(String[] args)&lt;br /&gt;{&lt;br /&gt;TestClear t= new TestClear();&lt;br /&gt;System.out.println(t.getUnixTime2());&lt;br /&gt;}&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-9002766388927082860?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9002766388927082860'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9002766388927082860'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/03/versa.html' title='Convert Oracle Date to Unix epoch and vice versa'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-4897019248954966984</id><published>2011-02-02T23:52:00.001+02:00</published><updated>2011-02-02T23:55:30.839+02:00</updated><title type='text'>Migrate a normal file-system Oracle database to ASM database</title><content type='html'>&lt;span class="Apple-style-span" &gt;Migrate a normal file-system Oracle database to ASM database &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" &gt;by Michael Georgiou&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span class="Apple-style-span" &gt;Oracle Linux 5EL 64 bits , Oracle 10.2.0.4 64 bits &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;On ASM instance create a new disk group that will host the new database&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;CREATE DISKGROUP Dgroup2 NORMAL REDUNDANCY&lt;br /&gt;&lt;br /&gt;FAILGROUP controller1 DISK&lt;br /&gt;&lt;br /&gt;'ORCL:DISK5',&lt;br /&gt;&lt;br /&gt;'ORCL:DISK6'&lt;br /&gt;&lt;br /&gt;FAILGROUP controller2 DISK&lt;br /&gt;&lt;br /&gt;'ORCL:DISK7' ,&lt;br /&gt;&lt;br /&gt;'ORCL:DISK8'&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;b&gt;Connect to Database ORCLF that is created using OMF files ( Filesystem) &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[oracle@asm_machine oracle]$ export ORACLE_SID=orclf&lt;br /&gt;&lt;br /&gt;[oracle@asm_machine oracle]$ sqlplus / as sysdba&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 10.2.0.4.0 - Production on Wed Feb 2 22:28:46 2011&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&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;b&gt;Check if the block change tracking is enable&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select status from V$block_change_tracking;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;STATUS&lt;br /&gt;&lt;br /&gt;----------&lt;br /&gt;&lt;br /&gt;DISABLED&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;if enable the disable it using the command&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;alter database disable block change tracking;&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;b&gt;Change the  db_create_file_dest and db_recovery_file_dest to point on '+DGROUP2'&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; show parameter db_create&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NAME                                 TYPE        VALUE&lt;br /&gt;&lt;br /&gt;------------------------------------ ----------- ------------------------------&lt;br /&gt;&lt;br /&gt;db_create_file_dest                  string      /oracle/oradata&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;NAME                                 TYPE        VALUE&lt;br /&gt;&lt;br /&gt;------------------------------------ ----------- ------------------------------&lt;br /&gt;&lt;br /&gt;db_recovery_file_dest                string      /oracle/flash_recovery_area&lt;br /&gt;&lt;br /&gt;db_recovery_file_dest_size           big integer 2G&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;---------------------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;Change OMF to ASM diskgroup Dgroup2&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;alter system set db_create_file_dest='+DGROUP2' scope=spfile;&lt;br /&gt;&lt;br /&gt;alter system set db_recovery_file_dest='+DGROUP2' scope=spfile;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;--Oracle recommends to use a different disk group for the recovery area. For the testing purposes I use the same disk group.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Recreate Control Files in new ASM location &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;In order to create the control file in the ASM , you need to change the control_files in spfile as follows:&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;alter system set control_files='+DGROUP2' scope=spfile;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;shutdown database&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt;shutdown immediate&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connect to rman&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; connect target&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connected to target database (not started)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; startup nomount&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Oracle instance started&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Total System Global Area     260046848 bytes&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Fixed Size                     2083168 bytes&lt;br /&gt;&lt;br /&gt;Variable Size                 83887776 bytes&lt;br /&gt;&lt;br /&gt;Database Buffers             167772160 bytes&lt;br /&gt;&lt;br /&gt;Redo Buffers                   6303744 bytes&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; restore controlfile from '/oracle/oradata/ORCLF/controlfile/o1_mf_6nmgt4mo_.ctl';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Starting restore at 02-FEB-11&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: sid=156 devtype=DISK&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: copied control file copy&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/controlfile/current.256.742086217&lt;br /&gt;&lt;br /&gt;Finished restore at 02-FEB-11&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt;exit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[oracle@asm_machine dbs]$ sqlplus / as sysdba&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 10.2.0.4.0 - Production on Wed Feb 2 23:05:29 2011&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Connected to:&lt;br /&gt;&lt;br /&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production&lt;br /&gt;&lt;br /&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select open_mode from v$database;&lt;br /&gt;&lt;br /&gt;select open_mode from v$database&lt;br /&gt;&lt;br /&gt;                     *&lt;br /&gt;&lt;br /&gt;ERROR at line 1:&lt;br /&gt;&lt;br /&gt;ORA-01507: database not mounted&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; alter system set control_files='+DGROUP2/orclf/controlfile/current.256.742086217' scope=spfile;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;System altered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database mount;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt;exit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Migrate the whole database using RMAN COPY command&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;rman&lt;br /&gt;&lt;br /&gt;RMAN&gt; connect target&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;connected to target database: ORCLF (DBID=3004244068, not open)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; backup as copy database format '+DGROUP2';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Starting backup at 02-FEB-11&lt;br /&gt;&lt;br /&gt;using target database control file instead of recovery catalog&lt;br /&gt;&lt;br /&gt;allocated channel: ORA_DISK_1&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: sid=159 devtype=DISK&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting datafile copy&lt;br /&gt;&lt;br /&gt;input datafile fno=00001 name=/oracle/oradata/ORCLF/datafile/o1_mf_system_6nmgrm37_.dbf&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/datafile/system.257.742086491 tag=TAG20110202T230810 recid=1 stamp=742086537&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:55&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting datafile copy&lt;br /&gt;&lt;br /&gt;input datafile fno=00003 name=/oracle/oradata/ORCLF/datafile/o1_mf_sysaux_6nmgrm3d_.dbf&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/datafile/sysaux.258.742086545 tag=TAG20110202T230810 recid=2 stamp=742086573&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:35&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting datafile copy&lt;br /&gt;&lt;br /&gt;input datafile fno=00002 name=/oracle/oradata/ORCLF/datafile/o1_mf_undotbs1_6nmgrm64_.dbf&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/datafile/undotbs1.259.742086581 tag=TAG20110202T230810 recid=3 stamp=742086586&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting datafile copy&lt;br /&gt;&lt;br /&gt;input datafile fno=00004 name=/oracle/oradata/ORCLF/datafile/o1_mf_users_6nmgrm6c_.dbf&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/datafile/users.260.742086587 tag=TAG20110202T230810 recid=4 stamp=742086590&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting datafile copy&lt;br /&gt;&lt;br /&gt;copying current control file&lt;br /&gt;&lt;br /&gt;output filename=+DGROUP2/orclf/controlfile/backup.261.742086591 tag=TAG20110202T230810 recid=5 stamp=742086595&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:08&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting full datafile backupset&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: specifying datafile(s) in backupset&lt;br /&gt;&lt;br /&gt;including current SPFILE in backupset&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: starting piece 1 at 02-FEB-11&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: finished piece 1 at 02-FEB-11&lt;br /&gt;&lt;br /&gt;piece handle=+DGROUP2/orclf/backupset/2011_02_02/nnsnf0_tag20110202t230810_0.262.742086599 tag=TAG20110202T230810 comment=NONE&lt;br /&gt;&lt;br /&gt;channel ORA_DISK_1: backup set complete, elapsed time: 00:00:08&lt;br /&gt;&lt;br /&gt;Finished backup at 02-FEB-11&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; switch database to copy;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;datafile 1 switched to datafile copy "+DGROUP2/orclf/datafile/system.257.742086491"&lt;br /&gt;&lt;br /&gt;datafile 2 switched to datafile copy "+DGROUP2/orclf/datafile/undotbs1.259.742086581"&lt;br /&gt;&lt;br /&gt;datafile 3 switched to datafile copy "+DGROUP2/orclf/datafile/sysaux.258.742086545"&lt;br /&gt;&lt;br /&gt;datafile 4 switched to datafile copy "+DGROUP2/orclf/datafile/users.260.742086587"&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; recover database;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Starting recover at 02-FEB-11&lt;br /&gt;&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;starting media recovery&lt;br /&gt;&lt;br /&gt;media recovery complete, elapsed time: 00:00:01&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Finished recover at 02-FEB-11&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt; alter database open;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;database opened&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RMAN&gt;exit&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Migrate Temp tablespace and Redo logs  &lt;/b&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select FILE_NAME, TABLESPACE_NAME from  dba_temp_files;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FILE_NAME&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;TABLESPACE_NAME&lt;br /&gt;&lt;br /&gt;------------------------------&lt;br /&gt;&lt;br /&gt;/oracle/oradata/ORCLF/datafile/o1_mf_temp_6nmgtqkx_.tmp&lt;br /&gt;&lt;br /&gt;TEMP&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; create temporary tablespace TEMP01 tempfile '+DGROUP2' size 128M autoextend off;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tablespace created.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; alter database default temporary tablespace TEMP01;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Database altered.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; drop tablespace TEMP;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Tablespace dropped.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select FILE_NAME, TABLESPACE_NAME from  dba_temp_files;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FILE_NAME&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;TABLESPACE_NAME&lt;br /&gt;&lt;br /&gt;------------------------------&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/tempfile/temp01.263.742086965&lt;br /&gt;&lt;br /&gt;TEMP01&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 1;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 2;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 3;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 1;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 2;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 3;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE GROUP 4 '+DGROUP2' ;&lt;br /&gt;&lt;br /&gt;SQL&gt; ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 4;&lt;br /&gt;&lt;br /&gt;SQL&gt;ALTER DATABASE ADD LOGFILE MEMBER '+DGROUP2' TO GROUP 4;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select group#,members,status from v$log;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;   GROUP#    MEMBERS STATUS&lt;br /&gt;&lt;br /&gt;---------- ---------- ----------------&lt;br /&gt;&lt;br /&gt;        1          4 INACTIVE&lt;br /&gt;&lt;br /&gt;        2          4 INACTIVE&lt;br /&gt;&lt;br /&gt;        3          4 INACTIVE&lt;br /&gt;&lt;br /&gt;        4          2 CURRENT&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select member from v$logfile;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MEMBER&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;/oracle/oradata/ORCLF/onlinelog/o1_mf_3_6nmgtdfp_.log&lt;br /&gt;&lt;br /&gt;/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_3_6nmgtfpq_.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/oracle/oradata/ORCLF/onlinelog/o1_mf_2_6nmgtb0c_.log&lt;br /&gt;&lt;br /&gt;/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_2_6nmgtc7f_.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;/oracle/oradata/ORCLF/onlinelog/o1_mf_1_6nmgt7lv_.log&lt;br /&gt;&lt;br /&gt;/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_1_6nmgt8wc_.log&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_1.264.742087309&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_2.265.742087325&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_3.266.742087431&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_4.267.742087451&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_1.268.742087647&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MEMBER&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_2.269.742087669&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_3.270.742087687&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_4.271.742087703&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;14 rows selected.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/oradata/ORCLF/onlinelog/o1_mf_2_6nmgtb0c_.log';&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_2_6nmgtc7f_.log';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/oradata/ORCLF/onlinelog/o1_mf_3_6nmgtdfp_.log';&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_3_6nmgtfpq_.log';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/oradata/ORCLF/onlinelog/o1_mf_1_6nmgt7lv_.log';&lt;br /&gt;&lt;br /&gt;ALTER DATABASE DROP LOGFILE MEMBER '/oracle/flash_recovery_area/ORCLF/onlinelog/o1_mf_1_6nmgt8wc_.log';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt; select member from v$logfile;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;MEMBER&lt;br /&gt;&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_1.264.742087309&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_2.265.742087325&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_3.266.742087431&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_4.267.742087451&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_1.268.742087647&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_2.269.742087669&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_3.270.742087687&lt;br /&gt;&lt;br /&gt;+DGROUP2/orclf/onlinelog/group_4.271.742087703&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;8 rows selected.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-4897019248954966984?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4897019248954966984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/4897019248954966984'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/02/migrate-normal-file-system-oracle.html' title='Migrate a normal file-system Oracle database to ASM database'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8603584301407323980</id><published>2011-01-31T23:43:00.002+02:00</published><updated>2011-01-31T23:46:52.204+02:00</updated><title type='text'>Create a database using the ASM storage</title><content type='html'>Tested environment : Oracle Linux 5 64 bits&lt;br /&gt;Oracle 10.2.0.4 64bits for Linux&lt;br /&gt;&lt;br /&gt;Create the database files init and password file&lt;br /&gt;&lt;br /&gt;initorcl.ora&lt;br /&gt;&lt;br /&gt;audit_file_dest='/oracle/admin/orcl/adump'&lt;br /&gt;background_dump_dest='/oracle/admin/orcl/bdump'&lt;br /&gt;compatible='10.2.0.4.0'&lt;br /&gt;core_dump_dest='/oracle/admin/orcl/cdump'&lt;br /&gt;db_block_size=8192&lt;br /&gt;db_file_multiblock_read_count=32&lt;br /&gt;db_name='orcl'&lt;br /&gt;job_queue_processes=10&lt;br /&gt;open_cursors=300&lt;br /&gt;pga_aggregate_target=128M&lt;br /&gt;processes=150&lt;br /&gt;remote_login_passwordfile='EXCLUSIVE'&lt;br /&gt;sga_target=512M&lt;br /&gt;undo_management='AUTO'&lt;br /&gt;undo_tablespace='UNDOTBS1'&lt;br /&gt;user_dump_dest='/oracle/admin/orcl/udump'&lt;br /&gt;db_create_file_dest='+DGROUP1'&lt;br /&gt;control_files='+DGROUP1'&lt;br /&gt;log_archive_dest="LOCATION='+DGROUP1'"&lt;br /&gt;db_create_online_log_dest_1='+DGROUP1'&lt;br /&gt;db_create_online_log_dest_2='+DGROUP1'&lt;br /&gt;db_recovery_file_dest='+DGROUP1'  &lt;br /&gt;db_recovery_file_dest_size=6G&lt;br /&gt;LOG_ARCHIVE_DEST_1='LOCATION=USE_DB_RECOVERY_FILE_DEST'&lt;br /&gt;&lt;br /&gt;Password file &lt;br /&gt;&lt;br /&gt;orapwd file=orapworcl password=oracle entries=5&lt;br /&gt;&lt;br /&gt;Create the dumps directories as described in initorcl.ora &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;mkdir -p /oracle/admin/orcl/adump&lt;br /&gt;mkdir -p /oracle/admin/orcl/cdump&lt;br /&gt;mkdir -p /oracle/admin/orcl/bdump&lt;br /&gt;mkdir -p /oracle/admin/orcl/udump&lt;br /&gt;&lt;br /&gt;chmod 755 /oracle/admin&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Start the instance using the nomount startup option&lt;br /&gt;&lt;br /&gt;export ORACLE_SID=orcl&lt;br /&gt;sqlplus / as sysdba&lt;br /&gt;sql&gt; startup nomount&lt;br /&gt;&lt;br /&gt;Create the database&lt;br /&gt;&lt;br /&gt;sql&gt;CREATE DATABASE orcl&lt;br /&gt;MAXDATAFILES 100&lt;br /&gt;MAXLOGFILES 6&lt;br /&gt;MAXLOGHISTORY 100&lt;br /&gt;MAXINSTANCES 1&lt;br /&gt;ARCHIVELOG&lt;br /&gt;LOGFILE&lt;br /&gt;GROUP 1 ('+DGROUP1') size 10M,&lt;br /&gt;GROUP 2 ('+DGROUP1') size 10M&lt;br /&gt;DATAFILE '+DGROUP1'&lt;br /&gt;SYSAUX DATAFILE '+DGROUP1'&lt;br /&gt;DEFAULT TEMPORARY TABLESPACE TEMP tempfile '+DGROUP1'&lt;br /&gt;UNDO TABLESPACE UNDOTBS1 DATAFILE '+DGROUP1'&lt;br /&gt;CHARACTER SET UTF8&lt;br /&gt;NATIONAL CHARACTER SET UTF8;&lt;br /&gt;&lt;br /&gt;Create the data dictionary and the catalog&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;@?/rdbms/admin/catalog&lt;br /&gt;@?/rdbms/admin/catproc&lt;br /&gt;@?/rdbms/admin/utlrp&lt;br /&gt;&lt;br /&gt;connect system/manager&lt;br /&gt;@?/sqlplus/admin/pupbld&lt;br /&gt;&lt;br /&gt;Important Note: &lt;br /&gt;When you restart the database , the instance will not recognize the control file path ,since in init.ora this parameter is defined with ASM's incomplete name. Thus in order to start the database you need to replace it with an ASM qualified name or ASM numeric name or ASM alias . Thus , Open the asmcmd and find the control file qualifies name and use it your database's initorcl.ora file. Alternate ,  select the group_name,file and incarnation from v$ASM_FILE from ASM instance and use this format as my second example.&lt;br /&gt;&lt;br /&gt;control_files="+DGROUP1/controlfile/current.256.740948485"&lt;br /&gt;control_files="+DGROUP1.256.740948485&lt;br /&gt;&lt;br /&gt;create spfile='+dgroup1(PARAMETERFILE)' from pfile;&lt;br /&gt;&lt;br /&gt;ASM Files after database creation&lt;br /&gt;&lt;br /&gt;ASMCMD&gt;cd +DGROUP1/orcl&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;ARCHIVELOG/&lt;br /&gt;CONTROLFILE/&lt;br /&gt;DATAFILE/&lt;br /&gt;ONLINELOG/&lt;br /&gt;TEMPFILE/&lt;br /&gt;flash_recovery_area/&lt;br /&gt;ASMCMD&gt;&lt;br /&gt;ASMCMD&gt; cd ONLINELOG&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;group_1.257.740948489&lt;br /&gt;group_2.258.740948491&lt;br /&gt;ASMCMD&gt; cd ../CONTROLFILE&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;Current.256.740948485&lt;br /&gt;ASMCMD&gt; cd ../DATAFILE&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;SYSAUX.261.740948525&lt;br /&gt;SYSTEM.259.740948495&lt;br /&gt;UNDOTBS1.260.740948513&lt;br /&gt;ASMCMD&gt; cd ../TEMPFILE&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;TEMP.262.740948535&lt;br /&gt;ASMCMD&gt; pwd&lt;br /&gt;+DGROUP1/orcl/ARCHIVELOG/2011_01_21&lt;br /&gt;ASMCMD&gt; ls&lt;br /&gt;thread_1_seq_43.264.741044093&lt;br /&gt;thread_1_seq_44.265.741044381&lt;br /&gt;&lt;br /&gt;Backup the database using RMAN , the only way to backup Oracle database having ASM files.  &lt;br /&gt;&lt;br /&gt;rman TARGET sys/oracle@orcl NOCATALOG&lt;br /&gt;&lt;br /&gt;change archivelog all crosscheck;&lt;br /&gt;run&lt;br /&gt;{&lt;br /&gt;allocate channel ch1 type disk;&lt;br /&gt;backup incremental level 1 as backupset tag=orcl_L1 (database);&lt;br /&gt;sql 'alter system archive log current';&lt;br /&gt;release channel ch1;&lt;br /&gt;allocate channel ch1 type disk;&lt;br /&gt;backup&lt;br /&gt;archivelog all&lt;br /&gt;delete all input;&lt;br /&gt;release channel ch1;&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Find all ASM aliases files&lt;br /&gt;&lt;br /&gt;set heading off&lt;br /&gt;select '+'||dg.name||'/'||al.name &lt;br /&gt;from v$asm_diskgroup dg,v$asm_alias al&lt;br /&gt;where dg.group_number=al.group_number&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;-- Create an alias using the fully qualified filename.&lt;br /&gt;ALTER DISKGROUP disk_group_1 ADD ALIAS '+disk_group_1/my_dir/my_file.dbf'&lt;br /&gt;  FOR '+disk_group_1/mydb/datafile/my_ts.342.3';&lt;br /&gt;&lt;br /&gt;-- Create an alias using the numeric form filename.&lt;br /&gt;ALTER DISKGROUP disk_group_1 ADD ALIAS '+disk_group_1/my_dir/my_file.dbf'&lt;br /&gt;  FOR '+disk_group_1.342.3';&lt;br /&gt;&lt;br /&gt;-- Rename an alias.&lt;br /&gt;ALTER DISKGROUP disk_group_1 RENAME ALIAS '+disk_group_1/my_dir/my_file.dbf'&lt;br /&gt;  TO '+disk_group_1/my_dir/my_file2.dbf';&lt;br /&gt;&lt;br /&gt;-- Delete an alias.&lt;br /&gt;ALTER DISKGROUP disk_group_1 DELETE ALIAS '+disk_group_1/my_dir/my_file.dbf';&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;My system aliases &lt;br /&gt;+DGROUP1/orcl&lt;br /&gt;+DGROUP1/utilities.dbf&lt;br /&gt;+DGROUP1/ARCHIVELOG&lt;br /&gt;+DGROUP1/2011_01_21&lt;br /&gt;+DGROUP1/thread_1_seq_43.264.741044093&lt;br /&gt;+DGROUP1/thread_1_seq_44.265.741044381&lt;br /&gt;+DGROUP1/thread_1_seq_45.268.741045337&lt;br /&gt;+DGROUP1/thread_1_seq_46.269.741045341&lt;br /&gt;+DGROUP1/thread_1_seq_47.272.741045529&lt;br /&gt;+DGROUP1/thread_1_seq_48.273.741045531&lt;br /&gt;+DGROUP1/thread_1_seq_49.274.741046177&lt;br /&gt;+DGROUP1/thread_1_seq_50.275.741046187&lt;br /&gt;+DGROUP1/thread_1_seq_51.276.741046197&lt;br /&gt;&lt;br /&gt;+DGROUP1/thread_1_seq_52.277.741046205&lt;br /&gt;+DGROUP1/thread_1_seq_53.278.741046213&lt;br /&gt;+DGROUP1/thread_1_seq_54.279.741046223&lt;br /&gt;+DGROUP1/thread_1_seq_55.280.741046231&lt;br /&gt;+DGROUP1/thread_1_seq_56.281.741046243&lt;br /&gt;+DGROUP1/thread_1_seq_57.282.741046257&lt;br /&gt;+DGROUP1/thread_1_seq_58.283.741046279&lt;br /&gt;+DGROUP1/2011_01_22&lt;br /&gt;+DGROUP1/thread_1_seq_59.285.741053405&lt;br /&gt;+DGROUP1/CONTROLFILE&lt;br /&gt;+DGROUP1/Current.256.740948485&lt;br /&gt;+DGROUP1/ONLINELOG&lt;br /&gt;+DGROUP1/group_1.257.740948489&lt;br /&gt;&lt;br /&gt;+DGROUP1/group_2.258.740948491&lt;br /&gt;+DGROUP1/DATAFILE&lt;br /&gt;+DGROUP1/SYSTEM.259.740948495&lt;br /&gt;+DGROUP1/UNDOTBS1.260.740948513&lt;br /&gt;+DGROUP1/SYSAUX.261.740948525&lt;br /&gt;+DGROUP1/USERS.263.740964343&lt;br /&gt;+DGROUP1/UTILITIES.284.741048253&lt;br /&gt;+DGROUP1/TEMPFILE&lt;br /&gt;+DGROUP1/TEMP.262.740948535&lt;br /&gt;+DGROUP1/BACKUPSET&lt;br /&gt;+DGROUP1/2011_01_21&lt;br /&gt;+DGROUP1/nnndn1_ORCL_L1_0.266.741045261&lt;br /&gt;+DGROUP1/ncsnn1_ORCL_L1_0.267.741045327&lt;br /&gt;&lt;br /&gt;+DGROUP1/nnndn1_ORCL_L1_0.270.741045483&lt;br /&gt;+DGROUP1/ncsnn1_ORCL_L1_0.271.741045519&lt;br /&gt;+DGROUP1/control01.ctl&lt;br /&gt;+DGROUP1/flash_recovery_area&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;alter diskgroup DGROUP1 add alias '+DGROUP1/users.dbf' for '+DGROUP1/orcl/datafile/users.263.740964343';&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-8603584301407323980?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8603584301407323980'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/8603584301407323980'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/01/create-database-using-asm-storage.html' title='Create a database using the ASM storage'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-7651392799868840053</id><published>2011-01-16T00:18:00.002+02:00</published><updated>2011-01-16T00:25:09.854+02:00</updated><title type='text'>Create ASM instance Manualy on Oracle 10gR2 ( Using Virtual Box)</title><content type='html'>Automatic Storage Manage on Oracle 10gR2 RAC &lt;br /&gt;Oracle Virtual Box 3.2.12  using Oracle Linux 5&lt;br /&gt;&lt;br /&gt;Create the VM on Oracle Virtual Box 3.2.12 ( ASM_MACHINE)&lt;br /&gt;&lt;br /&gt;Create VM's disks &lt;br /&gt;&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk1.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk2.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk3.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk4.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk5.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk6.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk7.vdi --size 2048 --format VDI --variant Fixed &lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" createhd --filename D:\ora-virtual-box\asm-disks\asm-disk8.vdi --size 2048 --format VDI --variant Fixed&lt;br /&gt;&lt;br /&gt;Assign the disk to the machine ASM_MACHINE&lt;br /&gt;&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 1 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk1.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 2 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk2.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 3 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk3.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 4 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk4.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 5 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk5.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 6 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk6.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 7 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk7.vdi&lt;br /&gt;"C:\Program Files\Oracle\VirtualBox\VBoxManage" storageattach ASM_MACHINE --storagectl "SATA Controller" --port 8 --device 0 --type hdd --medium D:\ora-virtual-box\asm-disks\asm-disk8.vdi&lt;br /&gt;&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;Install Oracle Linux 5 64bit , prepare Oracle's kernel parameters OS depended rpm packages.&lt;br /&gt;....&lt;br /&gt;&lt;br /&gt;Install ASMLib rpms using the following command&lt;br /&gt;&lt;br /&gt;for the kernel: 2.6.18-194.el5&lt;br /&gt;rpm -ivh oracleasm-support-2.1.3-1.el5.x86_64.rpm&lt;br /&gt;rpm -ivh oracleasm-2.6.18-194.el5-2.0.5-1.el5.x86_64.rpm&lt;br /&gt;rpm -ivh oracleasmlib-2.0.4-1.el5.x86_64.rpm&lt;br /&gt;&lt;br /&gt;Configure ASMLib using the following command&lt;br /&gt;oracleasm configure -i&lt;br /&gt;&lt;br /&gt;Load the kernel module using the following command.&lt;br /&gt;usr/sbin/oracleasm init&lt;br /&gt;&lt;br /&gt;Make sure you have the correct version of the driver&lt;br /&gt;/usr/sbin/oracleasm update-driver&lt;br /&gt;&lt;br /&gt;Mark the five shared disks as follows&lt;br /&gt;/usr/sbin/oracleasm createdisk DISK1  /dev/sdb1&lt;br /&gt;/usr/sbin/oracleasm createdisk DISK2  /dev/sdc1&lt;br /&gt;/usr/sbin/oracleasm createdisk DISK3  /dev/sdd1&lt;br /&gt;/usr/sbin/oracleasm createdisk DISK4  /dev/sde1&lt;br /&gt;&lt;br /&gt;/usr/sbin/oracleasm createdisk DISK5  /dev/sdf1 &lt;br /&gt;/usr/sbin/oracleasm createdisk DISK6  /dev/sdg1 &lt;br /&gt;/usr/sbin/oracleasm createdisk DISK7  /dev/sdh1 &lt;br /&gt;/usr/sbin/oracleasm createdisk DISK8  /dev/sdi1&lt;br /&gt;&lt;br /&gt;Configuration the local CSS &lt;br /&gt;( run it as root)&lt;br /&gt;&lt;br /&gt;#localconfig delete&lt;br /&gt;/etc/oracle does not exist. Creating it now.&lt;br /&gt;/u01/app/oracle/product/10.2.0/db_1/bin/localconfig: line 737: /etc/init.d/init.cssd: No such file or directory&lt;br /&gt;&lt;br /&gt;#localconfig add&lt;br /&gt;Successfully accumulated necessary OCR keys.&lt;br /&gt;Creating OCR keys for user 'root', privgrp 'root'..&lt;br /&gt;Operation successful.&lt;br /&gt;Configuration for local CSS has been initialized&lt;br /&gt;&lt;br /&gt;Adding to inittab&lt;br /&gt;Startup will be queued to init within 30 seconds.&lt;br /&gt;Checking the status of new Oracle init process...&lt;br /&gt;Expecting the CRS daemons to be up within 600 seconds.&lt;br /&gt;CSS is active on these nodes.&lt;br /&gt;        asm_machine&lt;br /&gt;CSS is active on all nodes.&lt;br /&gt;Oracle CSS service is installed and running under init(1M)&lt;br /&gt;&lt;br /&gt;ps -ef | grep css&lt;br /&gt;oracle   14277     1  0 21:36 ?        00:00:00 /u01/app/oracle/product/10.2.0/db_1/bin/ocssd.bin&lt;br /&gt;&lt;br /&gt;Create the ASM instance &lt;br /&gt;Directories:&lt;br /&gt;mkdir -p /oracle/admin/+ASM/bdump&lt;br /&gt;mkdir -p /oracle/admin/+ASM/cdump&lt;br /&gt;mkdir -p /oracle/admin/+ASM/udump&lt;br /&gt;&lt;br /&gt;Pfile :&lt;br /&gt;create the init+ASM.ora under $ORACLE_HOME/dbs and add the following :&lt;br /&gt;&lt;br /&gt;background_dump_dest=/oracle/admin/+ASM/bdump&lt;br /&gt;core_dump_dest=/oracle/admin/+ASM/cdump&lt;br /&gt;user_dump_dest=/oracle/admin/+ASM/udump&lt;br /&gt;instance_type=asm&lt;br /&gt;compatible=10.2.0.4&lt;br /&gt;large_pool_size=12M&lt;br /&gt;remote_login_passwordfile=exclusive&lt;br /&gt;ASM_DISKGROUPS=Dgroup1&lt;br /&gt;ASM_DISKSTRING='ORCL:DISK*'&lt;br /&gt;&lt;br /&gt;Password File:&lt;br /&gt;orapwd file=orapw+asm password=oracle entries=5&lt;br /&gt;&lt;br /&gt;/etc/oratab&lt;br /&gt;+ASM:/u01/app/oracle/product/10.2.0/db_1:N&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Start the ASM instance and Create Diskgroups &lt;br /&gt;Note:&lt;br /&gt;NORMAL REDUNDANCY (2-way mirroring by default for most file types) &lt;br /&gt;HIGH REDUNDANCY (3-way mirroring for all files)&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;[oracle@asm_machine dbs]$ export ORACLE_SID=+ASM&lt;br /&gt;[oracle@asm_machine dbs]$ sqlplus / as sysdba&lt;br /&gt;&lt;br /&gt;SQL*Plus: Release 10.2.0.4.0 - Production on Sat Jan 15 23:30:46 2011&lt;br /&gt;&lt;br /&gt;Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.&lt;br /&gt;&lt;br /&gt;Connected to an idle instance.&lt;br /&gt;&lt;br /&gt;SQL&gt; startup nomount&lt;br /&gt;ASM instance started&lt;br /&gt;&lt;br /&gt;Total System Global Area  130023424 bytes&lt;br /&gt;Fixed Size                  2082208 bytes&lt;br /&gt;Variable Size             102775392 bytes&lt;br /&gt;ASM Cache                  25165824 bytes&lt;br /&gt;SQL&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;GROUP_NUMBER DISK_NUMBER MOUNT_S HEADER_STATU STATE    PATH&lt;br /&gt;------------ ----------- ------- ------------ -------- ------------&lt;br /&gt;           0           1 CLOSED  PROVISIONED  NORMAL   ORCL:DISK2&lt;br /&gt;           0           2 CLOSED  PROVISIONED  NORMAL   ORCL:DISK3&lt;br /&gt;           0           7 CLOSED  PROVISIONED  NORMAL   ORCL:DISK8&lt;br /&gt;           0           4 CLOSED  PROVISIONED  NORMAL   ORCL:DISK5&lt;br /&gt;           0           5 CLOSED  PROVISIONED  NORMAL   ORCL:DISK6&lt;br /&gt;           0           6 CLOSED  PROVISIONED  NORMAL   ORCL:DISK7&lt;br /&gt;           0           3 CLOSED  PROVISIONED  NORMAL   ORCL:DISK4&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;•UNKNOWN - Automatic Storage Management disk header has not been read&lt;br /&gt;&lt;br /&gt;•CANDIDATE - Disk is not part of a disk group and may be added to a disk group with the ALTER DISKGROUP statement&lt;br /&gt;&lt;br /&gt;•INCOMPATIBLE - Version number in the disk header is not compatible with the Automatic Storage Management software version.&lt;br /&gt;&lt;br /&gt;•PROVISIONED - Disk is not part of a disk group and may be added to a disk group with the ALTER DISKGROUP statement. &lt;br /&gt;The PROVISIONED header status is different from the CANDIDATE header status in that PROVISIONED &lt;br /&gt;implies that an additional platform-specific action has been taken by an administrator to make the disk available for Automatic Storage Management.&lt;br /&gt;&lt;br /&gt;•MEMBER - Disk is a member of an existing disk group. No attempt should be made to add the disk to a different disk group. &lt;br /&gt;The ALTER DISKGROUP statement will reject such an addition unless overridden with the FORCE option&lt;br /&gt;&lt;br /&gt;•FORMER - Disk was once part of a disk group but has been dropped cleanly from the group. It may be added to a new disk group with the ALTER DISKGROUP statement.&lt;br /&gt;&lt;br /&gt;•CONFLICT - Automatic Storage Management disk was not mounted due to a conflict&lt;br /&gt;&lt;br /&gt;•FOREIGN - Disk contains data created by an Oracle product other than ASM. This includes datafiles, logfiles, and OCR disks.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;SQL&gt;CREATE DISKGROUP Dgroup1 NORMAL REDUNDANCY&lt;br /&gt;FAILGROUP controller1 DISK&lt;br /&gt;'ORCL:DISK1',&lt;br /&gt;'ORCL:DISK2'&lt;br /&gt;FAILGROUP controller2 DISK&lt;br /&gt;'ORCL:DISK3' ,&lt;br /&gt;'ORCL:DISK4'&lt;br /&gt;/&lt;br /&gt;&lt;br /&gt;GROUP_NUMBER DISK_NUMBER MOUNT_S HEADER_STATU STATE    PATH&lt;br /&gt;------------ ----------- ------- ------------ -------- ---------------&lt;br /&gt;           0           4 CLOSED  PROVISIONED  NORMAL   ORCL:DISK5&lt;br /&gt;           0           5 CLOSED  PROVISIONED  NORMAL   ORCL:DISK6&lt;br /&gt;           0           6 CLOSED  PROVISIONED  NORMAL   ORCL:DISK7&lt;br /&gt;           0           7 CLOSED  PROVISIONED  NORMAL   ORCL:DISK8&lt;br /&gt;           1           0 CACHED  MEMBER       NORMAL   ORCL:DISK1&lt;br /&gt;           1           1 CACHED  MEMBER       NORMAL   ORCL:DISK2&lt;br /&gt;           1           2 CACHED  MEMBER       NORMAL   ORCL:DISK3&lt;br /&gt;           1           3 CACHED  MEMBER       NORMAL   ORCL:DISK4&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-7651392799868840053?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7651392799868840053'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7651392799868840053'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2011/01/create-asm-instance-manualy-on-oracle.html' title='Create ASM instance Manualy on Oracle 10gR2 ( Using Virtual Box)'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-175865836441755861</id><published>2010-12-21T13:22:00.000+02:00</published><updated>2010-12-21T13:23:44.126+02:00</updated><title type='text'>Mount new disk in linux</title><content type='html'>fdisk -l &lt;br /&gt;fdisk /dev/sdl&lt;br /&gt;            n&lt;br /&gt;     p&lt;br /&gt;     w&lt;br /&gt;&lt;br /&gt;mkfs.ext3 -b 4096 /dev/sdl1&lt;br /&gt;mkdir /oracle&lt;br /&gt;# add in /etc/fstab the following line &lt;br /&gt;/dev/sdl1              /oracle                  ext3    defaults        0 0&lt;br /&gt;mount /oracle&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-175865836441755861?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/175865836441755861'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/175865836441755861'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2010/12/mount-new-disk-in-linux.html' title='Mount new disk in linux'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-7679219559640440669</id><published>2010-01-22T09:19:00.002+02:00</published><updated>2010-01-22T09:22:01.135+02:00</updated><title type='text'>Find if port 1521 is open using netstat( windows, unix )</title><content type='html'>Windows&lt;br /&gt;========&lt;br /&gt;netstat -an |find /i "listening" |find /i "1521"&lt;br /&gt;&lt;br /&gt;Unix ( Aix - Linux etc)&lt;br /&gt;==========================&lt;br /&gt;netstat -an | grep LISTEN |grep 1521&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-7679219559640440669?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7679219559640440669'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/7679219559640440669'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2010/01/find-if-port-1521-is-open-using-netstat.html' title='Find if port 1521 is open using netstat( windows, unix )'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-981018098427273072</id><published>2009-12-16T12:52:00.005+02:00</published><updated>2009-12-16T12:59:39.755+02:00</updated><title type='text'>How to find which tables have FK bases on PK parent table</title><content type='html'>select owner,constraint_name,constraint_type,table_name,r_owner,r_constraint_name&lt;br /&gt;from all_constraints &lt;br /&gt;where constraint_type='R'&lt;br /&gt;and status='ENABLED'&lt;br /&gt;and r_constraint_name in (select constraint_name from all_constraints where   constraint_type in ('P','U') and table_name='TABLE_NAME');&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-981018098427273072?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/981018098427273072'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/981018098427273072'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2009/12/how-to-find-which-tables-have-fk-bases.html' title='How to find which tables have FK bases on PK parent table'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-1241784001991985315</id><published>2009-11-30T12:21:00.003+02:00</published><updated>2009-11-30T12:24:41.261+02:00</updated><title type='text'>Dump Oracle String</title><content type='html'>SQL&gt; select &lt;span style="font-weight:bold;"&gt;dump&lt;/span&gt;('Michael Georgiou') from dual;&lt;br /&gt;&lt;br /&gt;DUMP('MICHAELGEORGIOU')&lt;br /&gt;-------------------------------------------------------------------------&lt;br /&gt;Typ=96 Len=16: 77,105,99,104,97,101,108,32,71,101,111,114,103,105,111,117&lt;br /&gt;&lt;br /&gt;SQL&gt; select ascii('M') from dual;&lt;br /&gt;&lt;br /&gt;ASCII('M')&lt;br /&gt;----------&lt;br /&gt;        77&lt;br /&gt;&lt;br /&gt;SQL&gt; select ascii('i') from dual;&lt;br /&gt;&lt;br /&gt;ASCII('I')&lt;br /&gt;----------&lt;br /&gt;       105&lt;br /&gt;&lt;br /&gt;Complete list of ascii characters are listed below:&lt;br /&gt;&lt;br /&gt;Dec Hex Oct Char Description&lt;br /&gt;0 0 000   null&lt;br /&gt;1 1 001   start of heading&lt;br /&gt;2 2 002   start of text&lt;br /&gt;3 3 003   end of text&lt;br /&gt;4 4 004   end of transmission&lt;br /&gt;5 5 005   enquiry&lt;br /&gt;6 6 006   acknowledge&lt;br /&gt;7 7 007   bell&lt;br /&gt;8 8 010   backspace&lt;br /&gt;9 9 011   horizontal tab&lt;br /&gt;10 A 012   new line&lt;br /&gt;11 B 013   vertical tab&lt;br /&gt;12 C 014   new page&lt;br /&gt;13 D 015   carriage return&lt;br /&gt;14 E 016   shift out&lt;br /&gt;15 F 017   shift in&lt;br /&gt;16 10 020   data link escape&lt;br /&gt;17 11 021   device control 1&lt;br /&gt;18 12 022   device control 2&lt;br /&gt;19 13 023   device control 3&lt;br /&gt;20 14 024   device control 4&lt;br /&gt;21 15 025   negative acknowledge&lt;br /&gt;22 16 026   synchronous idle&lt;br /&gt;23 17 027   end of trans. block&lt;br /&gt;24 18 030   cancel&lt;br /&gt;25 19 031   end of medium&lt;br /&gt;26 1A 032   substitute&lt;br /&gt;27 1B 033   escape&lt;br /&gt;28 1C 034   file separator&lt;br /&gt;29 1D 035   group separator&lt;br /&gt;30 1E 036   record separator&lt;br /&gt;31 1F 037   unit separator&lt;br /&gt;32 20 040   space&lt;br /&gt;33 21 041 !  &lt;br /&gt;34 22 042 "  &lt;br /&gt;35 23 043 #  &lt;br /&gt;36 24 044 $  &lt;br /&gt;37 25 045 %  &lt;br /&gt;38 26 046 &amp;  &lt;br /&gt;39 27 047 '  &lt;br /&gt;40 28 050 (  &lt;br /&gt;41 29 051 )  &lt;br /&gt;42 2A 052 *  &lt;br /&gt;43 2B 053 +  &lt;br /&gt;44 2C 054 ,  &lt;br /&gt;45 2D 055 -  &lt;br /&gt;46 2E 056 .  &lt;br /&gt;47 2F 057 /  &lt;br /&gt;48 30 060 0  &lt;br /&gt;49 31 061 1  &lt;br /&gt;50 32 062 2  &lt;br /&gt;51 33 063 3  &lt;br /&gt;52 34 064 4  &lt;br /&gt;53 35 065 5  &lt;br /&gt;54 36 066 6  &lt;br /&gt;55 37 067 7  &lt;br /&gt;56 38 070 8  &lt;br /&gt;57 39 071 9  &lt;br /&gt;58 3A 072 :  &lt;br /&gt;59 3B 073 ;  &lt;br /&gt;60 3C 074 &lt;  &lt;br /&gt;61 3D 075 =  &lt;br /&gt;62 3E 076 &gt;  &lt;br /&gt;63 3F 077 ?  &lt;br /&gt;Dec Hex Oct Char&lt;br /&gt;64 40 100 @&lt;br /&gt;65 41 101 A&lt;br /&gt;66 42 102 B&lt;br /&gt;67 43 103 C&lt;br /&gt;68 44 104 D&lt;br /&gt;69 45 105 E&lt;br /&gt;70 46 106 F&lt;br /&gt;71 47 107 G&lt;br /&gt;72 48 110 H&lt;br /&gt;73 49 111 I&lt;br /&gt;74 4A 112 J&lt;br /&gt;75 4B 113 K&lt;br /&gt;76 4C 114 L&lt;br /&gt;77 4D 115 M&lt;br /&gt;78 4E 116 N&lt;br /&gt;79 4F 117 O&lt;br /&gt;80 50 120 P&lt;br /&gt;81 51 121 Q&lt;br /&gt;82 52 122 R&lt;br /&gt;83 53 123 S&lt;br /&gt;84 54 124 T&lt;br /&gt;85 55 125 U&lt;br /&gt;86 56 126 V&lt;br /&gt;87 57 127 W&lt;br /&gt;88 58 130 X&lt;br /&gt;89 59 131 Y&lt;br /&gt;90 5A 132 Z&lt;br /&gt;91 5B 133 [&lt;br /&gt;92 5C 134 \&lt;br /&gt;93 5D 135 ]&lt;br /&gt;94 5E 136 ^&lt;br /&gt;95 5F 137 _&lt;br /&gt;96 60 140 `&lt;br /&gt;97 61 141 a&lt;br /&gt;98 62 142 b&lt;br /&gt;99 63 143 c&lt;br /&gt;100 64 144 d&lt;br /&gt;101 65 145 e&lt;br /&gt;102 66 146 f&lt;br /&gt;103 67 147 g&lt;br /&gt;104 68 150 h&lt;br /&gt;105 69 151 i&lt;br /&gt;106 6A 152 j&lt;br /&gt;107 6B 153 k&lt;br /&gt;108 6C 154 l&lt;br /&gt;109 6D 155 m&lt;br /&gt;110 6E 156 n&lt;br /&gt;111 6F 157 o&lt;br /&gt;112 70 160 p&lt;br /&gt;113 71 161 q&lt;br /&gt;114 72 162 r&lt;br /&gt;115 73 163 s&lt;br /&gt;116 74 164 t&lt;br /&gt;117 75 165 u&lt;br /&gt;118 76 166 v&lt;br /&gt;119 77 167 w&lt;br /&gt;120 78 170 x&lt;br /&gt;121 79 171 y&lt;br /&gt;122 7A 172 z&lt;br /&gt;123 7B 173 {&lt;br /&gt;124 7C 174 |&lt;br /&gt;125 7D 175 }&lt;br /&gt;126 7E 176 ~&lt;br /&gt;127 7F 177 DEL&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-1241784001991985315?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1241784001991985315'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/1241784001991985315'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2009/11/dump-oracle-string.html' title='Dump Oracle String'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-9008742745394140469</id><published>2009-11-20T18:23:00.000+02:00</published><updated>2009-11-20T18:24:06.511+02:00</updated><title type='text'>Transportable tablespaces in Oracle 10g</title><content type='html'>SYS@ORCL &gt; exec dbms_tts.transport_set_check('TBS1',TRUE,TRUE);&lt;br /&gt;&lt;br /&gt;PL/SQL procedure successfully completed.&lt;br /&gt;&lt;br /&gt;SYS@ORCL &gt; select * from transport_set_violations;&lt;br /&gt;&lt;br /&gt;VIOLATIONS&lt;br /&gt;--------------------------------------------------------------------------------&lt;br /&gt;Sys owned object  SYS_C007034 in tablespace TBS1 not allowed in pluggable set&lt;br /&gt;Sys owned object  DATAE in tablespace TBS1 not allowed in pluggable set&lt;br /&gt;Sys owned object  SYS_IL0000021148C00002$$ in tablespace TBS1 not allowed in plu&lt;br /&gt;ggable set&lt;br /&gt;&lt;br /&gt;Sys owned object  SYS_LOB0000021148C00002$$ in tablespace TBS1 not allowed in pl&lt;br /&gt;uggable set&lt;br /&gt;&lt;br /&gt;  -----------------------------------------------------------------------------------&lt;br /&gt;  [oracle@tom datafiles]$ expdp "'sys/oracle as sysdba'" transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;br /&gt;  &lt;br /&gt;  Export: Release 10.2.0.2.0 - Production on Thursday, 12 July, 2007 1:08:54&lt;br /&gt;  &lt;br /&gt;  Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;br /&gt;  &lt;br /&gt;  Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production&lt;br /&gt;  With the Partitioning, OLAP and Data Mining options&lt;br /&gt;  Starting "SYS"."SYS_EXPORT_TRANSPORTABLE_01":  'sys/******** AS SYSDBA' transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;br /&gt;  ORA-39123: Data Pump transportable tablespace job aborted&lt;br /&gt;  ORA-29341: The transportable set is not self-contained&lt;br /&gt;&lt;br /&gt;  -----------------------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;[oracle@tom datafiles]$  expdp system/oracle transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;br /&gt;&lt;br /&gt;Export: Release 10.2.0.2.0 - Production on Thursday, 12 July, 2007 1:16:42&lt;br /&gt;&lt;br /&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.2.0 - Production&lt;br /&gt;With the Partitioning, OLAP and Data Mining options&lt;br /&gt;Starting "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01":  system/******** transport_tablespaces=TBS1 transport_full_check=true directory=ORA_DIR dumpfile=tbs.dmp&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/TABLE&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/CONSTRAINT/CONSTRAINT&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK&lt;br /&gt;Master table "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;br /&gt;******************************************************************************&lt;br /&gt;Dump file set for SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 is:&lt;br /&gt;  /home/oracle/tbs.dmp&lt;br /&gt;Job "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" successfully completed at 01:18:21&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Name (192.168.0.2:oracle): ftp&lt;br /&gt;331 Password required for ftp.&lt;br /&gt;Password:&lt;br /&gt;230 User ftp logged in.&lt;br /&gt;Remote system type is UNIX.&lt;br /&gt;Using binary mode to transfer files.&lt;br /&gt;ftp&gt; bin&lt;br /&gt;200 Type set to I.&lt;br /&gt;ftp&gt; put tbs1_01.dbf&lt;br /&gt;local: tbs1_01.dbf remote: tbs1_01.dbf&lt;br /&gt;227 Entering Passive Mode (192,168,0,2,9,101).&lt;br /&gt;150 Opening data connection for tbs1_01.dbf.&lt;br /&gt;226 File received ok&lt;br /&gt;10493952 bytes sent in 9.2 seconds (1.1e+03 Kbytes/s)&lt;br /&gt;&lt;br /&gt;RMAN&gt; convert datafile 'tbs1_01.dbf'&lt;br /&gt;2&gt; from platform='Linux IA (32-bit)'&lt;br /&gt;3&gt; db_file_name_convert="ts","win";&lt;br /&gt;&lt;br /&gt;Starting backup at 12-JUL-07&lt;br /&gt;using channel ORA_DISK_1&lt;br /&gt;channel ORA_DISK_1: starting datafile conversion&lt;br /&gt;input filename=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\TBS1_01.DBF&lt;br /&gt;converted datafile=C:\ORACLE\PRODUCT\10.2.0\DB_1\DATABASE\DATA_D-ORCL_I-1121005791_TS-TBS1_FNO-7_&lt;br /&gt;channel ORA_DISK_1: datafile conversion complete, elapsed time: 00:00:02&lt;br /&gt;Finished backup at 12-JUL-07&lt;br /&gt;&lt;br /&gt;C:\&gt;impdp system/oracle directory=data_pump_dir dumpfile=tbs.dmp transport_datafiles=tbs_win01.dbf&lt;br /&gt;&lt;br /&gt;Import: Release 10.2.0.1.0 - Production on Thursday, 12 July, 2007 1:49:14&lt;br /&gt;&lt;br /&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;br /&gt;With the Partitioning, OLAP and Data Mining options&lt;br /&gt;Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;br /&gt;Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** directory=data_pump_dir dumpfile=tbs.dmp transport_d&lt;br /&gt;atafiles=tbs_win01.dbf&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;br /&gt;ORA-39123: Data Pump transportable tablespace job aborted&lt;br /&gt;ORA-29342: user MICHAEL does not exist in the database&lt;br /&gt;&lt;br /&gt;Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" stopped due to fatal error at 01:49:20&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  --------------------------------------------------------------------&lt;br /&gt;  SQL&gt; create user michael identified by michael;&lt;br /&gt;  &lt;br /&gt;  User created.&lt;br /&gt;  --------------------------------------------------------------------&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;C:\&gt;create user michael identified by michael;&lt;br /&gt;'create' is not recognized as an internal or external command,&lt;br /&gt;operable program or batch file.&lt;br /&gt;&lt;br /&gt;C:\&gt;impdp system/oracle directory=data_pump_dir dumpfile=tbs.dmp transport_datafiles=tbs_win01.dbf&lt;br /&gt;&lt;br /&gt;Import: Release 10.2.0.1.0 - Production on Thursday, 12 July, 2007 1:50:07&lt;br /&gt;&lt;br /&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;br /&gt;&lt;br /&gt;Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;br /&gt;With the Partitioning, OLAP and Data Mining options&lt;br /&gt;Master table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded&lt;br /&gt;Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** directory=data_pump_dir dumpfile=tbs.dmp transport_d&lt;br /&gt;atafiles=tbs_win01.dbf&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLK&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/TABLE&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/CONSTRAINT/CONSTRAINT&lt;br /&gt;Processing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLK&lt;br /&gt;Job "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at 01:50:12&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  -------------------------------------------------------------------------&lt;br /&gt;  SQL&gt; select tablespace_name from dba_tablespaces;&lt;br /&gt;  &lt;br /&gt;  TABLESPACE_NAME&lt;br /&gt;  ------------------------------&lt;br /&gt;  SYSTEM&lt;br /&gt;  UNDOTBS1&lt;br /&gt;  SYSAUX&lt;br /&gt;  TEMP&lt;br /&gt;  USERS&lt;br /&gt;  TBS1&lt;br /&gt;  &lt;br /&gt;  SQL&gt; alter tablespace tbs1 read write;&lt;br /&gt;  --------------------------------------------------------------------------&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4027744840783458035-9008742745394140469?l=mikegeorgiou.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9008742745394140469'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4027744840783458035/posts/default/9008742745394140469'/><link rel='alternate' type='text/html' href='http://mikegeorgiou.blogspot.com/2009/11/transportable-tablespaces-in-oracle-10g.html' title='Transportable tablespaces in Oracle 10g'/><author><name>Michael Georgiou</name><uri>http://www.blogger.com/profile/08823282818620542455</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author></entry><entry><id>tag:blogger.com,1999:blog-4027744840783458035.post-8282995370191755431</id><published>2009-11-20T18:21:00.000+02:00</published><updated>2009-11-20T18:22:32.473+02:00</updated><title type='text'>Explain Data Block Address</title><content type='html'>| Document Scope:                                                                           | &lt;br /&gt; The scope of the document is to understand and use Data Block Address  .&lt;br /&gt; The Second argument of ORA-600 [3374] corresponds to the expected Data Block Address. &lt;br /&gt; They are 11206682  and 2617431000. The blocks in these DBA are corrupted. &lt;br /&gt; Let's convert DBA to corresponding (file#,block#)&lt;br /&gt; &lt;br /&gt;Example1 :ORA-00600: internal error code, arguments: [3374], [16777298], [825371952],[875376697], [11824], [], [], []&lt;br /&gt;&lt;br /&gt;SQL&gt; SELECT dbms_utility.data_block_address_block(16777298)&lt;br /&gt;  2  FROM dual
