2014/12/23

OTech Magazine Winter 2014 Issue Released!

OTech Magazine Winter 2014 Issue is a more than one hundred page independent Oracle technology magazine especially designed for the holidays.  First part of my Oracle Database In-Memory article series also published in this issue.



You can download the Winter 2014 issue of OTech Magazine here

My special thanks to Oracle ACED Douwe Pieter van den Bos for all efforts. 

Best Regards
Mahir M. Quluzade

OTN Article Series: Oracle Data Guard 12c - Redo Gap Resolutions

OTN - Oracle Technology Network Latina America published our next technical articles series. This article series cover Redo Gap Resolutions in Oracle Data Guard 12c entitled in Portuguese language as Oracle Database 12c – Resolução de Redo Gap (Part I, II)  written by Joel Perez (Oracle ACED), Mahir M. Quluzade (OCE).


This article series consists of two parts. You can read articles from following links in Portuguese Language.




 Oracle Database 12c – Resolução de Redo Gap (Part I)
 Oracle Database 12c – Resolução de Redo Gap (Part II) 


Thanks to my friend Joel for all effort, and OTN Latina.



Regards
Mahir M. Quluzade

2014/10/09

OTN Articles: Oracle Database 12c: “Nuevas Características para Desarrolladores”

OTN - Oracle Technology Network Latina America published our next technical articles series. This article series cover new features of Oracle Database 12c for developers, entitled in Spanish language as Oracle Database 12c: “Nuevas Características para Desarrolladores” written by Joel Perez (Oracle ACED), Mahir M. Quluzade (OCE).

This article series consists of three parts.



You can see very useful examples for every new feature in this article series. So, Part I of this article series, covers "Invisible Columns", "Identity Columns", "Default Values Using Sequences",  Part II covers "Extended Data Types","Multiple Index on same Columns", "Online DDLs", "Limitations of Row Set". Part III covers  "Online Moving Partitions", " New types of compression for tables", "Granted Roles of a Program Units","Enhanced in Clause 'WITH'". 



You  can read articles from following links in Spanish Language. 


Thanks to my friend Joel for all effort, and OTN Latina.


Regards
Mahir M. Quluzade


2014/08/28

OTN Article: Oracle Database 12c: Que sucede en un CDB cuando uno de los PDB obtiene un problema? (in Spanish Language)

OTN - Oracle Technology Network Latina America continue publish our articles. Our 8th technical article published on OTN in Spanish Language at 28th August. This article entitled : Oracle Database 12c: ¿Que sucede en un CDB cuando uno de los PDB obtiene un problema? written by Joel Perez (Oracle ACED), Mahir M. Quluzade (OCE) and Bruno Nuñez (OCE).

It is a link of article: http://www.oracle.com/technetwork/es/articles/database-performance/oracle-database-12c-cdb-problem-pdb-2279196-esa.html







Thanks to my friends, Joel and Bruno, for their all efforts and thanks to OTN. 

Regards
Mahir M. Quluzade

2014/08/21

OTN Article : Oracle Database 12c, O que acontece em um CDB quando um PDB tem ser recuperado (in Portuguese Language)


OTN - Oracle Technology Network Latina America continue publish our articles. Our 7th technical article published on OTN in Portuguese Language at 20th August. This article entitled : Oracle Database 12c, O que acontece em um CDB quando um PDB tem ser recuperado written by Joel Perez (Oracle ACED), Mahir M. Quluzade (OCE) and Rodrigo Mufalini (Oracle ACE) .


It is a link of article: http://www.oracle.com/technetwork/pt/articles/database-performance/cdb-quando-pdb-tem-ser-recuperado-2270042-ptb.html




Thanks to my friends, Joel and Rodrigo, for their all efforts and thanks to OTN. 

Regards
Mahir M. Quluzade

2014/08/20

OTech Magazine Issue #4: Summer 2014 Published


OTech Magazine - The independent magazine for Oracle professionals. Yesterday fourth issue of the OTech Magazine published.



 In this issue also included my article: Oracle Database 12c: Cross Platform Transport non-CDB to PDB using RMAN Backup Sets




You can download online OTech Magazine #4 Isssue - Summer 2014

Summary of article

We can create a PDB using upgraded database (non-CDB) and can be adopt the 12.1 non-CDB into a CDB as a PDB. This article covers steps for cross-platform data transport of non-CDB to other platform and adopt the transported non-CDB into a CDB as a PDB. If 12.1 non-CDB and CDB running on same platform, then easily plug-in the non-CDB into a CDB as a PDB so, there is no need for any conversion of platform on non-CDB. If platforms are different, then we need cross-platform data transport of non-CDB with RMAN. Prior to Oracle Database 12c (12.1) RMAN only used image copies for cross-platform data transport. After 12.1 RMAN can be use backup sets for cross-platform data transport of databases. So RMAN allows following methods to cross-platform transport of databases with Oracle Database 12c (12.1):

  • Transport database using image copies
  • Transport database using backup sets

In this article I used method Transport database using RMAN backup sets. You can read more about Cross - Platform Database Transport from my articles on OTN (Part 1, Part 2 - in Portugalese Language)

Note: Oracle Database 12c Release 1 (12.1.0.1) used for this article. 

Updates related this article:

If you are using Oracle Database 12c Release 1 (12.1.0.2) then you can use new feature of multitenant - PDB Remote Clone. So,the new release of Oracle Multitenant fully supports remote full and snapshot clones over a database link. A non-multitenant container database (CDB) can be adopted as a pluggable database (PDB) simply by cloning it over a database link. You can read about this new feature in here


You can download online OTech Magazine #4 Isssue - Summer 2014

My special thanks to organizer of OTech Magazine Douwe Pieter van den Bos for all efforts.

Regards
Mahir M. Quluzade.


2014/08/01

Oracle Multitenant - PDB State Management Across CDB Restart (12.1.0.2.0)

Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014.
You can download new release from here.

Oracle Multitenant option also supports some news in Oracle Database 12c Release 1 (12.1.0.2.0).
This article covers PDB State Management in Oracle Multitenant option of Oracle Database 12c Release 1 (12.1.0.2) .

By default, any pluggable database (PDB) are not open in READ WRITE mode, when Multitenant Container Database (CDB) restarts. You can see this also from following example:

[oracle@oel62-ora12c2 ~]$ export ORACLE_SID=prmcdb
[oracle@oel62-ora12c2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Fri Aug 1 14:14:59 2014

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> select banner from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
PL/SQL Release 12.1.0.2.0 - Production
CORE 12.1.0.2.0 Production
TNS for Linux: Version 12.1.0.2.0 - Production
NLSRTL Version 12.1.0.2.0 - Production

SQL> select cdb,name from v$database;        

CDB NAME
--- ---------
YES PRMCDB

SQL> select name, open_mode from v$pdbs;

NAME          OPEN_MODE
------------------------------ ----------
PDB$SEED         READ ONLY
PRMPDB01         READ WRITE
PRMPDB02         READ WRITE
PRMPDB03         READ WRITE

2014/07/31

Oracle Multitenant - PDB New Clauses - Standbys (12.1.0.2) - Part II

As you know, Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014.
You can download new release from here.

Oracle Multitenant option also supports some news in Oracle Database 12c Release 1 (12.1.0.2.0).
With new release coming new PDB Clauses.

This article series covers following new clauses:
  1. PDB Containers Clause
  2. PDB Standbys Clause
  3. PDB Logging Clause  (as soon)
Part II: PDB Standbys Clause

PDB Inclusion in Standby CDBs feature is coming with Oracle Database 12c Release 1 (12.1.0.2).

The STANDBYS clause of the CREATE PLUGGABLE DATABASE statement specifies whether the new PDB is included in standby CDBs. You can specify one of the following values for the STANDBYS clause:

  • ALL includes the new PDB in all of the standby CDBs.
  • NONE excludes the new PDB from all of the standby CDBs.

When a PDB is not included in any of the standby CDBs, the PDB's data files are offline and marked as unnamed on all of the standby CDBs. Any new standby CDBs that are instantiated after the PDB has been created must disable the PDB for recovery explicitly to exclude it from the standby CDB.

It is possible to enable a PDB on a standby CDB after it was excluded on that standby CDB.

Follow my examples:

Broker-managed Data Guard configuration shown as below:

[oracle@oel62-ora12c2 ~]$ dgmgrl / 
DGMGRL for Linux: Version 12.1.0.2.0 - 64bit Production

Copyright (c) 2000, 2013, Oracle. All rights reserved.

Welcome to DGMGRL, type "help" for information.
Connected as SYSDG.
DGMGRL> show configuration

Configuration - dg

  Protection Mode: MaxPerformance
  Members:
  prmcdb - Primary database
    stbcdb - Physical standby database 

Fast-Start Failover: DISABLED

Configuration Status:
SUCCESS   (status updated 10 seconds ago)

Primary database is Multitenant Container Database - CDB (prmcdb).

Oracle Multitenant - PDB New Clauses - Containers (12.1.0.2) - Part I

As you know, Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014.
You can download new release from here.

Oracle Multitenant option also supports some news in Oracle Database 12c Release 1 (12.1.0.2.0).
With new release coming new PDB Clauses.

This article series covers following new clauses:

  1. PDB Containers Clause
  2. PDB Standbys Clause
  3. PDB Logging Clause  (as soon)

Part I: PDB Containers Clause

The CONTAINERS clause in PDB enables you to query user-created tables and views across all PDBs in a CDB.The tables and views, or synonyms of them, specified in the CONTAINERS clause must exist in the root and in all PDBs and must be owned by the common user. A query that includes the CONTAINERS clause must be run in the root.

Follow examples:

[oracle@oel62-ora12c2 ~]$ export ORACLE_SID=prmcdb
[oracle@oel62-ora12c2 ~]$ sqlplus / as sysdba

SQL*Plus: Release 12.1.0.2.0 Production on Thu Jul 24 16:02:21 2014

Copyright (c) 1982, 2014, Oracle.  All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options

SQL> select banner from v$version;

BANNER
--------------------------------------------------------------------------------
Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production
PL/SQL Release 12.1.0.2.0 - Production
CORE 12.1.0.2.0 Production
TNS for Linux: Version 12.1.0.2.0 - Production
NLSRTL Version 12.1.0.2.0 - Production

SQL> select name, open_mode from v$database;

NAME   OPEN_MODE
--------- --------------------
PRMCDB   READ WRITE

SQL> select name, open_mode from v$pdbs;

NAME          OPEN_MODE
------------------------------ ----------
PDB$SEED         READ ONLY
PRMPDB01         READ WRITE
PRMPDB02         READ WRITE
PRMPDB03         READ WRITE
PRMPDB04         READ WRITE

2014/07/25

Oracle Multitenant - PDB Clone New Features (12.1.0.2.0) - Part III

As you know, Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014. You can download new release from here.

With this new release coming some new features. This article series covers PDB Clone new features of Oracle Multitenant option of Oracle Database 12c Release 1 (12.1.0.2.0).

This article is in four parts:
  1. Excluding Data When Cloning a PDB
  2. Non-CDB Adopt to CDB as a PDB.
  3. PDB Subset Cloning 
  4. PDB Snapshot Cloning (as soon)
Part III. PDB Subset Cloning

Sometimes we using many schemas that each supported a different application in a database (Schema Consolidation).  With Oracle Database 12c coming new option Oracle Multitenant, which is helpful for simplify consolidate databases.Database Consolidation means, each pluggable database (PDB) support a different application and all pluggable databases adopted in same Multitenant Container Database (CDB).

If we move a non-CDB to a PDB, and the non-CDB had different schemas that each supported a different application, then we need database consalidation. In other words we must separate schemas to defferent PDB. We can use USER_TABLESPACES, which is new clause in 12.1.0.2.0, to separate the data belonging to each schema into a separate PDB, assuming that each schema used a separate tablespace in the non-CDB.

USER_TABLESPACES clause to specify one of the following options:
  • List one or more tablespaces to include.
  • Specify ALL, the default, to include all of the tablespaces.
  • Specify ALL EXCEPT to include all of the tablespaces, except for the tablespaces listed.
  • Specify NONE to exclude all of the tablespaces.
The tablespaces that are excluded by this clause are offline in the new PDB, and all data files that belong to these tablespaces are unnamed and offline.This clause does not apply to the SYSTEM, SYSAUX, or TEMP tablespaces. Do not include these tablespaces in a tablespace list for this clause.

Follow my examples:

2014/07/24

Oracle Multitenant - PDB Clone New Features (12.1.0.2.0) - Part II

As you know, Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014. You can download new release from here.

With this new release coming some new features. This article series covers PDB Clone new features of Oracle Multitenant option of Oracle Database 12c Release 1 (12.1.0.2.0). 

This article is in four parts: 
  1. Excluding Data When Cloning a PDB
  2. Non-CDB Adopt to CDB as a PDB.
  3. PDB Subset Cloning 
  4. PDB Snapshot Cloning (as soon)

Part II. Non-CDB Adopt to CDB as a PDB.

The new release of Oracle Multitenant fully supports remote full and snapshot clones over a database link. A non-multitenant container database (CDB) can be adopted as a pluggable database (PDB) simply by cloning it over a database link.

This feature further improves rapid provisioning of pluggable databases. Administrators can spend less time on provisioning and focus more on other innovative operations. Follow examples:

I'll create a PDB using database link from following non-CDB:

Oracle Multitenant - PDB Clone New Features (12.1.0.2.0) - Part I

As you know, Oracle Database 12c Release 1 (12.1.0.2.0) already released at July 22, 2014. You can download new release from here.

With this new release coming some new features. This article series covers PDB Clone new features of Oracle Multitenant option of Oracle Database 12c Release 1 (12.1.0.2.0). 

This article is in four parts: 
  1. Excluding Data When Cloning a PDB
  2. Non-CDB Adopt to CDB as a PDB.
  3. PDB Subset Cloning 
  4. PDB Snapshot Cloning (as soon)
      Part I:  Excluding Data When Cloning a PDB

      We can create clone of PDB with CREATE PLUGGABLE DATABASE ... FROM statement from existing PDB. All clones of PDB contains all object definitions and data in PDB. Sometimes we need quickly creating clones of a PDB with only the users object definitions and no data. New NO DATA clause included the CREATE PLUGGABLE DATABASE ... FROM statement in 12.1.0.2.0 version. The NO DATA clause specifies that a PDB's data model definition is cloned but not the PDB's data. When you using NO DATA Clause in CREATE PLUGGABLE DATABASE ... FROM statement, the dictionary data in the source PDB is cloned, but all user-created table and index data from the source PDB is excluded. Follow examples :

      2014/07/23

      Oracle Database 12c Release 1 (12.1.0.2) New Features

      Oracle Database 12.1.0.2 is available for download now.  here

      1. Advanced Index Compression

      Advanced Index Compression works well on all supported indexes, including those indexes that are not good candidates for the existing prefix compression feature; including indexes with no, or few, duplicate values in the leading columns of the index.

      Advanced Index Compression improves the compression ratios significantly while still providing efficient access to the index.

      2. Approximate Count Distinct

      The new and optimized SQL function, APPROX_COUNT_DISTINCT(), provides approximate count distinct aggregation. Processing of large volumes of data is significantly faster than the exact aggregation, especially for data sets with a large number of distinct values, with negligible deviation from the exact result.

      The need to count distinct values is a common operation in today's data analysis. Optimizing the processing time and resource consumption by orders of magnitude while providing almost exact results speeds up any existing processing and enables new levels of analytical insight.

      3. Attribute Clustering

      Attribute clustering is a table-level directive that clusters data in close physical proximity based on the content of certain columns. This directive applies to any kind of direct path operation, such as a bulk insert or a move operation.

      Storing data that logically belongs together in close physical proximity can greatly reduce the amount of data to be processed and can lead to better compression ratios.

      4. Automatic Big Table Caching

      In previous releases, in-memory parallel query did not work well when multiple scans contended for cache memory. This feature implements a new cache called big table cache for table scan workload.

      This big table cache provides significant performance improvements for full table scans on tables that do not fit entirely into the buffer cache.

      5. FDA Support for CDBs

      Flashback Data Archive (FDA) is supported for multitenant container databases (CDBs) in this release.

      Customers can now use Flashback Data Archive in databases that they are consolidating using Oracle Multitenant, providing the benefits of easy history tracking to applications using pluggable databases (PDB) in a multitenant container database.

      6. Full Database Caching

      Full database caching can be used to cache the entire database in memory. It should be used when the buffer cache size of the database instance is greater than the whole database size. In Oracle RAC systems, for well-partitioned applications, this feature can be used when the combined buffer caches of all instances, with some extra space to handle duplicate cached blocks between instances, is greater than the database size.

      Caching the entire database provides significant performance benefits, especially for workloads that were previously limited by I/O throughput or response time. More specifically, this feature improves the performance of full table scans by forcing all tables to be cached. This is a change from the default behavior in which larger tables are not kept in the buffer cache for full table scans.

      7. In-Memory Aggregation

      In-Memory Aggregation optimizes queries that join dimension tables to fact tables and aggregate data (for example, star queries) using CPU and memory efficient KEY VECTOR and VECTOR GROUP BY aggregation operations. These operations may be automatically chosen by the SQL optimizer based on cost estimates.


      2014/07/17

      OTN Article : Oracle Database 12c – Nuevas Características de "Oracle Partitioning"

      Oracle Technology Network - OTN (Latina America) published our 6th article in Spanish Language.
      This article entitled : Oracle Database 12c – Nuevas Características de "Oracle Partitioning") 
      by Joel Perez (Oracle ACED) and Mahir M. Quluzade (OCE)  Published : 17 July 2014

      Article link : Oracle Database 12c: Nuevas Características de “Oracle Partitioning”
      This article covers a bit new features of "Oracle Partitioning" on Oracle Database 12c (12.1)















      Regards
      Mahir M. Quluzade 

      2014/07/14

      Oracle Multitenant - 12 Jul at Orient ITM

      All photos from seminar at here.
      I presented entitled "Oracle Multitenant" at an event organized by Orient ITM (Baku, Azerbaijan).

      What is Oracle Multitenant?

      A new option for Oracle Database 12c, Oracle Multitenant delivers a new architecture that allows a multitenant container database to hold many pluggable databases. An existing database can simply be adopted with no application changes required. Oracle Multitenant fully complements other options, including Oracle Real Application Clusters and Oracle Active Data Guard.

      The many pluggable databases in a single multitenant container database share its memory and background processes. This enables consolidation of many more pluggable databases compared to the old architecture, offering similar benefits to schema-based consolidation but with none of the major application changes required by that approach.

      Creating pluggable databases, moving pluggable databases between containers, and cloning pluggable databases are done with new SQL commands and take just seconds. When the underlying file system supports thin provisioning many terabytes can be cloned almost instantaneously simply by using the keywords “snapshot copy” in the SQL command.

      The investment of time and effort to patch one multitenant container database results in patching all of its many pluggable databases. To patch a single pluggable database, you simply unplug/plug to a multitenant container database at a different Oracle Database software version.

      By consolidating existing databases as pluggable databases, administrators can manage many databases as one. For example, tasks such as backup and disaster recovery are performed at the multitenant container database level.

      In Oracle Database 12c, Resource Manager is extended with specific functionality to control the competition for resources between pluggable databases within a multitenant container database.


      Presentation slides : 




      Announcement photo of this event. (in Azerbaijan Language)
















      Regards
      Mahir M. Quluzade 

      2014/05/06

      OTech Magazine - Spring 2014 Released!

      OTech Magazine is an independent magazine for Oracle professionals. OTech Magazine is a trusted source for news, information and analysis about Oracle and its products. Our readership is made up of professionals who work with Oracle and Oracle related technologies on a daily basis, in addition we cover topics relevant to niches like software architects, developers, designers and others.OTech Magazine‘s writers are considered the top of the Oracle professionals in the world. Only selected and high-quality articles will make the magazine. Our editors are trusted worldwide for their knowledge in the Oracle field. Read more about OTech Magazine in here.

      Today the third issue of OTech Magazine released. 


      Content of OTech Magazine - Spring 2014 as below: 



      My article is published in this issue, too.















      You can download the Spring 2014 issue of OTech Magazine in here: 

      I want tank to all authors of OTech Magazine and my special thanks to organizer of OTech Magazine Douwe Pieter van den Bos. 

      Regards
      Mahir M. Quluzade


      2014/04/07

      My article on GPO (Grupo de Profissionais Oracle) Portal

      GPO (Group Oracle Professionals) - The greater Oracle community in Brazil. GPO portal is a comprehensive portal implemented with various technologies and various topics on Oracle Technologies.
      GPO (Grupo de Profissionais Oracle) Portal : http://www.profissionaloracle.com.br/gpo


      My article published on GPO (Group Oracle Professionals) portal. 

      Mahir M. Quluzade - GPO Profile

      Special thank to Victor Armbrust (Founder-Director of the GPO Portal, Oracle ACE), Sergio Willians (Coordinator GPO Portal, Oracle ACE), Alex Zaballa (Autor of GPO, Oracle AСE).

      Regards
      Mahir M. Quluzade

      2014/02/13

      Oracle Database 12c: What happens during CDB startup if one the PDB has a media problem? - Continue

      During Oracle Day 2014  (February 05, 2014, which was held in Baku/Azerbaijan), I met with my friends and had a conversation about several topics.

      I asked to my friend Teymur Hajiyev, what happens during CDB startup if one the PDB has a media problem? He said, CDB must open without a problem. But you need to open PDBs manually. In other words, by default PDBs in mount mode, you need call alter pluggable databases all open.

      After Oracle Day, Teymur shared his tests in here. and faced the same issue. But he is wrote : If you apply PSU1 on 12c, you will not meet with such problem, CDB will skip opening problematic PDB and will open other PDBs.

      I will share my tests on patched database. I applied PSU1 to my database server:  Installation and configuration Patch 17552800 - 12.1.0.1.2 Patch Set Update

      My test environment as below:

      [oracle@oel62-ora12c /]$ export ORACLE_SID=prmcdb 
      [oracle@oel62-ora12c /]$ sqlplus / as sysdba
      
      SQL*Plus: Release 12.1.0.1.0 Production on Wed Feb 12 12:53:16 2014
      
      Copyright (c) 1982, 2013, Oracle.  All rights reserved.
      
      
      Connected to:
      Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
      With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
      
      SQL> select con_id, cdb, name, open_mode from v$database;
      
          CON_ID CDB NAME  OPEN_MODE
      ---------- --- --------- --------------------
        0 YES PRMCDB  READ WRITE
      
      SQL> select con_id, name, open_mode from v$pdbs;    
      
          CON_ID NAME      OPEN_MODE
      ---------- ------------------------------ ----------
        2 PDB$SEED     READ ONLY
        3 PRMPDB01     READ WRITE
        4 PRMPDB02     READ WRITE
      
      SQL> select file#, name from v$datafile;
      
           FILE#      NAME
      ---------------------------------------------------------------
        1  /u01/app/oracle/oradata/prmcdb/system01.dbf
        3  /u01/app/oracle/oradata/prmcdb/sysaux01.dbf
        4  /u01/app/oracle/oradata/prmcdb/undotbs01.dbf
        5  /u01/app/oracle/oradata/prmcdb/pdbseed/system01.dbf
        6  /u01/app/oracle/oradata/prmcdb/users01.dbf
        7  /u01/app/oracle/oradata/prmcdb/pdbseed/sysaux01.dbf
        8  /u01/app/oracle/oradata/prmcdb/prmpdb01/system01.dbf
        9  /u01/app/oracle/oradata/prmcdb/prmpdb01/sysaux01.dbf
       10  /u01/app/oracle/oradata/prmcdb/prmpdb01/prmpdb01_users01.dbf
       11  /u01/app/oracle/oradata/prmcdb/prmpdb02/system01.dbf
       12  /u01/app/oracle/oradata/prmcdb/prmpdb02/sysaux01.dbf
       13  /u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf
      
      SQL> select file#, status, error from  v$datafile_header;
      
           FILE# STATUS     ERROR
      -----------------------------------------------------------------
        1 ONLINE
        3 ONLINE
        4 ONLINE
        5 ONLINE
        6 ONLINE
        7 ONLINE
        8 ONLINE
        9 ONLINE
       10 ONLINE
       11 ONLINE
       12 ONLINE
       13 ONLINE
      
      12 rows selected.
      
      SQL> select *  from dba_registry_history;
      
      ACTION_TIME ACTION NAMESPACE VERSION ID BUNDLE_SERIES COMMENTS
      24-MAY-13 01.20.05.485655000 PM APPLY SERVER 12.1.0.1 0 PSU Patchset 12.1.0.0.0
      10-FEB-14 06.29.37.412212000 PM APPLY SERVER 12.1.0.1 0 PSU Patchset 12.1.0.0.0
      12-FEB-14 09.48.05.383369000 AM APPLY SERVER 12.1.0.1 2 PSU PSU 12.1.0.1.2
      
      
      SQL> select *  from dba_registry_sqlpatch;
      
      PATCH_ID ACTION STATUS ACTION_TIME DESCRIPTION LOGFILE
      17552800 APPLY SUCCESS 12-FEB-14 09.49.00.559171000 AM bundle:PSU /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_CDBROOT_2014Feb12_09_47_49.log
      

      Before everything I take full backup of my database with RMAN.

      [oracle@oel62-ora12c /]$ rman target / 
      
      Recovery Manager: Release 12.1.0.1.0 - Production on Wed Feb 12 12:52:32 2014
      Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.
      
      connected to target database: PRMCDB (DBID=2504197888)
      
      RMAN> backup database plus archivelog delete all input;
      
      Starting backup at 12-FEB-14
      current log archived
      using target database control file instead of recovery catalog
      allocated channel: ORA_DISK_1
      
      ...
      
      Finished backup at 12-FEB-14
      
      Starting Control File and SPFILE Autobackup at 12-FEB-14
      piece handle=/u01/app/oracle/fra/PRMCDB/autobackup/2014_02_12/o1_mf_s_839336238_9hpfvkm7_.bkp comment=NONE
      Finished Control File and SPFILE Autobackup at 12-FEB-14
      


      Backup  finished, I follow our scenario in this database

      SQL> ! rm -fr /u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf
      
      SQL> shut immediate;
      Database closed.
      Database dismounted.
      ORACLE instance shut down.
      SQL> 
      SQL> startup
      ORACLE instance started.
      
      Total System Global Area  801701888 bytes
      Fixed Size      2293496 bytes
      Variable Size    377487624 bytes
      Database Buffers   419430400 bytes
      Redo Buffers      2490368 bytes
      Database mounted.
      Database opened.
      

      Database opened without any error. Now I will open all Pluggable databases.

      SQL> alter pluggable database all open;
      alter pluggable database all open
      *
      ERROR at line 1:
      ORA-01157: cannot identify/lock data file  - see DBWR trace file
      
      SQL> select name, open_mode from v$pdbs;
      
      NAME          OPEN_MODE
      ------------------------------ ----------
      PDB$SEED         READ ONLY
      PRMPDB01         READ WRITE
      PRMPDB02         MOUNTED
      

      I get error, but other pluggable database opened and now alert log looks as below:

      alter pluggable database all open
      Wed Feb 12 15:11:15 2014
      Errors in file /u01/app/oracle/diag/rdbms/prmcdb/prmcdb/trace/prmcdb_dbw0_11432.trc:
      ORA-01157: cannot identify/lock data file 13 - see DBWR trace file
      ORA-01110: data file 13: '/u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf'
      ORA-27037: unable to obtain file status
      Linux-x86_64 Error: 2: No such file or directory
      Additional information: 3
      Wed Feb 12 15:11:15 2014
      Pdb PRMPDB02 hit error 1157 during open read write and will be closed.
      ALTER SYSTEM: Flushing buffer cache inst=0 container=4 local
      Wed Feb 12 15:11:15 2014
      Errors in file /u01/app/oracle/diag/rdbms/prmcdb/prmcdb/trace/prmcdb_p001_11482.trc:
      ORA-01157: cannot identify/lock data file 13 - see DBWR trace file
      ORA-01110: data file 13: '/u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf'
      Wed Feb 12 15:11:18 2014
      Due to limited space in shared pool (need 6094848 bytes, have 3981120 bytes), limiting Resource Manager entities from 2048 to 32
      Opening pdb PRMPDB01 (3) with no Resource Manager plan active
      Pluggable database PRMPDB01 opened read write
      ORA-1157 signalled during: alter pluggable database all open...
      Wed Feb 12 15:11:41 2014
      Shared IO Pool defaulting to 24MB. Trying to get it from Buffer Cache for process 11546.
      

      It means, if we apply patch set update (12.1.0.1.2) on Oracle Database 12c, when media failure occurs on a PDB, after startup CDB will open normally. CDB skip opening crashed PDB and other PDBs will open normally, when we call alter pluggable database all open. 
      I tried open crashed pluggable database again.

      SQL> alter pluggable database prmpdb02 open;
      alter pluggable database prmpdb02 open
      *
      ERROR at line 1:
      ORA-01157: cannot identify/lock data file 13 - see DBWR trace file
      ORA-01110: data file 13:
      '/u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf'
      
      SQL> select file#, status, error from  v$datafile_header;
      
           FILE# STATUS     ERROR
      -----------------------------------------------------------------
        1 ONLINE
        3 ONLINE
        4 ONLINE
        5 ONLINE
        6 ONLINE
        7 ONLINE
        8 ONLINE
        9 ONLINE
       10 ONLINE
       11 ONLINE
       12 ONLINE
       13 ONLINE     FILE NOT FOUND
      12 rows selected.
      
      

      It mean we must restore Pluggable Database.

      [oracle@oel62-ora12c ~]$ export ORACLE_SID=prmcdb
      [oracle@oel62-ora12c ~]$ rman target / 
      
      Recovery Manager: Release 12.1.0.1.0 - Production on Wed Feb 12 15:26:42 2014
      
      Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.
      
      connected to target database: PRMCDB (DBID=2504197888)
      
      RMAN> restore pluggable database prmpdb02;
      
      Starting restore at 12-FEB-14
      using target database control file instead of recovery catalog
      allocated channel: ORA_DISK_1
      channel ORA_DISK_1: SID=44 device type=DISK
      
      channel ORA_DISK_1: starting datafile backup set restore
      channel ORA_DISK_1: specifying datafile(s) to restore from backup set
      channel ORA_DISK_1: restoring datafile 00011 to /u01/app/oracle/oradata/prmcdb/prmpdb02/system01.dbf
      channel ORA_DISK_1: restoring datafile 00012 to /u01/app/oracle/oradata/prmcdb/prmpdb02/sysaux01.dbf
      channel ORA_DISK_1: restoring datafile 00013 to /u01/app/oracle/oradata/prmcdb/prmpdb02/prmpdb02_users01.dbf
      channel ORA_DISK_1: reading from backup piece /u01/app/oracle/fra/PRMCDB/F231EDEC22372112E043AA38A8C01F0B/backupset/2014_02_12/o1_mf_nnndf_TAG20140212T125307_9hpfs0td_.bkp
      channel ORA_DISK_1: piece handle=/u01/app/oracle/fra/PRMCDB/F231EDEC22372112E043AA38A8C01F0B/backupset/2014_02_12/o1_mf_nnndf_TAG20140212T125307_9hpfs0td_.bkp tag=TAG20140212T125307
      channel ORA_DISK_1: restored backup piece 1
      channel ORA_DISK_1: restore complete, elapsed time: 00:00:25
      Finished restore at 12-FEB-14
      
      RMAN> recover pluggable database prmpdb02;
      
      Starting recover at 12-FEB-14
      using channel ORA_DISK_1
      
      starting media recovery
      media recovery complete, elapsed time: 00:00:09
      
      Finished recover at 12-FEB-14
      
      RMAN> alter pluggable database prmpdb02 open;
      
      Statement processed
      
      RMAN> select name, open_mode from v$pdbs;
      
      NAME                           OPEN_MODE 
      ------------------------------ ----------
      PDB$SEED                       READ ONLY 
      PRMPDB01                       READ WRITE
      PRMPDB02                       READ WRITE
      
      

      Regards
      Mahir M. Quluzade

      Installation and configuration Patch 17552800 - 12.1.0.1.2 Patch Set Update

      Hi,

      Patch 17552800 - 12.1.0.1.2 Database Patch Set Update released: January 14, 2014. You can download this PSU  from Oracle My Support. I will show short steps installation and configuration this PSU.

      Note: To install the PSU 12.1.0.1.2 patch, the Oracle home must have the 12.1.0.1.0 Database installed. Subsequent PSU patches can be installed on Oracle Database 12.1.0.1.0 or any PSU with a lower 5th numeral version than the one being installed.

      1. Download this patch set zip file from support web site and copy to database server.

      My Oracle Support

      [oracle@oel62-ora12c PSU1]$ pwd
      /tmp/oracle/PSU1
      [oracle@oel62-ora12c PSU1]$ ls -l
      total 67952
      -rw-r--r-- 1 oracle oinstall 69580299 Feb 12 09:17 p17552800_121010_Linux-x86-64.zip
      [oracle@oel62-ora12c PSU1]$ 
      

      2. Exract patch files from p17552800_121010_Linux-x86-64.zip file.

      [oracle@oel62-ora12c PSU1]$ unzip p17552800_121010_Linux-x86-64.zip
      Archive:  p17552800_121010_Linux-x86-64.zip
         creating: 17552800/
        inflating: 17552800/README.html   
         creating: 17552800/files/
         creating: 17552800/files/lib/
      ..........
       inflating: 17552800/etc/config/actions.xml 
        inflating: PatchSearch.xml 
      
      [oracle@oel62-ora12c PSU1]$ cd 17552800
      [oracle@oel62-ora12c 17552800]$ ls -l
      total 84
      drwxr-xr-x 3 oracle oinstall  4096 Jan  3 15:21 etc
      drwxr-xr-x 7 oracle oinstall  4096 Jan  3 15:21 files
      -rw-rw-r-- 1 oracle oinstall 70222 Jan 14 13:32 README.html
      -rw-r--r-- 1 oracle oinstall    21 Jan  3 15:21 README.txt
      

      You  can read all  steps of installation and configuration of PSU from README.html carefully. Read this file carefully. It is very important.

      3. Pre-Installation Patch need check environment and Patch-Conflict detection and resolution.

      [oracle@oel62-ora12c 17552800]$ echo $PATH
      /u01/app/oracle/product/12.1.0/dbhome/bin:/usr/sbin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oracle/bin
      [oracle@oel62-ora12c 17552800]$ export PATH=$PATH:/usr/ccs/bin
      [oracle@oel62-ora12c 17552800]$ echo $PATH
      /u01/app/oracle/product/12.1.0/dbhome/bin:/usr/sbin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/sbin:/usr/sbin:/sbin:/home/oracle/bin:/usr/ccs/bin
      [oracle@oel62-ora12c 17552800]$
      
      [oracle@oel62-ora12c 17552800]$ /u01/app/oracle/product/12.1.0/dbhome/OPatch/opatch prereq CheckConflictAgainstOHWithDetail -ph ./
      Oracle Interim Patch Installer version 12.1.0.1.0
      Copyright (c) 2012, Oracle Corporation.  All rights reserved.
      
      PREREQ session
      
      Oracle Home       : /u01/app/oracle/product/12.1.0/dbhome
      Central Inventory : /u01/app/oraInventory
         from           : /u01/app/oracle/product/12.1.0/dbhome/oraInst.loc
      OPatch version    : 12.1.0.1.0
      OUI version       : 12.1.0.1.0
      Log file location : /u01/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/opatch2014-02-12_09-42-16AM_1.log
      
      Invoking prereq "checkconflictagainstohwithdetail"
      
      Prereq "checkConflictAgainstOHWithDetail" passed.
      
      OPatch succeeded.
      [oracle@oel62-ora12c 17552800]$
      

      4. Apply  patch to  Oracle Database 12c (12.1.0.1.0)

      [oracle@oel62-ora12c 17552800]$ $ORACLE_HOME/OPatch/opatch apply
      
      Oracle Interim Patch Installer version 12.1.0.1.0
      Copyright (c) 2012, Oracle Corporation.  All rights reserved.
      
      Oracle Home       : /u01/app/oracle/product/12.1.0/dbhome
      Central Inventory : /u01/app/oraInventory
         from           : /u01/app/oracle/product/12.1.0/dbhome/oraInst.loc
      OPatch version    : 12.1.0.1.0
      OUI version       : 12.1.0.1.0
      Log file location : /u01/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/17552800_Feb_12_2014_09_42_56/apply2014-02-12_09-42-56AM_1.log
      
      Applying interim patch '17552800' to OH '/u01/app/oracle/product/12.1.0/dbhome'
      Verifying environment and performing prerequisite checks...
      Patch 17552800: Optional component(s) missing : [ oracle.network.cman, 12.1.0.1.0 ]
      All checks passed.
      
      Please shutdown Oracle instances running out of this ORACLE_HOME on the local system.
      (Oracle Home = '/u01/app/oracle/product/12.1.0/dbhome')
      
      
      Is the local system ready for patching? [y|n]
      y
      User Responded with: Y
      Backing up files...
      
      
      Patching component oracle.network.rsf, 12.1.0.1.0...
      
      Patching component oracle.rdbms, 12.1.0.1.0...
      
      Patching component oracle.rdbms.rsf, 12.1.0.1.0...
      
      Patching component oracle.ldap.rsf, 12.1.0.1.0...
      
      Patching component oracle.ldap.rsf.ic, 12.1.0.1.0...
      
      Patching component oracle.rdbms.util, 12.1.0.1.0...
      
      Patching component oracle.rdbms.dbscripts, 12.1.0.1.0...
      
      Patching component oracle.rdbms.rman, 12.1.0.1.0...
      
      Verifying the update...
      Patch 17552800 successfully applied
      Log file location: /u01/app/oracle/product/12.1.0/dbhome/cfgtoollogs/opatch/17552800_Feb_12_2014_09_42_56/apply2014-02-12_09-42-56AM_1.log
      
      OPatch succeeded.
      [oracle@oel62-ora12c 17552800]$
      

      Patch applied successfully.

      5. Loading modified SQL Files into the Database

      My database is Multitenant Container Database (prmcdb). If your dataabse is Multitenant Container Database, then all PDBs (pluggable databaseses) must be opened READ WRITE mode

      [oracle@oel62-ora12c 17552800]$ export ORACLE_SID=prmcdb
      [oracle@oel62-ora12c 17552800]$ sqlplus "/ as sysdba"
      
      SQL*Plus: Release 12.1.0.1.0 Production on Wed Feb 12 09:46:21 2014
      
      Copyright (c) 1982, 2013, Oracle.  All rights reserved.
      
      
      Connected to:
      Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
      With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
      
      SQL> select name , open_mode from v$pdbs;
      
      NAME          OPEN_MODE
      ------------------------------ ----------
      PDB$SEED         READ ONLY
      PRMPDB01         READ WRITE
      PRMPDB02         READ WRITE
      
      SQL> exit
      

      The following steps load modified SQL files into the database. For a RAC environment, perform these steps on only one node.

      [oracle@oel62-ora12c 17552800]$ cd $ORACLE_HOME/OPatch
      [oracle@oel62-ora12c OPatch]$ pwd
      /u01/app/oracle/product/12.1.0/dbhome/OPatch
      [oracle@oel62-ora12c OPatch]$ ./datapatch -verbose
      SQL Patching tool version 12.1.0.1.0 on Wed Feb 12 09:47:36 2014
      Copyright (c) 2013, Oracle.  All rights reserved.
      
      Connecting to database...OK
      Determining current state...
      Currently installed SQL Patches:
      PDB CDB$ROOT: 
      PDB PDB$SEED: 
      PDB PRMPDB01: 
      PDB PRMPDB02: 
      Currently installed C Patches: 17552800
      For the following PDBs: CDB$ROOT
      Nothing to roll back
      The following patches will be applied: 17552800
      For the following PDBs: PDB$SEED
      Nothing to roll back
      The following patches will be applied: 17552800
      For the following PDBs: PRMPDB01
      Nothing to roll back
      The following patches will be applied: 17552800
      For the following PDBs: PRMPDB02
      Nothing to roll back
      The following patches will be applied: 17552800
      Adding patches to installation queue...
      Installing patches...
      Validating logfiles...
      Patch 17552800 apply (pdb CDB$ROOT): SUCCESS
      logfile: /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_CDBROOT_2014Feb12_09_47_49.log (no errors)
      catbundle generate logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_CDBROOT_GENERATE_2014Feb12_09_47_50.log (no errors)
      catbundle apply logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_CDBROOT_APPLY_2014Feb12_09_47_53.log (no errors)
      Patch 17552800 apply (pdb PDB$SEED): SUCCESS
      logfile: /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_PDBSEED_2014Feb12_09_48_09.log (no errors)
      catbundle generate logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PDBSEED_GENERATE_2014Feb12_09_48_11.log (no errors)
      catbundle apply logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PDBSEED_APPLY_2014Feb12_09_48_14.log (no errors)
      Patch 17552800 apply (pdb PRMPDB01): SUCCESS
      logfile: /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_PRMPDB01_2014Feb12_09_48_22.log (no errors)
      catbundle generate logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PRMPDB01_GENERATE_2014Feb12_09_48_24.log (no errors)
      catbundle apply logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PRMPDB01_APPLY_2014Feb12_09_48_27.log (no errors)
      Patch 17552800 apply (pdb PRMPDB02): SUCCESS
      logfile: /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_PRMPDB02_2014Feb12_09_48_35.log (no errors)
      catbundle generate logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PRMPDB02_GENERATE_2014Feb12_09_48_38.log (no errors)
      catbundle apply logfile: /u01/app/oracle/cfgtoollogs/catbundle/catbundle_PSU_PRMCDB_PRMPDB02_APPLY_2014Feb12_09_48_40.log (no errors)
      SQL Patching tool complete on Wed Feb 12 09:49:06 2014
      [oracle@oel62-ora12c OPatch]$ 
      

      SQL Patching tool completed with no errors. You can check log files in $ORACLE_HOME/sqlpatch/17552800/ for errors.

      Note: If you are using the Oracle Recovery Manager catalog, then catalog needs to be upgraded.

      6. Check changes in database

      SQL> select *  from dba_registry_history;
      
      ACTION_TIME ACTION NAMESPACE VERSION ID BUNDLE_SERIES COMMENTS
      24-MAY-13 01.20.05.485655000 PM APPLY SERVER 12.1.0.1 0 PSU Patchset 12.1.0.0.0
      10-FEB-14 06.29.37.412212000 PM APPLY SERVER 12.1.0.1 0 PSU Patchset 12.1.0.0.0
      12-FEB-14 09.48.05.383369000 AM APPLY SERVER 12.1.0.1 2 PSU PSU 12.1.0.1.2
      
      
      SQL> select *  from dba_registry_sqlpatch;
      
      PATCH_ID ACTION STATUS ACTION_TIME DESCRIPTION LOGFILE
      17552800 APPLY SUCCESS 12-FEB-14 09.49.00.559171000 AM bundle:PSU /u01/app/oracle/product/12.1.0/dbhome/sqlpatch/17552800/17552800_apply_PRMCDB_CDBROOT_2014Feb12_09_47_49.log
      


      Regards
      Mahir M. Quluzade

      2014/02/03

      Oracle ACE Newsletter January 2014

      I saw my name in Oracle ACE Newsletter January 2014.




















      It is first time, is my name in Oracle ACE Newsletter. I'm very glad.
      Thanks to Oracle Technology Network (OTN).

      Regards
      Mahir M. Quluzade

      2014/01/21

      OTN Article : Oracle Database 12c – Transporte de “Tablespaces” de “11.2.0.3” a “12.1” ( Parte III )

      Oracle Technology Network - OTN (Latina America) published our 5th article in Spanish Language.

      Oracle Database 12c – Transporte de “Tablespaces” de “11.2.0.3” a “12.1” ( Parte III ) written by Joel Perez (Oracle ACED) and Mahir M. Quluzade (OCE)

      Published : January 2014










      You can read article from : http://www.oracle.com/technetwork/es/articles/database-performance/transporte-tablespace-11-a-12-part3-2111105-esa.html


      Regards
      Mahir M. Quluzade

      2014/01/10

      OTN Article : Oracle Database 12c – “Cross Platform” Database Transport (Part I & Part II)

      Oracle Technology Network - OTN (Latina America) published in Portuguese Language: Oracle Data Guard 12c – “Cross Platform” Database Transport (Part II) written by Joel Perez (Oracle ACED), Rodrigo Mufalini (Oracle ACE) and Mahir M. Quluzade (OCE)







      You can read all parts of article following links :



      Part I: http://www.oracle.com/technetwork/pt/articles/database-performance/data-guard12c-cross-platform-2098313-ptb.html (in Portuguese)



      Part II: http://www.oracle.com/technetwork/pt/articles/database-performance/data-guard12c-cross-platform-parte2-2100280-ptb.html (in Portuguese)

      My special thank to my friends Joel and Rodrigo for all support.


      Regards
      Mahir M. Quluzade

      2014/01/09

      OTN Article : Oracle Database 12c: “Upgrade” a “Oracle Database 12c” ( Parte III )

      OTN (Oracle Technology Network) Spanish published our next article. Oracle Database 12c: “Upgrade” a “Oracle Database 12c” ( Parte III ) by Joel Perez (Oracle ACED) and Mahir M. Quluzade (OCE) (Published : January 2014)








      You can read our article from : http://www.oracle.com/technetwork/es/articles/database-performance/upgrade-database-12c-parte-3-2099475-esa.html (in Spanish)

      Special thanks to my friend Joel (from Venezuela) for all support. 

      Regards
      Mahir M. Quluzade 

      2014/01/07

      OTN Article : Oracle Database 12c – “Cross Platform” Database Transport (Part I)

      OTN (Oracle Technology Network) Portuguese published our next article : Oracle Data Guard 12c – “Cross Platform” Database Transport (Part I) by authors Joel Perez (Oracle ACED), Rodrigo Mufalini (Oracle ACE) and Mahir M. Quluzade (OCE)








      You can read article from : http://www.oracle.com/technetwork/pt/articles/database-performance/data-guard12c-cross-platform-2098313-ptb.html  (in Portuguese language)


      My special thank to my friends Joel and Rodrigo for all support.


      Regards

      Mahir M. Quluzade