Por Joel Perez , Mahir M. Quluzade (OCP) & Rodrigo Mufalani
Postado em janeiro 2014
Indice:
O Oracle “Database12c” é a nova versão do gerenciador de base de dados da “Oracle Corporation”, e nós DBA’s e Desenvolvedores que usamos a tecnologia Oracle nos perguntamos “O que mais, a Oracle poderia adicionar como novas funcionalidades?” Como sempre a Oracle nos surpreende mais uma vez, as novas características e a nova arquitetura não só surpreendem como também nos levam a uma outra era…., “Cloud Computing”…
Pessoalmente tive a oportunidade de trabalhar com tecnologia Oracle como DBA desde a versão 8. O 8i da era da internet, o “9i” da era da internet com mais elementos, me lembro que um dos maiores componentes de maior importância foi a apresentação do Real Application Clusters 9i, “nascia a era RAC…”, “10g” que nos surpreendeu com o conceito de ASM… e a filosofia “Grid Computing”, 11g & 11gR2 sobretudo com suas melhoras de alto nível relacionadas a RAC & Dataguard…, 12c… Cloud Computing, novas funcionalidades… Mais de 500 as quais iremos cobrindo gradualmente através de artigos e outros elementos de ajuda.
O transporte de dados através de diversas plataformas (“Sistemas Operacionais”) sempre envolveu em conjunto o conhecimento de técnicas e uma arena de desafios para alcançar os objetivos. “Oracle Database 12c” tras consigo uma série de possibilidades altamente escaláveis e flexíveis nesta área. Pessoalmente considero que estas melhoras na área de transporte “Cross-Platform” são uma das grandes conquistas dessa versão em conjunto com outras novas funcionalidades.
Entramos na matéria… Antes da versão “Oracle Database 12c R1” as tarefas de Migração, Upgrade, Replicação e outras atividades entre bases de dados pertencentes a Sistemas Operacionais distintos eram um desafio. As alternativas, procedimentos e estratégias para lidar com “Cross-Platform” são realmente diversas e poderíamos considerar um “subset” de uma área de especialização para todos aqueles que são DBA.
Uma tarefa que mais utilizo em nível internacional para realizar “Upgrades” de bases de dados é o estabelecimento de infraestrutura de alta disponibilidade. O principal desafio em “Upgrades” é obter o menor tempo possível de “Downtime” em conjunto com outras variáveis. O tempo de “Downtime” dependerá de diversos fatores, um dos mais sérios é aquele que contem implicações por estar em plataformas diferentes. No presente artigo nos referimos a plataforma como equivalente a Sistemas Operacionais.
“Endian Format”: O endian format é a peça chave para se entender tudo relacionado com operações “Multi-Plataformas”. O endian format é a ordem em que estão ordenados os “Bytes” internamente nos arquivos binários pertencentes a um determinado Sistema Operacional. No “endian format” temos apenas 2 tipos: “Little” & “Big”, em um os bytes estão ordenados do menor para o maior e vice-versa.
Nota: Neste artigo se utilizarão os temos “Cross-Platform” & “Multi-Plataforma” como sinônimos.
Em versões anteriores a “Oracle Database 12cR1” a maioria das operações “Multi-Plataformas” eram favorecidas se os “endian format” fossem iguais. Ex.:
Se os “endian format” não eram iguais, as operações se tornavam um tanto complexas. Ex.:
E assim sucessivamente...
“Cross Platform Transportable Tablespace”: é uma variação originária do “Transportable Tablespace” anterior ao “Oracle Database 12c”, todas as restrições que aplicam para o modelo de transporte de “Tablespaces” anterior se aplicam ao atual. “Transportable Tablespace” pode ser efetuado entre base de dados que tenham “endian format” iguais ou entre versões do gerenciador.
“Cross Platform Transportable Database”: é adequado esclarecer que “Transportable Database” não é a mesma técnica que “Transportable Tablespace”. Neste caso se copia toda a base de dados incluindo “Tablespaces” de sistema como “System”, “Sysaux” e outros. O conceito de “Cross Platform Transportable Database” está baseado principalmente na nova funcionalidade denominada “Full Transportable Export/Import”.
“Full Transportable Export/Import” é uma nova característica do “Oracle Database 12c” que facilita o movimento de uma base de dados completa utilizando a funcionalidade de “Transportable Tablespace”. Este componente automatiza o processo de cópia de “Metadados” e é capaz de mover os dados que residem nos “Tablespaces” não transportáveis como “SYSTEM” e “SYSAUX”. Além de ser capaz de transportar tablespace encriptados.
Realizar “Upgrades” entre plataformas heterogéneas sempre foi um desafio para empresas e DBAs incorrendo em muitas oportunidades de escolha de soluções e estratégias para superar as dificuldades. Em muitos casos o investimento econômico é tão alto em consideração a estes cenários, que pode levar a troca da plataforma de destino de forma radical entre outras decisões. Ex.: Ocorre com bastante frequência que nas empresas os gerentes e/ou diretores de TI tomam decisões de compra de hardware para realização de “Upgrades” de base de dados e também de hardware sem conhecer a fundo as possíveis implicações de uma decisão por uma plataforma ou outra. Em versões anteriores ao “Oracle Database 12c”, escolher uma plataforma nova para “Upgrade” com um “Endian Format“ diferente do da plataforma original implicava em um grande desafio posterior para os “DBAs” e em muitas ocasiões implicações econômicas posteriores para finalizar a tarefa. Em todo este tempo como “DBA” sempre temos enfrentado em inúmeras ocasiões e tem sido muito frequente viajar até outros países somente para explicar implicações econômicas que terão ao optar por um “Upgrade” em uma plataforma heterogénea, mas especificamente quando os “Endian Formats” são diferentes.
Felizmente para as empresa essa nova funcionalidade “Cross-Plattorm” de “Full Transportable Export/Import” poderá solucionar este tipo de casos complexos de “Upgrade” entre plataformas de “Endian Format” diferentes. O único pré-requisito é que a base de dados estejam na versão 11.2.0.3 em diante. Ex.: Se uma empresa possui um BD na versão 10.2.0.5 e queira realizar um upgrade para uma plataforma diferente em 11.2.0.3, porque não somente deseja atualizar a versão, mas também trocar de hardware também possuía a dificuldade que tivemos conversando. Uma solução excelente seria aplicar o upgrade rápido e momentâneo no hardware original de 10.2.0.5 para 11.2.0.3 e desta versão fazer o upgrade direto para o “Oracle Database 12c” no hardware de destino com a plataforma e o “Endian Format”, mesmo diferente, que a empresa desejar. Esta indubitavelmente poderia ser uma de tantas justificadas razões pela qual uma empresa poderia programar seu “Upgrade” para o “Oracle Database 12c”. Nesta série de artigos teremos exemplos altamente interessantes dessa nova funcionalidade.
Continuando com o tema, porém, focado em outras técnicas para converter os BDs citamos o seguinte: Mesmo o “Oracle Database 12c” é um requisito indispensável para ambas as plataformas que tenham o mesmo “endian format” para concretizar o “CONVERT DATABASE”. No entanto os comandos “BACKUP” & “RESTORE” trouxeram novas funcionalidades para driblar essas restrições do “CONVERT DATABASE”.
Antes de seguir conversando sobre as novas funcionalidades de “BACKUP” & “RESTORE” 12c então nos perguntamos: “Qual a diferença ente uma e outra...? Quando é adequado utilizar cada comando...? Então vejamos o seguinte:
Entender a diferença entre estas 3 técnicas é fundamental para entender como o marco “Cross-Platform” do Oracle Database 12c funciona.
Seguimos conversando de “BACKUP” & “RESTORE”. As novas funcionalidades dos comandos “BACKUP” & “RESTORE” permitem converter uma base de dados da plataforma de origem para o destino. Listamos algumas razões vantajosas em realizar a conversão no “host” de destino.
“Métodos de Transporte de Dados através de Plataformas”
Notas de uso para transporte “Cross-Platform”
“Cross-Platform Backup” (Conceito): é um “Backup” criado de uma base de dados origem e que pode ser restaurado em uma base de dados destino que pertença a uma plataforma diferente do BD original. Estes são usados para transporte de dados entre plataformas diferentes.
Termos básicos utilizados em operações “Cross-Platform”
Antes de utilizar operações “Cross-Platform” é de alta importância familiarizar-se com os seguintes termos:
Notas de uso para conversões de “Tablespaces” & “Datafiles”
“Database Conversion”
Para converter uma base de dados (BDs) completa a uma plataforma diferente, os “endian formats” de ambas BDs devem ser iguais. O BD de origem deve estar em modo “Read-Only” para finalizar o “CONVERT DATABASE”. O procedimento “CONVERT DATABASE” geram os seguintes elementos a serem transferidos transferidos ao servidor de destino:
Plataformas disponíveis para operações “Cross-Platform” no “Oracle Database 12c”
SQL> set linesize 2000 SQL> set pagesize 2000 SQL> select PLATFORM_ID, PLATFORM_NAME, ENDIAN_FORMAT from v$transportable_platform; PLATFORM_ID PLATFORM_NAME ENDIAN_FORMAT ----------- ------------------------------------------------------------------ 1 Solaris[tm] OE (32-bit) Big 2 Solaris[tm] OE (64-bit) Big 7 Microsoft Windows IA (32-bit) Little 10 Linux IA (32-bit) Little 6 AIX-Based Systems (64-bit) Big 3 HP-UX (64-bit) Big 5 HP Tru64 UNIX Little 4 HP-UX IA (64-bit) Big 11 Linux IA (64-bit) Little 15 HP Open VMS Little 8 Microsoft Windows IA (64-bit) Little 9 IBM zSeries Based Linux Big 13 Linux x86 64-bit Little 16 Apple Mac OS Big 12 Microsoft Windows x86 64-bit Little 17 Solaris Operating System (x86) Little 18 IBM Power Based Linux Big 19 HP IA Open VMS Little 20 Solaris Operating System (x86-64) Little 21 Apple Mac OS (x86-64) Little 20 rows selected. SQL>
Dando continuação ao exemplo deste artigo:
Objetivo/Descrição |
|
Versão do RDBMS de origem |
|
Versão do RDBMS de destino |
|
Sistema Operacional de Origem |
|
Sistema Operacional de Destino |
|
Ferramenta(s) a ser utilizadas |
|
Método |
|
BD Origem |
|
BD Destino |
|
Identificação do BD de origem e estabelecimento dos dados de aplicação
C:\Users\oracle>set ORACLE_SID=wdb12c C:\Users\oracle>sqlplus sys as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Mon Jul 22 03:44:13 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Enter password: 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 opions SQL> select banner from v$version; BANNER ------------------------------------------------------------------------------- Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production PL/SQL Release 12.1.0.1.0 - Production CORE 12.1.0.1.0 Production TNS for 64-bit Windows: Version 12.1.0.1.0 - Production NLSRTL Version 12.1.0.1.0 – Production SQL> select cdb, name, log_mode from v$database; CDB NAME LOG_MODE --- --------- ------------ NO WDB12C ARCHIVELOG SQL> select platform_name from v$transportable_platform 2 where platform_id = (select platform_id from v$database); PLATFORM_NAME -------------------------------------------------------------------------------- Microsoft Windows x86 64-bit SQL> create user mahir identified by mahir; User created. SQL> grant create session, resource, dba to mahir; Grant succeeded. SQL> connect mahir/mahir Connected. SQL> create table t (n number); Table created. SQL> insert into t values(1); 1 row created. SQL> commit; Commit complete. SQL> select * from t; N ---------- 1
Backup do BD de origem com o uso de comando “BACKUP FOR TRANSPORT”. No “Oracle Database 12cR1” é que a base de dados origem esteja em modo “Read-Only” para se aplicar o procedimento de Transporte, objeto do presente artigo.
C:\Users\oracle>set ORACLE_IS=wdb12c C:\Users\oracle>rman target / Recovery Manager: Release 12.1.0.1.0 - Production on Mon Jul 22 04:02:27 2013 Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved. connected to target database: WDB12C (DBID=1042362086) RMAN> shutdown immediate; using target database control file instead of recovery catalog database closed database dismounted Oracle instance shut down RMAN> startup mount; connected to target database (not started) Oracle instance started database mounted Total System Global Area 801701888 bytes Fixed Size 2407784 bytes Variable Size 541065880 bytes Database Buffers 255852544 bytes Redo Buffers 2375680 bytes RMAN> alter database open read only; Statement processed RMAN> BACKUP FOR TRANSPORT 2> FORMAT 'C:\Backup1\wdb12c_transport1.bck' 3> DATABASE; Starting backup at 22-JUL-13 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=1 device type=DISK channel ORA_DISK_1: starting full datafile backup set channel ORA_DISK_1: specifying datafile(s) in backup set input datafile file number=00001 name=C:\APP\ORACLE\ORADATA\WDB12C\SYSTEM01.DBF input datafile file number=00003 name=C:\APP\ORACLE\ORADATA\WDB12C\SYSAUX01.DBF input datafile file number=00005 name=C:\APP\ORACLE\ORADATA\WDB12C\UNDOTBS01.DBF input datafile file number=00002 name=C:\APP\ORACLE\ORADATA\WDB12C\EXAMPLE01.DBF input datafile file number=00006 name=C:\APP\ORACLE\ORADATA\WDB12C\USERS01.DBF channel ORA_DISK_1: starting piece 1 at 22-JUL-13 channel ORA_DISK_1: finished piece 1 at 22-JUL-13 piece handle=C:\BACKUP1\WDB12C_TRANSPORT1.BCK tag=TAG20130722T040445 comment=NONE channel ORA_DISK_1: backup set complete, elapsed time: 00:01:55 Finished backup at 22-JUL-13
Para o presente caso construiremos manualmente os “Controlfiles” no BD de destino baseado na informação do BD de origem, para tanto, faremos um “Backup Controlfile to trace” para tal objetivo. Também será gerado um “Parameter File” igual ao de origem como podemos verificar abaixo:
C:\Users\oracle>set ORACLE_IS=wdb12c C:\Users\oracle>sqlplus/ as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Mon Jul 22 04:07:28 2013 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> alter database backup controlfile to trace as 'C:\Backup1\controlfile2trace1.sql'; Database altered. SQL> create pfile='C:\Backup1\pfile4linux1.ora' from spfile; File created.
Transferência dos arquivos necessários, gerados nos passos anteriores:
C:\Users\oracle>cd C:\Backup1 C:\Backup>dir Volume in drive C has no label. Volume Serial Number is 5CD8-D7F7 Directory of C:\Backup1 07/22/2013 04:07 AM <DIR> . 07/22/2013 04:07 AM <DIR> .. 07/22/2013 04:07 AM 6,105 CONTROLFILE2TRACE1.SQL 07/22/2013 04:07 AM 1,042 pfile4linux1.ora 07/22/2013 04:06 AM 1,427,324,928 WDB12C_TRANSPORT1.BCK 3 File(s) 1,427,332,075 bytes 2 Dir(s) 80,754,802,688 bytes free [oracle@oel62-ora12c tmp]$ cd Backup1 [oracle@oel62-ora12c Backup1]$ ls -l total 1393896 -rw-r--r-- 1 oracle oinstall 6007 Jul 22 14:52 CONTROLFILE2TRACE1.SQL -rw-r--r-- 1 oracle oinstall 1028 Jul 22 16:30 pfile4linux1.ora -rw-r--r-- 1 oracle oinstall 1427324928 Jul 22 16:18 WDB12C_TRANSPORT1.BCK
Parâmetros ajustados para o “Parameter File” do BD de destino
ldb12c1.__data_transfer_cache_size=0 ldb12c1.__db_cache_size=369098752 ldb12c1.__java_pool_size=4194304 ldb12c1.__large_pool_size=8388608 ldb12c1.__oracle_base='/u01/app/oracle'#ORACLE_BASE set from environment ldb12c1.__pga_aggregate_target=281018368 ldb12c1.__sga_target=524288000 ldb12c1.__shared_io_pool_size=0 ldb12c1.__shared_pool_size=134217728 ldb12c1.__streams_pool_size=0 *.audit_file_dest='/u01/app/oracle/admin/ldb12c1/adump' *.audit_trail='db' *.compatible='12.1.0.0.0' *.control_files='/u01/app/oracle/oradata/LDB12C1/control01.ctl' *.db_block_size=8192 *.db_domain='' *.db_name='wdb12c' *.db_unique_name='ldb12c1' *.db_create_file_dest='/u01/app/oracle/oradata' *.db_recovery_file_dest='/u01/app/oracle/fast_recovery_area' *.db_recovery_file_dest_size=6930m *.diagnostic_dest='/u01/app/oracle' *.dispatchers='(PROTOCOL=TCP) (SERVICE=ldb12c1XDB)' *.local_listener='' *.log_archive_format='ARC%S_%R.%T' *.memory_target=768m *.open_cursors=300 *.processes=300 *.remote_login_passwordfile='EXCLUSIVE' *.undo_tablespace='UNDOTBS1'
No destino precisamos realizar a criação do diretório “audit dump”
mkdir -p /u01/app/oracle/admin/ldb12c1/adump
No destino inicializaremos a nova instância “ldb12c1” em modo “NOMOUNT” fazendo uso do “Parameter File” construído e faremos a execução do comando “RESTORE FROM PLATFORM”. No comando “RESTORE FROM PLATFORM” especificamos:
[oracle@oel62-ora12c /]$ export ORACLE_SID=ldb12c1 [oracle@oel62-ora12c /]$ rman target / Recovery Manager: Release 12.1.0.1.0 - Production on Mon Jul 22 16:32:05 2013 Copyright (c) 1982, 2013, Oracle and/or its affiliates. All rights reserved. connected to target database (not started) RMAN> startup nomount pfile='/tmp/Backup1/pfile4linux1.ora'; Oracle instance started Total System Global Area 801701888 bytes Fixed Size 2293496 bytes Variable Size 545259784 bytes Database Buffers 251658240 bytes Redo Buffers 2490368 bytes RMAN> RESTORE 2> FROM PLATFORM 'Microsoft Windows x86 64-bit' 3> FOREIGN DATABASE TO NEW 4> FROM BACKUPSET '/tmp/Backup1/WDB12C_TRANSPORT1.BCK'; Starting restore at 22-JUL-13 using target database control file instead of recovery catalog allocated channel: ORA_DISK_1 channel ORA_DISK_1: SID=19 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 all foreign files in backup piece channel ORA_DISK_1: reading from backup piece /tmp/Backup1/WDB12C_TRANSPORT1.BCK channel ORA_DISK_1: restoring foreign file 1 to /u01/app/oracle/oradata/LDB12C1/ datafile/o1_mf_system_8yt644bz_.dbf channel ORA_DISK_1: restoring foreign file 3 to /u01/app/oracle/oradata/LDB12C1/ datafile/o1_mf_sysaux_8yt644f8_.dbf channel ORA_DISK_1: restoring foreign file 5 to /u01/app/oracle/oradata/LDB12C1/ datafile/o1_mf_undotbs1_8yt644ht_.dbf channel ORA_DISK_1: restoring foreign file 2 to /u01/app/oracle/oradata/LDB12C1/ datafile/o1_mf_example_8yt644lg_.dbf channel ORA_DISK_1: restoring foreign file 6 to /u01/app/oracle/oradata/LDB12C1/ datafile/o1_mf_users_8yt644nk_.dbf channel ORA_DISK_1: foreign piece handle=/tmp/Backup1/WDB12C_TRANSPORT1.BCK channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:01:16 Finished restore at 22-JUL-13
Visualizando os “Datafiles” restaurados
[oracle@oel62-ora12c datafile]$ pwd /u01/app/oracle/oradata/LDB12C1/datafile [oracle@oel62-ora12c datafile]$ [oracle@oel62-ora12c datafile]$ ls -l total 2741816 -rw-r----- 1 oracle oinstall 374874112 Jul 22 16:34 o1_mf_example_8yt644lg_.dbf -rw-r----- 1 oracle oinstall 828383232 Jul 22 16:34 o1_mf_sysaux_8yt644f8_.dbf -rw-r----- 1 oracle oinstall 838868992 Jul 22 16:34 o1_mf_system_8yt644bz_.dbf -rw-r----- 1 oracle oinstall 760225792 Jul 22 16:33 o1_mf_undotbs1_8yt644ht_.dbf -rw-r----- 1 oracle oinstall 5251072 Jul 22 16:33 o1_mf_users_8yt644nk_.dbf [oracle@oel62-ora12c datafile]$
Ajustes realizados no “Script” recriação dos “Controlfiles”
STARTUP NOMOUNT PFILE='/tmp/Backup1/pfile4linux1.ora'; CREATE CONTROLFILE REUSE DATABASE "WDB12C" RESETLOGS ARCHIVELOG MAXLOGFILES 16 MAXLOGMEMBERS 3 MAXDATAFILES 100 MAXINSTANCES 8 MAXLOGHISTORY 292 LOGFILE GROUP 1 '/u01/app/oracle/oradata/LDB12C1/redo01.log' SIZE 50M BLOCKSIZE 512, GROUP 2 '/u01/app/oracle/oradata/LDB12C1/redo02.log' SIZE 50M BLOCKSIZE 512, GROUP 3 '/u01/app/oracle/oradata/LDB12C1/redo03.log' SIZE 50M BLOCKSIZE 512 DATAFILE '/u01/app/oracle/oradata/LDB12C1/datafile/o1_mf_system_8yt644bz_.dbf', '/u01/app/oracle/oradata/LDB12C1/datafile/o1_mf_example_8yt644lg_.dbf', '/u01/app/oracle/oradata/LDB12C1/datafile/o1_mf_sysaux_8yt644f8_.dbf', '/u01/app/oracle/oradata/LDB12C1/datafile/o1_mf_undotbs1_8yt644ht_.dbf', '/u01/app/oracle/oradata/LDB12C1/datafile/o1_mf_users_8yt644nk_.dbf' CHARACTER SET AL32UTF8; -- Database can now be opened zeroing the online logs. ALTER DATABASE OPEN RESETLOGS; -- Commands to add tempfiles to temporary tablespaces. -- Online tempfiles have complete space information. -- Other tempfiles may require adjustment. ALTER TABLESPACE TEMP ADD TEMPFILE '/u01/app/oracle/oradata/LDB12C1/datafile/temp01.dbf' SIZE 92274688 REUSE AUTOEXTEND ON NEXT 655360 MAXSIZE 32767M; -- End of tempfile additions.
Recriando “Controlfiles”, Abertura do BD & Ajuste do “Tablespace” temporário
[oracle@oel62-ora12c /]$ export ORACLE_SID=ldb12c1 [oracle@oel62-ora12c /]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Mon Jul 22 16:43:40 2013 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> shut immediate; ORA-01507: database not mounted ORACLE instance shut down. SQL> @/tmp/Backup1/CONTROLFILE2TRACE1.SQL ORACLE instance started. Total System Global Area 801701888 bytes Fixed Size 2293496 bytes Variable Size 545259784 bytes Database Buffers 251658240 bytes Redo Buffers 2490368 bytes Control file created. Database altered. Tablespace altered. SQL>exit
Verificando a base de dados destino aberta e disponível, já convertida.
[oracle@oel62-ora12c /]$ export ORACLE_SID=ldb12c1 [oracle@oel62-ora12c /]$ sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Mon Jul 22 16:43:40 2013 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 platform_name from v$transportable_platform 2 where platform_id = (select platform_id from v$database); PLATFORM_NAME -------------------------------------------------------------------------------- Linux x86 64-bit SQL> select cdb, open_mode, log_mode from v$database; CDB OPEN_MODE LOG_MODE --- -------------------- ------------ NO READ WRITE ARCHIVELOG SQL> conn mahir/mahir Connected. SQL> select * from t; N ---------- 1
Conclusão
Finalizamos o exemplo de transporte de BD, que foi objeto desse artigo. No mesmo utilizamos a cláusula “BACKUP FOR TRANSFORM” o qual como foi explicado no início do artigo, é um tipo de “Backup” transportável para qualquer plataforma contida na view “v$transportable_platform;”.
Vantagens: é um “Backup” transportável para qualquer plataforma descrita na view “v$transportable_platform;”
Desvantagens: Operação de conversão da base só pode ser feita no destino.
Joel é um DBA expert com mais de 12 anos de experiência, especializado nas áreas de bases de dados com especial ênfase em soluções de alta disponibilidade (RAC, Dataguard, e outros). É um palestrante habitual em eventos de Oracle como: OTN LAD TOUR e outros. É o primeiro latino-americano a ser nomeado "OTN Expert " no ano de 2003 e é Oracle ACE Director.
Mahir é um DBA Senior com mais de 10 anos de experiência no Oracle Database com foco especial em Alta disponibilidade e soluções de Recuperação contra desastres (RAC, Data Guard, RMAN,…). Atualmente trabalha para o Central Bank of the Republic of Azerbaijan. Ele é um Oracle Certified Professional DBA.
Mahir é palestrante do Azerbaijan Oracle User Group (AZEROUG) e também é blogger. Siga Mahir no seu blog http://www.mahir-quluzade.com
Mufalani é um DBA Sr. com mais de 10 anos de experiência, começou com o Oracle 8i, mas teve a oportunidade de dar suporte a Oracle 7.3.4 em diante. É especialista em banco de dados Oracle com foco principal em Performance & Tuning e RAC. É palestrante em eventos de Oracle como: OTN LAD TOUR e outros. Atualmente trabalha como consultor diversas empresas no segmento de variados ramos como: Educação, Saúde, Tecnologia, Seguros e etc. Foi o terceiro Oracle ACE a ser nomeado no Brasil e é OCP DBA nas versões 10g e 11g e OCE RAC 10gR2.