<?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-6132267453407001083</id><updated>2012-01-27T22:53:47.035-02:00</updated><category term='alter table move'/><category term='arquivo de dados sem nome'/><category term='postgresql'/><category term='controlfile'/><category term='unlimited tablespace'/><category term='_allow_resetlogs_corruption'/><category term='package'/><category term='glibc'/><category term='intervalo'/><category term='1z0-020'/><category term='bug'/><category term='aquisição'/><category term='registros duplicados'/><category term='contains'/><category term='sga'/><category term='segmento'/><category term='sys_context'/><category term='hash'/><category term='undo_retention'/><category term='dicionário de dados'/><category term='flashback table'/><category term='noarchivelog'/><category term='current_date'/><category term='utl_smtp'/><category term='suse'/><category term='restore'/><category term='dbnewid'/><category term='case-sensitive'/><category term='disable novalidate'/><category term='resource'/><category term='undo_management'/><category term='modelagem de dados'/><category term='coalesce'/><category term='describe'/><category term='edbplus'/><category term='extensão'/><category term='beta program'/><category term='alter table enable row movement'/><category term='database link'/><category term='wget'/><category term='1z0-042'/><category term='flashback drop'/><category term='resumable_timeout'/><category term='system'/><category term='table'/><category term='foreign key'/><category term='nomount'/><category term='raid 0'/><category term='pl/sql'/><category term='oracle sql developer data modeling'/><category term='atribuição'/><category term='exp_full_database'/><category term='impdp'/><category term='suporte'/><category term='dbua'/><category term='exp'/><category term='rownum'/><category term='dba_objects'/><category term='oca'/><category term='ocm'/><category term='dml'/><category term='auditoria'/><category term='1z0-043'/><category term='shutdown'/><category term='nls_database_parameters'/><category term='linuxworld'/><category term='exame'/><category term='visible'/><category term='currval'/><category term='dbms_crypto'/><category term='raid 10'/><category term='interval'/><category term='set_client_info'/><category term='indexfile'/><category term='evolução'/><category term='utilitário'/><category term='carreira'/><category term='dbms_lob'/><category term='encryption_algorithm'/><category term='ora-01652'/><category term='rac'/><category term='dba_roles'/><category term='pearson vue'/><category term='reuse_dumpfiles'/><category term='dump'/><category term='ocp'/><category term='blob'/><category term='dbms_application_info'/><category term='drop'/><category term='oracle instant client'/><category term='enterprisedb'/><category term='dbca'/><category term='uptime'/><category term='redo log file'/><category term='init.ora'/><category term='tuning'/><category term='mercado'/><category term='alter system check datafiles'/><category term='remap_tablespace'/><category term='dbms_job'/><category term='raid 1'/><category term='dbms_monitor.session_trace_enable'/><category term='user_indexes'/><category term='compressão'/><category term='dbmsmeta.sql'/><category term='purge'/><category term='recovery'/><category term='senha'/><category term='oracle 10g'/><category term='psu'/><category term='patch set update'/><category term='last_ddl_time'/><category term='patch set'/><category term='deferrable constraints'/><category term='guob tech day'/><category term='dba'/><category term='startup'/><category term='reorganização'/><category term='as of timestamp'/><category term='cold backup'/><category term='privilégio'/><category term='optimizer_use_invisible_indexes'/><category term='ctx_ddl.optimize_index'/><category term='raid 0+1'/><category term='flashback query'/><category term='dbms_redefinition'/><category term='liderança'/><category term='oracle text'/><category term='versions between'/><category term='segurança'/><category term='flashback versions query'/><category term='localtimestamp'/><category term='sql'/><category term='osdm'/><category term='inicialização'/><category term='integridade referencial'/><category term='unix'/><category term='índices invisíveis'/><category term='sessiontimezone'/><category term='apresentação'/><category term='goldengate'/><category term='md5'/><category term='read only'/><category term='dbms_system.set_sql_trace_in_session'/><category term='erp'/><category term='criptografia'/><category term='segment_attributes'/><category term='datafile'/><category term='interval partitioning'/><category term='partições'/><category term='flashback transaction query'/><category term='tempfile'/><category term='nls_sort'/><category term='recover database'/><category term='addm'/><category term='backup físico'/><category term='utl_mail'/><category term='sqlplus'/><category term='grant'/><category term='odbc'/><category term='set_module'/><category term='oracle metalink'/><category term='db2'/><category term='relacionamentos'/><category term='dba_resumable'/><category term='job_queue_processes'/><category term='enable validate'/><category term='archivelog'/><category term='log buffer'/><category term='nls_session_parameters'/><category term='nextval'/><category term='oracle sql developer'/><category term='encryption'/><category term='oracle_home'/><category term='resetlogs'/><category term='timestamp with local time zone'/><category term='function'/><category term='prometric'/><category term='sun'/><category term='raid'/><category term='cpu'/><category term='backup'/><category term='replication_dependency_tracking'/><category term='assistente de instalação'/><category term='disable validate'/><category term='exame beta'/><category term='systimestamp'/><category term='1z0-010'/><category term='ignorecase'/><category term='enable novalidate'/><category term='encryption_mode'/><category term='ora-1401'/><category term='ora-01502'/><category term='lgwr'/><category term='sequence'/><category term='table partition'/><category term='critical patch update'/><category term='prêmio'/><category term='datapump'/><category term='certificação'/><category term='role'/><category term='user_cons_columns'/><category term='simulado'/><category term='sql.bsq'/><category term='dbtimezone'/><category term='unixodbc'/><category term='oracle'/><category term='rowid'/><category term='ora-30032'/><category term='sql_trace'/><category term='raid 1+0'/><category term='password_versions'/><category term='synonym'/><category term='sysdate'/><category term='dba_users_with_defpwd'/><category term='shrink space compact'/><category term='oracle 8i'/><category term='dbms_rowid'/><category term='expdp'/><category term='dbms_resumable'/><category term='findstr'/><category term='ora-01092'/><category term='invisible'/><category term='auto-incremento'/><category term='fragmentação'/><category term='oracle xe'/><category term='certview'/><category term='sinônimo'/><category term='imp'/><category term='depuração'/><category term='dual'/><category term='resumable space allocation'/><category term='dbpitr'/><category term='multiplexação'/><category term='directory'/><category term='ora-01187'/><category term='dbms_sqltune'/><category term='evento'/><category term='forum'/><category term='compression'/><category term='bloco'/><category term='acid'/><category term='user_constraints'/><category term='oracle 9i'/><category term='backup lógico'/><category term='download'/><category term='1z0-035'/><category term='duplicate'/><category term='dg4odbc'/><category term='dbms_metadata'/><category term='compatibilidade'/><category term='ibm'/><category term='control_files'/><category term='função'/><category term='libaio'/><category term='windows'/><category term='open'/><category term='recyclebin'/><category term='utl_file'/><category term='shrink space'/><category term='ora-27038'/><category term='advisor'/><category term='current_timestamp'/><category term='oracle 11g'/><category term='timestamp'/><category term='hsodbc'/><category term='rar'/><category term='fórmula matemática'/><category term='1z1-054'/><category term='número por extenso'/><category term='my oracle support'/><category term='csi'/><category term='estratégia'/><category term='linux'/><category term='all_objects'/><category term='spfile'/><category term='ora-01113'/><category term='desenvolvedor'/><category term='primary key'/><category term='opensuse'/><category term='libxcb_allow_sloppy_lock'/><category term='oracle_base'/><category term='tspitr'/><category term='revoke'/><category term='oracle database 11g release 2 beta'/><category term='sys'/><category term='mount'/><category term='extração'/><category term='trigger'/><category term='flashback database'/><category term='gerenciamento'/><category term='blog'/><category term='atualização'/><category term='constraint'/><category term='skip_unusable_indexes'/><category term='dbms_obfuscation_toolkit'/><category term='ctx_ddl.sync_index'/><category term='user_objetcs'/><category term='sap'/><category term='ora-00955'/><category term='instalação'/><category term='dbms_flashback'/><category term='dba_data_files'/><category term='sec_case_sensitive_logon'/><category term='ctxsys.context'/><category term='dba_temp_files'/><category term='rman'/><category term='tablespace'/><category term='ddl'/><category term='encryption_password'/><category term='zip'/><category term='timestamp with time zone'/><category term='flashback_transaction_query'/><title type='text'>Oracle Blog</title><subtitle type='html'>8i, 9i, 10g, 11g ...</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default?start-index=101&amp;max-results=100'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>108</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-3888256682243944261</id><published>2012-01-01T16:06:00.003-02:00</published><updated>2012-01-01T16:19:59.844-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='recover database'/><category scheme='http://www.blogger.com/atom/ns#' term='rman'/><category scheme='http://www.blogger.com/atom/ns#' term='recovery'/><title type='text'>Restaurando e recuperando um banco de dados em outra máquina com o RMAN</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify; font-family: courier new;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;Imagine um cenário de desastre completo, ou seja, o servidor de banco de dados sofreu &lt;/span&gt;&lt;span style="font-size:85%;"&gt;uma pane na qual não só o software Oracle se corrompeu, mas também o disco aonde se &lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/-lwmrCaU7MCQ/TwCjJAW88VI/AAAAAAAAAxM/ms2-ThXRrqM/s1600/hdcrashed.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 205px; height: 159px;" src="http://3.bp.blogspot.com/-lwmrCaU7MCQ/TwCjJAW88VI/AAAAAAAAAxM/ms2-ThXRrqM/s400/hdcrashed.jpg" alt="" id="BLOGGER_PHOTO_ID_5692729304106725714" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;localizavam os arquivos do banco de dados foi perdido. &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;Neste caso, todos os arquivos &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;de banco de dados como os controlfiles, datafiles, online redo log files, além do&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt; spfile, foram perdidos&lt;/span&gt;. Este cenário só não poderia ser pior, porque o disco onde fica localizada a &lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;flash recovery area&lt;/span&gt; ficou intacto. Portanto, voltar um backup RMAN em conjunto com os archive redo log files contidos na flash recovery area será possível!&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify; font-family: courier new;"&gt;&lt;span style="font-size:85%;"&gt;Este cenário é apenas ilustrativo, pois geralmente o desenvolvimento de um plano de backup e recuperação é extremamente importante para um servidor de banco de dados. É lógico que, dependendo do caso, um plano adequado de backup e recuperação não tem que ser necessariamente o mais elaborado e complexo, na verdade, ele precisa ser aquele que irá servir melhor às necessidades de cada negócio. No geral, bancos de dados de produção contam com backups físicos como seu principal método de backup e backups lógicos servem como um método secundário. Por outro lado, para bancos de dados de desenvolvimento e para pequenos processamentos de movimentação de dados, os backups lógicos podem ser uma solução aceitável e viável. É importante também, sempre contar com soluções físicas de redundância como RAID, servidores standby, cópias em fita, etc... de forma que o banco de dados fique offline o menos tempo possível.&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family: courier new;font-size:85%;" &gt;&lt;br /&gt;&lt;span style="font-family: courier new;"&gt;No mais, neste artigo irei demonstrar como restaurar todo o banco de dados à partir de um backup RMAN (backup pieces) e recuperá-lo até onde for possível em uma outra máquina. Para isso deveremos realizar os seguintes procedimentos:&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;/span&gt;&lt;ul&gt;&lt;li style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Criar as estruturas de diretórios básicos em $ORACLE_BASE/ADMIN&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify; font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Criar os diretórios referentes às localizações dos arquivos de banco de dados como (datafiles, controlfiles, etc...) iguais ao banco de dados de origem&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify; font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Copiar os arquivos de backup RMAN (backup pieces) para a flash_recovery_area (como definido no banco de dados de origem)&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li style="font-weight: bold;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Iniciar o processo de RESTORE e RECOVER com o RMAN&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Em resumo, os comandos que executarei neste artigo serão:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: scroll; height:auto; width: 100%"&gt;&lt;code&gt;$ export ORACLE_SID=BD01&lt;br /&gt;$ rman target /&lt;br /&gt;RMAN&amp;gt; startup nomount;&lt;br /&gt;RMAN&amp;gt; restore spfile from autobackup recovery area '/u01/flash_recovery_area' db_name=BD01;&lt;br /&gt;RMAN&amp;gt; shutdown immediate;&lt;br /&gt;RMAN&amp;gt; startup nomount;&lt;br /&gt;RMAN&amp;gt; restore controlfile from autobackup;&lt;br /&gt;RMAN&amp;gt; alter database mount;&lt;br /&gt;RMAN&amp;gt; restore database;&lt;br /&gt;RMAN&amp;gt; recover database;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, após transferir o backup RMAN  do meu banco de dados &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt; para uma outra máquina (no diretório &lt;span style="color: rgb(255, 0, 0);"&gt;/tmp&lt;/span&gt;), irei transferi-lo para o diretório &lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area/&lt;/span&gt; como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;$ cp -a /tmp/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt; &lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area/&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ cd &lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area&lt;/span&gt;/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ du -sh *&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;56K     archivelog&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;37M     autobackup&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;641M    backupset&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Com os arquivos de backup &lt;span style="color: rgb(255, 0, 0);"&gt;acima&lt;/span&gt; restaurados, o próximo passo será criar todos os diretórios básicos necessários para o correto funcionamento do banco de dados:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/adump&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/bdump&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/cdump&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/dpdump&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/pfile&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir $ORACLE_BASE/admin/&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;/udump&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Por fim, irei criar a estrutura de diretórios para onde serão restaurados os arquivos de banco de dados. É importante que o mesmos sejam criados da mesma forma como eles existiam no servidor antigo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;$ cd /u01/oradata/&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;$ mkdir &lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Neste momento poderemos iniciar o processo de restauração e recuperação da base de dados com o RMAN até aonde for possível. Com o software Oracle já devidamente instalado, &lt;span style="font-weight: bold;"&gt;o primeiro passo será restaurar o spfile&lt;/span&gt;. Vale a pena salientar que é uma boa prática definir a configuração &lt;span style="color: rgb(255, 0, 0);"&gt;CONTROLFILE AUTOBACKUP&lt;/span&gt; para &lt;span style="color: rgb(255, 0, 0);"&gt;ON&lt;/span&gt; na sua política de backup com o RMAN, pois o mesmo garante não só de forma automática o backup dos controlfiles, como também o backup do spfile.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;$ export ORACLE_SID=&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;$ rman target /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gerenciador de Recuperação: Release 10.2.0.4.0 - Production on Dom Jan 1 14:38:48 2012&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2007, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados de destino (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; startup nomount&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;falha na inicialização: ORA-01078: failure in processing system parameters&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;LRM-00109: não foi possível abrir o arquivo de parâmetros&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;'/u01/app/oracle/product/10.2.0/db_1/dbs/initBD01.ora'&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;iniciando instância Oracle sem arquivo de parâmetros para recuperação de spfile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Total da Área Global do Sistema  159383552 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Fixed Size               2082400 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Variable Size           67111328 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Database Buffers        83886080 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Redo Buffers             6303744 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; restore spfile from autobackup &lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;      recovery area '&lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area&lt;/span&gt;'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;      db_name=&lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando restore em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal alocado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: sid=36 devtype=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;destino da área de recuperação: &lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;nome do banco de dados (ou nome exclusivo) utilizado para pesquisa: &lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: backup automático encontrado na área de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;canal ORA_DISK_1: backup automático encontrado: /u01/flash_recovery_area/BD01/autobackup&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;/2011_12_31/o1_mf_s_769748562_7gfq3m49_.bkp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: restauração de SPFILE a partir de backup automático concluída&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Finalizado restore em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Uma vez recuperado o spfile, &lt;span style="font-weight: bold;"&gt;irei reiniciar a instância de modo que o spfile recuperado seja lido&lt;/span&gt; para que, então, possamos restaurar os controlfiles.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; shutdown immediate;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; startup nomount;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados de destino (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Total da Área Global do Sistema     310378496 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Fixed Size                2083560 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Variable Size           138413336 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Database Buffers        163577856 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Redo Buffers              6303744 bytes&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Neste momento poderemos restaurar os controlfiles à partir do backup.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; restore controlfile from autobackup;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando restore em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal alocado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: sid=159 devtype=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;destino da área de recuperação: &lt;span style="color: rgb(0, 153, 0);"&gt;/u01/flash_recovery_area&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;nome do banco de dados (ou nome exclusivo) utilizado para pesquisa: &lt;span style="color: rgb(51, 51, 255);"&gt;BD01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: backup automático encontrado na área de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: backup automático encontrado: /u01/flash_recovery_area/BD01/autobackup&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;/2011_12_31/o1_mf_s_769748562_7gfq3m49_.bkp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: restauração do arquivo de controle a partir de backup&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;automático concluída&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;nome do arquivo de saída=/u01/oradata/BD01/control01.ctl&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;nome do arquivo de saída=/u01/oradata/BD01/control02.ctl&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;nome do arquivo de saída=/u01/oradata/BD01/control03.ctl&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Finalizado restore em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Restaurados os controlfiles, &lt;span style="font-weight: bold;"&gt;poderemos montar o banco de dados&lt;/span&gt; para que então possamos restaurar os datafiles.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; alter database mount;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;banco de dados montado&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal liberado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; restore database;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: scroll; height:400px; width: 100%"&gt;&lt;code&gt;Iniciando restore em 01/01/2012&lt;br /&gt;Iniciando implicit crosscheck backup em 01/01/2012&lt;br /&gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação&lt;br /&gt;canal alocado: ORA_DISK_1&lt;br /&gt;canal ORA_DISK_1: sid=159 devtype=DISK&lt;br /&gt;Fez a verificação cruzada de 45 objetos&lt;br /&gt;Finalizado implicit crosscheck backup em 01/01/2012&lt;br /&gt;&lt;br /&gt;Iniciando implicit crosscheck copy em 01/01/2012&lt;br /&gt;utilizando o canal ORA_DISK_1&lt;br /&gt;Finalizado implicit crosscheck copy em 01/01/2012&lt;br /&gt;&lt;br /&gt;procurando todos os arquivos na área de recuperação&lt;br /&gt;catalogando arquivos...&lt;br /&gt;catalogação concluída&lt;br /&gt;&lt;br /&gt;Lista de Arquivos Catalogados&lt;br /&gt;=============================&lt;br /&gt;Nome do Arquivo: /u01/flash_recovery_area/BD01/autobackup/2011_12_31/o1_mf_s_769748562_7gfq3m49_.bkp&lt;br /&gt;&lt;br /&gt;utilizando o canal ORA_DISK_1&lt;br /&gt;&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;restaurando arquivo de dados 00002 para /u01/oradata/BD01/undotbs01.dbf&lt;br /&gt;restaurando arquivo de dados 00010 para /u01/oradata/BD01/tbsdata_cust_l0401_01.dbf&lt;br /&gt;restaurando arquivo de dados 00016 para /u01/oradata/BD01/tbsdata_admqueue01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00019 para /u01/oradata/BD01/tbsdata_sgm_hist01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00020 para /u01/oradata/BD01/tbsdata_sgm_inf01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00023 para /u01/oradata/BD01/tbsdata_sgm_rating01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00027 para /u01/oradata/BD01/tbsdata_sgm_2007sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00030 para /u01/oradata/BD01/tbsdata_sgm_2008sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00033 para /u01/oradata/BD01/tbsdata_brtmigtar_01.dbf&lt;br /&gt;restaurando arquivo de dados 00034 para /u01/oradata/BD01/tbsdata_controle01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00037 para /u01/oradata/BD01/tbsdata_mbr_l03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00041 para /u01/oradata/BD01/tbsdata_mbr_l07_01.dbf&lt;br /&gt;restaurando arquivo de dados 00043 para /u01/oradata/BD01/tbsdata_mbr_l09_01.dbf&lt;br /&gt;restaurando arquivo de dados 00044 para /u01/oradata/BD01/tbsdata_mbr_l10_01.dbf&lt;br /&gt;restaurando arquivo de dados 00045 para /u01/oradata/BD01/tbsdata_mbr_l11_01.dbf&lt;br /&gt;restaurando arquivo de dados 00053 para /u01/oradata/BD01/tbsdata_inf2010s101_01.dbf&lt;br /&gt;restaurando arquivo de dados 00056 para /u01/oradata/BD01/tbsdata_inf2011S2_01.dbf&lt;br /&gt;restaurando arquivo de dados 00057 para /u01/oradata/BD01/tbsdata_hist_2006s2_01.dbf&lt;br /&gt;restaurando arquivo de dados 00060 para /u01/oradata/BD01/tbsdata_tam01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00061 para /u01/oradata/BD01/tbsdata_exton01.dbf&lt;br /&gt;restaurando arquivo de dados 00068 para /u01/oradata/BD01/tbsdata_resource_h02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00071 para /u01/oradata/BD01/tbsdata_resource_h05_01.dbf&lt;br /&gt;restaurando arquivo de dados 00074 para /u01/oradata/BD01/tbsdata_resource_h08_01.dbf&lt;br /&gt;restaurando arquivo de dados 00077 para /u01/oradata/BD01/tbsdata_user0101.dbf&lt;br /&gt;restaurando arquivo de dados 00082 para /u01/oradata/BD01/tbsindx_cust03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00084 para /u01/oradata/BD01/tbsindx_admqueue01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00088 para /u01/oradata/BD01/tbsindx_sgm_ext01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00091 para /u01/oradata/BD01/tbsindx_sgm_01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00092 para /u01/oradata/BD01/tbsindx_sgm_2006sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00095 para /u01/oradata/BD01/tbsindx_sgm_2007sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00098 para /u01/oradata/BD01/tbsindx_sgm_2009sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00101 para /u01/oradata/BD01/tbsindx_sgm_2010sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00103 para /u01/oradata/BD01/tbsindx_controle01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00105 para /u01/oradata/BD01/tbsindx_mbr_l02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00108 para /u01/oradata/BD01/tbsindx_mbr_l05_01.dbf&lt;br /&gt;restaurando arquivo de dados 00111 para /u01/oradata/BD01/tbsindx_mbr_l08_01.dbf&lt;br /&gt;restaurando arquivo de dados 00114 para /u01/oradata/BD01/tbsindx_mbr_l11_01.dbf&lt;br /&gt;restaurando arquivo de dados 00116 para /u01/oradata/BD01/tbsindx_mbr01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00120 para /u01/oradata/BD01/tbsindx_line01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00121 para /u01/oradata/BD01/tbsindx_gtamal01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00126 para /u01/oradata/BD01/tbsindx_hist_2006s2_01.dbf&lt;br /&gt;restaurando arquivo de dados 00130 para /u01/oradata/BD01/tbsindx_ext2009s2_01.dbf&lt;br /&gt;restaurando arquivo de dados 00133 para /u01/oradata/BD01/tbsindx_zxs_01_001.dbf&lt;br /&gt;restaurando arquivo de dados 00134 para /u01/oradata/BD01/tbsindx_resource_h01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00137 para /u01/oradata/BD01/tbsindx_resource_h04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00140 para /u01/oradata/BD01/tbsindx_resource_h07_01.dbf&lt;br /&gt;restaurando arquivo de dados 00143 para /u01/oradata/BD01/tbs_zxs_01_001.dbf&lt;br /&gt;restaurando arquivo de dados 00147 para /u01/oradata/BD01/ts_hs_mbr_i01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbcdw9j_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbcdw9j_.bkp tag=LEVEL-0_SEMANAL&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:01:26&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;restaurando arquivo de dados 00004 para /u01/oradata/BD01/users01.dbf&lt;br /&gt;restaurando arquivo de dados 00005 para /u01/oradata/BD01/tbsdata_admhist01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00007 para /u01/oradata/BD01/tbsdata_cust_l0101_01.dbf&lt;br /&gt;restaurando arquivo de dados 00008 para /u01/oradata/BD01/tbsdata_cust_l0201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00012 para /u01/oradata/BD01/tbsdata_cust01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00014 para /u01/oradata/BD01/tbsdata_cust03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00015 para /u01/oradata/BD01/tbsdata_cust04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00017 para /u01/oradata/BD01/tbsdata_sgm_collecting01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00021 para /u01/oradata/BD01/tbsdata_sgm_ext01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00024 para /u01/oradata/BD01/tbsdata_sgm_01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00025 para /u01/oradata/BD01/tbsdata_sgm_2006sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00028 para /u01/oradata/BD01/tbsdata_sgm_2007sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00031 para /u01/oradata/BD01/tbsdata_sgm_2009sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00035 para /u01/oradata/BD01/tbsdata_mbr_l01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00038 para /u01/oradata/BD01/tbsdata_mbr_l04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00046 para /u01/oradata/BD01/tbsdata_mbr_l12_01.dbf&lt;br /&gt;restaurando arquivo de dados 00048 para /u01/oradata/BD01/tbsdata_mbr02.dbf&lt;br /&gt;restaurando arquivo de dados 00054 para /u01/oradata/BD01/tbsdata_inf2010s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00058 para /u01/oradata/BD01/tbsdata_hist_2007s1_01.dbf&lt;br /&gt;restaurando arquivo de dados 00064 para /u01/oradata/BD01/tbsdata_ext2010s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00065 para /u01/oradata/BD01/tbsdata_migracao01.dbf&lt;br /&gt;restaurando arquivo de dados 00069 para /u01/oradata/BD01/tbsdata_resource_h03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00072 para /u01/oradata/BD01/tbsdata_resource_h06_01.dbf&lt;br /&gt;restaurando arquivo de dados 00075 para /u01/oradata/BD01/tbsdata_resource01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00078 para /u01/oradata/BD01/tbsindx_admhist01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00080 para /u01/oradata/BD01/tbsindx_cust01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00081 para /u01/oradata/BD01/tbsindx_cust02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00085 para /u01/oradata/BD01/tbsindx_sgm_collecting01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00087 para /u01/oradata/BD01/tbsindx_sgm_inf01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00089 para /u01/oradata/BD01/tbsindx_sgm_queue01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00093 para /u01/oradata/BD01/tbsindx_sgm_2006sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00096 para /u01/oradata/BD01/tbsindx_sgm_2008sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00099 para /u01/oradata/BD01/tbsindx_sgm_2009sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00102 para /u01/oradata/BD01/tbsindx_brtmigtar_01.dbf&lt;br /&gt;restaurando arquivo de dados 00106 para /u01/oradata/BD01/tbsindx_mbr_l03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00109 para /u01/oradata/BD01/tbsindx_mbr_l06_01.dbf&lt;br /&gt;restaurando arquivo de dados 00112 para /u01/oradata/BD01/tbsindx_mbr_l09_01.dbf&lt;br /&gt;restaurando arquivo de dados 00115 para /u01/oradata/BD01/tbsindx_mbr_l12_01.dbf&lt;br /&gt;restaurando arquivo de dados 00122 para /u01/oradata/BD01/tbsindx_inf2009s1_01&lt;br /&gt;restaurando arquivo de dados 00123 para /u01/oradata/BD01/tbsindx_inf2009s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00124 para /u01/oradata/BD01/tbsindx_inf2010s101_01.dbf&lt;br /&gt;restaurando arquivo de dados 00125 para /u01/oradata/BD01/tbsindx_inf2010s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00127 para /u01/oradata/BD01/tbsindx_hist_2007s1_01.dbf&lt;br /&gt;restaurando arquivo de dados 00128 para /u01/oradata/BD01/tbsindx_int_line0101.dbf&lt;br /&gt;restaurando arquivo de dados 00131 para /u01/oradata/BD01/tbsindx_ext2010s1_01.dbf&lt;br /&gt;restaurando arquivo de dados 00135 para /u01/oradata/BD01/tbsindx_resource_h02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00138 para /u01/oradata/BD01/tbsindx_resource_h05_01.dbf&lt;br /&gt;restaurando arquivo de dados 00141 para /u01/oradata/BD01/tbsindx_resource_h08_01.dbf&lt;br /&gt;restaurando arquivo de dados 00144 para /u01/oradata/BD01/tools01.dbf&lt;br /&gt;restaurando arquivo de dados 00148 para /u01/oradata/BD01/ts_hs_mbr_l01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbcg9rm_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbcg9rm_.bkp tag=LEVEL-0_SEMANAL&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:01:36&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;restaurando arquivo de dados 00001 para /u01/oradata/BD01/system01.dbf&lt;br /&gt;restaurando arquivo de dados 00003 para /u01/oradata/BD01/sysaux01.dbf&lt;br /&gt;restaurando arquivo de dados 00006 para /u01/oradata/BD01/tbsdata_adminf01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00009 para /u01/oradata/BD01/tbsdata_cust_l0301_01.dbf&lt;br /&gt;restaurando arquivo de dados 00011 para /u01/oradata/BD01/tbsdata_cust_l0501_01.dbf&lt;br /&gt;restaurando arquivo de dados 00013 para /u01/oradata/BD01/tbsdata_cust02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00018 para /u01/oradata/BD01/tbsdata_sgm_geral01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00022 para /u01/oradata/BD01/tbsdata_sgm_queue01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00026 para /u01/oradata/BD01/tbsdata_sgm_2006sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00029 para /u01/oradata/BD01/tbsdata_sgm_2008sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00032 para /u01/oradata/BD01/tbsdata_sgm_2009sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00036 para /u01/oradata/BD01/tbsdata_mbr_l02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00039 para /u01/oradata/BD01/tbsdata_mbr_l05_01.dbf&lt;br /&gt;restaurando arquivo de dados 00040 para /u01/oradata/BD01/tbsdata_mbr_l06_01.dbf&lt;br /&gt;restaurando arquivo de dados 00042 para /u01/oradata/BD01/tbsdata_mbr_l08_01.dbf&lt;br /&gt;restaurando arquivo de dados 00047 para /u01/oradata/BD01/tbsdata_mbr01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00049 para /u01/oradata/BD01/tbsdata_mbr03.dbf&lt;br /&gt;restaurando arquivo de dados 00050 para /u01/oradata/BD01/tbsdata_adm01.dbf&lt;br /&gt;restaurando arquivo de dados 00051 para /u01/oradata/BD01/tbsdata_line01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00052 para /u01/oradata/BD01/tbsdata_inf2009s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00055 para /u01/oradata/BD01/tbsdata_inf2011S1_01.dbf&lt;br /&gt;restaurando arquivo de dados 00059 para /u01/oradata/BD01/tbsdata_int_line0101.dbf&lt;br /&gt;restaurando arquivo de dados 00062 para /u01/oradata/BD01/tbsdata_ext2009s201_01.dbf&lt;br /&gt;restaurando arquivo de dados 00063 para /u01/oradata/BD01/tbsdata_ext2010s101_01.dbf&lt;br /&gt;restaurando arquivo de dados 00066 para /u01/oradata/BD01/tbsdata_zxs_01_001.dbf&lt;br /&gt;restaurando arquivo de dados 00067 para /u01/oradata/BD01/tbsdata_resource_h01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00070 para /u01/oradata/BD01/tbsdata_resource_h04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00073 para /u01/oradata/BD01/tbsdata_resource_h07_01.dbf&lt;br /&gt;restaurando arquivo de dados 00076 para /u01/oradata/BD01/tbsdata_staging01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00079 para /u01/oradata/BD01/tbsindx_adminf01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00083 para /u01/oradata/BD01/tbsindx_cust04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00086 para /u01/oradata/BD01/tbsindx_sgm_hist01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00090 para /u01/oradata/BD01/tbsindx_sgm_rating01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00094 para /u01/oradata/BD01/tbsindx_sgm_2007sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00097 para /u01/oradata/BD01/tbsindx_sgm_2008sem02_01.dbf&lt;br /&gt;restaurando arquivo de dados 00100 para /u01/oradata/BD01/tbsindx_sgm_2010sem01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00104 para /u01/oradata/BD01/tbsindx_mbr_l01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00107 para /u01/oradata/BD01/tbsindx_mbr_l04_01.dbf&lt;br /&gt;restaurando arquivo de dados 00110 para /u01/oradata/BD01/tbsindx_mbr_l07_01.dbf&lt;br /&gt;restaurando arquivo de dados 00113 para /u01/oradata/BD01/tbsindx_mbr_l10_01.dbf&lt;br /&gt;restaurando arquivo de dados 00117 para /u01/oradata/BD01/tbsindx_mbr02.dbf&lt;br /&gt;restaurando arquivo de dados 00118 para /u01/oradata/BD01/tbsindx_mbr03.dbf&lt;br /&gt;restaurando arquivo de dados 00119 para /u01/oradata/BD01/tbsindx_adm01.dbf&lt;br /&gt;restaurando arquivo de dados 00129 para /u01/oradata/BD01/tbsindx_exton01.dbf&lt;br /&gt;restaurando arquivo de dados 00132 para /u01/oradata/BD01/tbsindx_ext2010s2_01.dbf&lt;br /&gt;restaurando arquivo de dados 00136 para /u01/oradata/BD01/tbsindx_resource_h03_01.dbf&lt;br /&gt;restaurando arquivo de dados 00139 para /u01/oradata/BD01/tbsindx_resource_h06_01.dbf&lt;br /&gt;restaurando arquivo de dados 00142 para /u01/oradata/BD01/tbsindx_resource01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00145 para /u01/oradata/BD01/tsdepm01_01.dbf&lt;br /&gt;restaurando arquivo de dados 00146 para /u01/oradata/BD01/ts_hs_mbr_d01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbchf2p_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_29/o1_mf_nnnd0_LEVEL-0_SEMANAL_7gbchf2p_.bkp tag=LEVEL-0_SEMANAL&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:01:55&lt;br /&gt;Finalizado restore em 01/01/2012&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a restauração dos datafiles, poderemos iniciar a recuperação dos mesmos. Vale a pena salientar que os arquivos de redo log online foram perdidos, então será praticamente impossível realizar uma recuperação completa do banco de dados até o momento antes da falha. Portanto, veremos até onde poderemos prosseguir com a recuperação dos arquivos de dados (incomplete recovery).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; recover database;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: scroll; height:400px; width: 100%"&gt;&lt;code&gt;Iniciando recover em 01/01/2012&lt;br /&gt;utilizando o canal ORA_DISK_1&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;destino para restauração do arquivo de dados 00002: /u01/oradata/BD01/undotbs01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00010: /u01/oradata/BD01/tbsdata_cust_l0401_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00016: /u01/oradata/BD01/tbsdata_admqueue01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00019: /u01/oradata/BD01/tbsdata_sgm_hist01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00020: /u01/oradata/BD01/tbsdata_sgm_inf01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00023: /u01/oradata/BD01/tbsdata_sgm_rating01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00027: /u01/oradata/BD01/tbsdata_sgm_2007sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00030: /u01/oradata/BD01/tbsdata_sgm_2008sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00033: /u01/oradata/BD01/tbsdata_brtmigtar_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00034: /u01/oradata/BD01/tbsdata_controle01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00037: /u01/oradata/BD01/tbsdata_mbr_l03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00041: /u01/oradata/BD01/tbsdata_mbr_l07_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00043: /u01/oradata/BD01/tbsdata_mbr_l09_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00044: /u01/oradata/BD01/tbsdata_mbr_l10_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00045: /u01/oradata/BD01/tbsdata_mbr_l11_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00053: /u01/oradata/BD01/tbsdata_inf2010s101_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00056: /u01/oradata/BD01/tbsdata_inf2011S2_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00057: /u01/oradata/BD01/tbsdata_hist_2006s2_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00060: /u01/oradata/BD01/tbsdata_tam01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00061: /u01/oradata/BD01/tbsdata_exton01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00068: /u01/oradata/BD01/tbsdata_resource_h02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00071: /u01/oradata/BD01/tbsdata_resource_h05_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00074: /u01/oradata/BD01/tbsdata_resource_h08_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00077: /u01/oradata/BD01/tbsdata_user0101.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00082: /u01/oradata/BD01/tbsindx_cust03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00084: /u01/oradata/BD01/tbsindx_admqueue01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00088: /u01/oradata/BD01/tbsindx_sgm_ext01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00091: /u01/oradata/BD01/tbsindx_sgm_01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00092: /u01/oradata/BD01/tbsindx_sgm_2006sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00095: /u01/oradata/BD01/tbsindx_sgm_2007sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00098: /u01/oradata/BD01/tbsindx_sgm_2009sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00101: /u01/oradata/BD01/tbsindx_sgm_2010sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00103: /u01/oradata/BD01/tbsindx_controle01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00105: /u01/oradata/BD01/tbsindx_mbr_l02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00108: /u01/oradata/BD01/tbsindx_mbr_l05_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00111: /u01/oradata/BD01/tbsindx_mbr_l08_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00114: /u01/oradata/BD01/tbsindx_mbr_l11_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00116: /u01/oradata/BD01/tbsindx_mbr01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00120: /u01/oradata/BD01/tbsindx_line01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00121: /u01/oradata/BD01/tbsindx_gtamal01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00126: /u01/oradata/BD01/tbsindx_hist_2006s2_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00130: /u01/oradata/BD01/tbsindx_ext2009s2_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00133: /u01/oradata/BD01/tbsindx_zxs_01_001.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00134: /u01/oradata/BD01/tbsindx_resource_h01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00137: /u01/oradata/BD01/tbsindx_resource_h04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00140: /u01/oradata/BD01/tbsindx_resource_h07_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00143: /u01/oradata/BD01/tbs_zxs_01_001.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00147: /u01/oradata/BD01/ts_hs_mbr_i01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfpxr5m_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfpxr5m_.bkp tag=LEVEL-1_DIARIO&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:07&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;destino para restauração do arquivo de dados 00004: /u01/oradata/BD01/users01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00005: /u01/oradata/BD01/tbsdata_admhist01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00007: /u01/oradata/BD01/tbsdata_cust_l0101_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00008: /u01/oradata/BD01/tbsdata_cust_l0201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00012: /u01/oradata/BD01/tbsdata_cust01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00014: /u01/oradata/BD01/tbsdata_cust03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00015: /u01/oradata/BD01/tbsdata_cust04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00017: /u01/oradata/BD01/tbsdata_sgm_collecting01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00021: /u01/oradata/BD01/tbsdata_sgm_ext01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00024: /u01/oradata/BD01/tbsdata_sgm_01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00025: /u01/oradata/BD01/tbsdata_sgm_2006sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00028: /u01/oradata/BD01/tbsdata_sgm_2007sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00031: /u01/oradata/BD01/tbsdata_sgm_2009sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00035: /u01/oradata/BD01/tbsdata_mbr_l01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00038: /u01/oradata/BD01/tbsdata_mbr_l04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00046: /u01/oradata/BD01/tbsdata_mbr_l12_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00048: /u01/oradata/BD01/tbsdata_mbr02.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00054: /u01/oradata/BD01/tbsdata_inf2010s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00058: /u01/oradata/BD01/tbsdata_hist_2007s1_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00064: /u01/oradata/BD01/tbsdata_ext2010s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00065: /u01/oradata/BD01/tbsdata_migracao01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00069: /u01/oradata/BD01/tbsdata_resource_h03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00072: /u01/oradata/BD01/tbsdata_resource_h06_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00075: /u01/oradata/BD01/tbsdata_resource01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00078: /u01/oradata/BD01/tbsindx_admhist01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00080: /u01/oradata/BD01/tbsindx_cust01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00081: /u01/oradata/BD01/tbsindx_cust02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00085: /u01/oradata/BD01/tbsindx_sgm_collecting01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00087: /u01/oradata/BD01/tbsindx_sgm_inf01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00089: /u01/oradata/BD01/tbsindx_sgm_queue01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00093: /u01/oradata/BD01/tbsindx_sgm_2006sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00096: /u01/oradata/BD01/tbsindx_sgm_2008sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00099: /u01/oradata/BD01/tbsindx_sgm_2009sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00102: /u01/oradata/BD01/tbsindx_brtmigtar_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00106: /u01/oradata/BD01/tbsindx_mbr_l03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00109: /u01/oradata/BD01/tbsindx_mbr_l06_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00112: /u01/oradata/BD01/tbsindx_mbr_l09_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00115: /u01/oradata/BD01/tbsindx_mbr_l12_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00122: /u01/oradata/BD01/tbsindx_inf2009s1_01&lt;br /&gt;destino para restauração do arquivo de dados 00123: /u01/oradata/BD01/tbsindx_inf2009s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00124: /u01/oradata/BD01/tbsindx_inf2010s101_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00125: /u01/oradata/BD01/tbsindx_inf2010s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00127: /u01/oradata/BD01/tbsindx_hist_2007s1_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00128: /u01/oradata/BD01/tbsindx_int_line0101.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00131: /u01/oradata/BD01/tbsindx_ext2010s1_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00135: /u01/oradata/BD01/tbsindx_resource_h02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00138: /u01/oradata/BD01/tbsindx_resource_h05_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00141: /u01/oradata/BD01/tbsindx_resource_h08_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00144: /u01/oradata/BD01/tools01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00148: /u01/oradata/BD01/ts_hs_mbr_l01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfpz5lh_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfpz5lh_.bkp tag=LEVEL-1_DIARIO&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:03&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de conjunto de backups de arquivo de dados incremental&lt;br /&gt;canal ORA_DISK_1: especificando arquivo(s) de dados para restauração a partir do conjunto de backups&lt;br /&gt;destino para restauração do arquivo de dados 00001: /u01/oradata/BD01/system01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00003: /u01/oradata/BD01/sysaux01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00006: /u01/oradata/BD01/tbsdata_adminf01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00009: /u01/oradata/BD01/tbsdata_cust_l0301_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00011: /u01/oradata/BD01/tbsdata_cust_l0501_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00013: /u01/oradata/BD01/tbsdata_cust02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00018: /u01/oradata/BD01/tbsdata_sgm_geral01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00022: /u01/oradata/BD01/tbsdata_sgm_queue01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00026: /u01/oradata/BD01/tbsdata_sgm_2006sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00029: /u01/oradata/BD01/tbsdata_sgm_2008sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00032: /u01/oradata/BD01/tbsdata_sgm_2009sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00036: /u01/oradata/BD01/tbsdata_mbr_l02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00039: /u01/oradata/BD01/tbsdata_mbr_l05_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00040: /u01/oradata/BD01/tbsdata_mbr_l06_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00042: /u01/oradata/BD01/tbsdata_mbr_l08_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00047: /u01/oradata/BD01/tbsdata_mbr01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00049: /u01/oradata/BD01/tbsdata_mbr03.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00050: /u01/oradata/BD01/tbsdata_adm01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00051: /u01/oradata/BD01/tbsdata_line01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00052: /u01/oradata/BD01/tbsdata_inf2009s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00055: /u01/oradata/BD01/tbsdata_inf2011S1_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00059: /u01/oradata/BD01/tbsdata_int_line0101.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00062: /u01/oradata/BD01/tbsdata_ext2009s201_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00063: /u01/oradata/BD01/tbsdata_ext2010s101_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00066: /u01/oradata/BD01/tbsdata_zxs_01_001.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00067: /u01/oradata/BD01/tbsdata_resource_h01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00070: /u01/oradata/BD01/tbsdata_resource_h04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00073: /u01/oradata/BD01/tbsdata_resource_h07_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00076: /u01/oradata/BD01/tbsdata_staging01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00079: /u01/oradata/BD01/tbsindx_adminf01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00083: /u01/oradata/BD01/tbsindx_cust04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00086: /u01/oradata/BD01/tbsindx_sgm_hist01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00090: /u01/oradata/BD01/tbsindx_sgm_rating01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00094: /u01/oradata/BD01/tbsindx_sgm_2007sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00097: /u01/oradata/BD01/tbsindx_sgm_2008sem02_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00100: /u01/oradata/BD01/tbsindx_sgm_2010sem01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00104: /u01/oradata/BD01/tbsindx_mbr_l01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00107: /u01/oradata/BD01/tbsindx_mbr_l04_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00110: /u01/oradata/BD01/tbsindx_mbr_l07_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00113: /u01/oradata/BD01/tbsindx_mbr_l10_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00117: /u01/oradata/BD01/tbsindx_mbr02.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00118: /u01/oradata/BD01/tbsindx_mbr03.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00119: /u01/oradata/BD01/tbsindx_adm01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00129: /u01/oradata/BD01/tbsindx_exton01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00132: /u01/oradata/BD01/tbsindx_ext2010s2_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00136: /u01/oradata/BD01/tbsindx_resource_h03_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00139: /u01/oradata/BD01/tbsindx_resource_h06_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00142: /u01/oradata/BD01/tbsindx_resource01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00145: /u01/oradata/BD01/tsdepm01_01.dbf&lt;br /&gt;destino para restauração do arquivo de dados 00146: /u01/oradata/BD01/ts_hs_mbr_d01.dbf&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfq1vd1_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_nnnd1_LEVEL-1_DIARIO_7gfq1vd1_.bkp tag=LEVEL-1_DIARIO&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:07&lt;br /&gt;&lt;br /&gt;iniciar recuperação de mídia&lt;br /&gt;&lt;br /&gt;canal ORA_DISK_1: iniciando restauração de log de arquivamento para destino default&lt;br /&gt;canal ORA_DISK_1: restaurar log de arquivamento&lt;br /&gt;thread do log de arquivamento=1 seqüência=57&lt;br /&gt;canal ORA_DISK_1: lendo da parte de backup /u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_annnn_ARCHIVES_DIARIO_7gfq3j8h_.bkp&lt;br /&gt;canal ORA_DISK_1: restaurada a parte de backup 1&lt;br /&gt;handle de componente=/u01/flash_recovery_area/BD01/backupset/2011_12_31/o1_mf_annnn_ARCHIVES_DIARIO_7gfq3j8h_.bkp tag=ARCHIVES_DIARIO&lt;br /&gt;canal ORA_DISK_1: restauração concluída, tempo decorrido: 00:00:01&lt;br /&gt;nome do arquivo de log de arquivamento=/u01/flash_recovery_area/BD01/archivelog/2011_12_17/o1_mf_1_57_7gsmg61g_.arc thread=1 seqüência=57&lt;br /&gt;canal default: deletando log(s) de arquivamento&lt;br /&gt;nome do arquivo de log de arquivamento=/u01/flash_recovery_area/BD01/archivelog/2011_12_17/o1_mf_1_57_7gsmg61g_.arc id reg.=48 marcação=770138022&lt;br /&gt;não foi possível encontrar log de arquivamento&lt;br /&gt;thread do log de arquivamento=1 seqüência=58&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;br /&gt;RMAN-00571: ===========================================================&lt;br /&gt;RMAN-03002: falha do comando recover em 01/01/2012 15:13:48&lt;br /&gt;RMAN-06054: recuperação de mídia solicitando log desconhecido: thread 1 seq 58 scn mais baixo 7836163730214&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Na saída do comando &lt;span style="color: rgb(255, 0, 0);"&gt;RECOVER DATABASE&lt;/span&gt;, podemos verificar que o mesmo foi finalizado com o erro abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;não foi possível encontrar log de arquivamento&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;thread do log de arquivamento=1 seqüência=58&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;RMAN-00571: ===========================================================&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;RMAN-00571: ===========================================================&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;RMAN-03002: falha do comando recover em 01/01/2012 15:13:48&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;RMAN-06054: recuperação de mídia solicitando log desconhecido:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;thread 1 seq 58 scn mais baixo 7836163730214&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Portanto, deveremos recuperar o banco de dados &lt;span style="color: rgb(255, 0, 0);"&gt;ignorando a seqüência de redo log 58&lt;/span&gt; conforme demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; recover database until sequence 58;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando recover em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal alocado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;canal ORA_DISK_1: sid=156 devtype=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;iniciar recuperação de mídia&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;recuperação da mídia concluída, tempo decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Finalizado recover em 01/01/2012&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Após a recuperação incompleta do banco de dados &lt;span style="color: rgb(255, 0, 0);"&gt;até a sequência 58&lt;/span&gt;, poderemos abrir o banco dados com a opção &lt;span style="color: rgb(255, 0, 0);"&gt;RESETLOGS&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; alter database open resetlogs;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo de recuperação&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;banco de dados aberto&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; exit&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Recovery Manager completo.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-3888256682243944261?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/3888256682243944261/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=3888256682243944261' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/3888256682243944261'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/3888256682243944261'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2012/01/restaurando-e-recuperando-um-banco-de.html' title='Restaurando e recuperando um banco de dados em outra máquina com o RMAN'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-lwmrCaU7MCQ/TwCjJAW88VI/AAAAAAAAAxM/ms2-ThXRrqM/s72-c/hdcrashed.jpg' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-5950777361732175399</id><published>2011-12-04T20:16:00.008-02:00</published><updated>2011-12-04T21:17:50.112-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='table partition'/><category scheme='http://www.blogger.com/atom/ns#' term='partições'/><title type='text'>Um pouco sobre índices particionados no Oracle ...</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Em artigos anteriores como os de &lt;a href="http://eduardolegatti.blogspot.com/2011/02/executando-operacoes-de-manutencao-em.html"&gt;Fevereiro/2011&lt;/a&gt;, &lt;a href="http://eduardolegatti.blogspot.com/2011/04/particionando-uma-tabela-on-line-com-o.html"&gt;Abril/2011&lt;/a&gt; e &lt;a href="http://eduardolegatti.blogspot.com/2011/06/interval-partitioning-abordando-um.html"&gt;Junho/2011&lt;/a&gt; apresentei uma visão geral sobre tabelas particionadas. A idéia deste artigo é demonstrar os tipos de índices que podemos criar sobre as tabelas particionadas, como os índices particionados globais e locais, além dos índices globais não-particionados.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, de forma geral, o objetivo de um índice é permitir acesso mais rápido às linhas de uma tabela. Um índice armazena o valor da coluna ou colunas que estão sendo indexadas, junto com o &lt;a href="http://eduardolegatti.blogspot.com/2007/12/removendo-registros-duplicados-de-uma.html"&gt;ROWID&lt;/a&gt; da linha que contém o valor indexado. A figura abaixo representa um índice comum ou regular (Btree) criado sobre uma tabela não particionada.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://1.bp.blogspot.com/-58kWxp1_RIw/Ttv3G9OAa1I/AAAAAAAAAvo/aHC9lW2rtWo/s1600/indice_regular.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer;" src="http://1.bp.blogspot.com/-58kWxp1_RIw/Ttv3G9OAa1I/AAAAAAAAAvo/aHC9lW2rtWo/s800/indice_regular.png" alt="" id="BLOGGER_PHOTO_ID_5682407053742598994" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Em se tratando de tabelas particionadas, podemos criar índices locais e globais, ambos particionados e também poderemos criar índices globais não-particionados. Para este artigo criarei a tabela T1 particionada por faixa (&lt;span style="color: rgb(51, 51, 255);"&gt;RANGE&lt;/span&gt;) como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    (id  number,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     cod number)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     &lt;span style="color: rgb(51, 51, 255); font-weight: bold;"&gt;partition by range(id)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5      (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pdezenas&lt;/span&gt;  values less than (100)  tablespace tbs_dezenas,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pcentenas&lt;/span&gt; values less than (1000) tablespace tbs_centenas,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pmilhares_1000&lt;/span&gt; values less than (2000)  tablespace tbs_milhares,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pmilhares_2000&lt;/span&gt; values less than (3000)  tablespace tbs_milhares,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pmilhares_3000&lt;/span&gt; values less than (4000)  tablespace tbs_milhares,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 11       partition &lt;span style="color: rgb(102, 102, 102); font-weight: bold;"&gt;pmilhares_4000&lt;/span&gt; values less than (5000)  tablespace tbs_milhares,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 12       partition &lt;span style="color: rgb(102, 102, 102);"&gt;&lt;span style="font-weight: bold;"&gt;pmilhares_n&lt;/span&gt; &lt;span style="color: rgb(0, 0, 0);"&gt;values&lt;/span&gt;&lt;/span&gt; less than (maxvalue) tablespace tbs_milhares&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 13    );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, os índices particionados locais refletem a estrutura da tabela particionada e são particionados de forma igual a tabela particionada subjacente, &lt;span style="font-weight: bold;"&gt;ou seja, eles são particionados nas mesmas colunas que a tabela e, portanto, tem os mesmos números de partições e os mesmos limites (&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;HIGH_VALUE&lt;/span&gt;&lt;span style="font-weight: bold;"&gt;) que a tabela particionada&lt;/span&gt;. Vale a pena salientar que as partições de índices recebem o mesmo nome das partições de tabela. Um dos benefícios dos índice locais é a sua afinidade com a tabela subjacente, pois quando uma nova partição é criada, a partição de índice correspondente é criada automaticamente. Da mesma maneira, ao dropar uma partição da tabela, a partição de índice também é dropada automaticamente sem invalidar quaisquer outras partições de índice, como seria no caso de um índice global. A figura abaixo representa um índice particionado localmente.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-_UEv4SFrlzo/Ttv3adCPywI/AAAAAAAAAv0/HH9kKto1DN8/s1600/indice_local_particionado.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer;" src="http://2.bp.blogspot.com/-_UEv4SFrlzo/Ttv3adCPywI/AAAAAAAAAv0/HH9kKto1DN8/s800/indice_local_particionado.png" alt="" id="BLOGGER_PHOTO_ID_5682407388700723970" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create index idx_t1_local on t1 (id) &lt;span style="color: rgb(0, 153, 0);"&gt;local&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select index_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         tablespace_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_ind_partitions;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INDEX_NAME         PARTITION_NAME           HIGH_VALUE TABLESPACE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------ ------------------------ ---------- ------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PDEZENAS                 &lt;span style="color: rgb(0, 153, 0);"&gt;100&lt;/span&gt;        TBS_DEZENAS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PCENTENAS                &lt;span style="color: rgb(0, 153, 0);"&gt;1000&lt;/span&gt;       TBS_CENTENAS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PMILHARES_1000           &lt;span style="color: rgb(0, 153, 0);"&gt;2000&lt;/span&gt;       TBS_MILHARES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PMILHARES_2000           &lt;span style="color: rgb(0, 153, 0);"&gt;3000&lt;/span&gt;       TBS_MILHARES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PMILHARES_3000           &lt;span style="color: rgb(0, 153, 0);"&gt;4000&lt;/span&gt;       TBS_MILHARES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PMILHARES_4000           &lt;span style="color: rgb(0, 153, 0);"&gt;5000&lt;/span&gt;       TBS_MILHARES&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_LOCAL       PMILHARES_N              &lt;span style="color: rgb(0, 153, 0);"&gt;MAXVALUE&lt;/span&gt;   TBS_MILHARES&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos também criar índices únicos locais, mas para isso a coluna chave de partição precisa obrigatoriamente fazer parte do índice, diferentemente dos índices globais. Se tentarmos criar um índice único local sem a coluna chave da partição, então o erro &lt;span style="color: rgb(255, 0, 0);"&gt;ORA-14039&lt;/span&gt; será emitido:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create unique index idx_t1_local on t1 (cod) &lt;span style="color: rgb(0, 153, 0);"&gt;local&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;create unique index idx_t1_local on t1 (cod) local&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;*&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ERRO na linha 1:&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-14039: colunas particionadas devem formar um subconjunto de&lt;br /&gt;colunas de chaves&lt;/span&gt; &lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;de um índice UNIQUE&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Abaixo podemos ver que o índice será criado somente se a coluna chave da partição estiver presente:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create unique index idx_t1_local on t1 (id,cod) &lt;span style="color: rgb(0, 153, 0);"&gt;local&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Já os índices particionados globais não precisam ser necessariamente particionados da mesma maneira que a tabela subjacente. A figura abaixo mostra claramente que o número de partições na tabela pode ou não, ser igual ao número de partições do índice.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-bbEFNvWc-08/Ttv7KwKNzTI/AAAAAAAAAwA/RBzxHlMbRdU/s1600/indice_global_particionado.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer;" src="http://2.bp.blogspot.com/-bbEFNvWc-08/Ttv7KwKNzTI/AAAAAAAAAwA/RBzxHlMbRdU/s800/indice_global_particionado.png" alt="" id="BLOGGER_PHOTO_ID_5682411517003025714" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Dependendo das operações DDL executadas nas partições da tabela (&lt;span style="color: rgb(51, 51, 255);"&gt;ADD, DROP, MOVE, TRUNCATE, SPLIT, MERGE, EXCHANGE ...&lt;/span&gt;) um índice global poderá ficar marcado como inutilizável (unusable). Portanto, utilizar a cláusula &lt;span style="color: rgb(0, 153, 0);"&gt;UPDATE GLOBAL INDEXES&lt;/span&gt; é uma boa prática:&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; ALTER TABLE ... DROP PARTITION P1 &lt;span style="color: rgb(0, 153, 0);"&gt;UPDATE GLOBAL INDEXES&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; TRUNCATE TABLE ... &lt;span style="color: rgb(0, 153, 0);"&gt;UPDATE GLOBAL INDEXES&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; ALTER TABLE ... DROP PARTITION P1 &lt;span style="color: rgb(0, 153, 0);"&gt;UPDATE GLOBAL INDEXES&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;É importante frisar que no caso de índices globais, criar uma partição com o limite (&lt;span style="color: rgb(51, 51, 255);"&gt;MAXVALUE&lt;/span&gt;) é obrigatória, caso contrário o erro &lt;span style="color: rgb(255, 0, 0);"&gt;ORA-14021&lt;/span&gt; será emitido:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create index idx_t1_global on t1 (id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3  &lt;span style="color: rgb(0, 153, 0);"&gt;global partition by range (id)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4  (partition idxp_1500 values less than(1500),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5   partition idxp_2900 values less than(2900),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   partition idxp_4600 values less than(4600),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   partition idxp_5000 values less than(5000));&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt; partition idxp_5000 values less than(5000))&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;*&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ERRO na linha 6:&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-14021: MAXVALUE deve ser especificado para todas as colunas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create index idx_t1_global on t1 (id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3  &lt;span style="color: rgb(0, 153, 0);"&gt;global partition by range (id)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4  (partition idxp_1500 values less than(1500),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5   partition idxp_2900 values less than(2900),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   partition idxp_4600 values less than(4600),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   partition idxp_5000 values less than(5000),&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   partition idxp_n values less than(&lt;span style="color: rgb(51, 51, 255);"&gt;maxvalue&lt;/span&gt;));&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select index_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         tablespace_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_ind_partitions;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INDEX_NAME         PARTITION_NAME           HIGH_VALUE TABLESPACE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------ ------------------------ ----------- -----------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL      &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP_1500&lt;/span&gt;                &lt;span style="color: rgb(0, 153, 0);"&gt;1500&lt;/span&gt;       USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL      &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP_2900&lt;/span&gt;                &lt;span style="color: rgb(0, 153, 0);"&gt;2900&lt;/span&gt;       USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL      &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP_4600&lt;/span&gt;                &lt;span style="color: rgb(0, 153, 0);"&gt;4600&lt;/span&gt;       USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL      &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP_5000&lt;/span&gt;                &lt;span style="color: rgb(0, 153, 0);"&gt;5000&lt;/span&gt;       USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL      &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP_N&lt;/span&gt;                   &lt;span style="color: rgb(0, 153, 0);"&gt;MAXVALUE&lt;/span&gt;   USERS&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;A partir do Oracle 10g podemos também criar índices globais particionados por &lt;span style="font-weight: bold;"&gt;HASH&lt;/span&gt; como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create index idx_t1_global_hash on t1 (id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3  &lt;span style="color: rgb(0, 153, 0);"&gt;global partition by hash (id)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4  (partition idxp1,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5   partition idxp2,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   partition idxp3,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   partition idxp4,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   partition idxp5);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select index_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         tablespace_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_ind_partitions;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INDEX_NAME         PARTITION_NAME           HIGH_VALUE TABLESPACE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------ ------------------------ ---------- ------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL_HASH &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP1&lt;/span&gt;                               USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL_HASH &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP2&lt;/span&gt;                               USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL_HASH &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP3&lt;/span&gt;                               USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL_HASH &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP4&lt;/span&gt;                               USERS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_GLOBAL_HASH &lt;span style="color: rgb(0, 153, 0);"&gt;IDXP5&lt;/span&gt;                               USERS&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos notar que os índices globais não-particionados são exatamente iguais aos índices regulares criados em uma tabela não particionada e, portanto, a sintaxe para a criação do índice é a mesma. A figura abaixo mostra o relacionamento entre um índice global não-particionado e uma tabela particionada:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-EQCShPRSE0I/Ttv7mqWkKxI/AAAAAAAAAwY/sgdkMVkR4ko/s1600/indice_global_naoparticionado.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer;" src="http://4.bp.blogspot.com/-EQCShPRSE0I/Ttv7mqWkKxI/AAAAAAAAAwY/sgdkMVkR4ko/s800/indice_global_naoparticionado.png" alt="" id="BLOGGER_PHOTO_ID_5682411996480547602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Por fim, vale a pena salientar que podemos criar também índices de bitmap em tabelas particionadas. A única restrição é que os mesmos só podem ser índice locais.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-5950777361732175399?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/5950777361732175399/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=5950777361732175399' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/5950777361732175399'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/5950777361732175399'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/12/um-pouco-sobre-indices-particionados-no.html' title='Um pouco sobre índices particionados no Oracle ...'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-58kWxp1_RIw/Ttv3G9OAa1I/AAAAAAAAAvo/aHC9lW2rtWo/s72-c/indice_regular.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-3188602776579261025</id><published>2011-11-06T10:47:00.004-02:00</published><updated>2011-11-09T00:25:20.510-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='constraint'/><category scheme='http://www.blogger.com/atom/ns#' term='desenvolvedor'/><category scheme='http://www.blogger.com/atom/ns#' term='primary key'/><category scheme='http://www.blogger.com/atom/ns#' term='ora-00955'/><title type='text'>Desvendando o erro ORA-00955 durante a criação de uma primary key ou unique key</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://4.bp.blogspot.com/-mHHoGCUa5nQ/TraBAIGPkqI/AAAAAAAAAu4/Ah1mN9KCqWU/s1600/image.jpeg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 96px; height: 85px;" src="http://4.bp.blogspot.com/-mHHoGCUa5nQ/TraBAIGPkqI/AAAAAAAAAu4/Ah1mN9KCqWU/s400/image.jpeg" alt="" id="BLOGGER_PHOTO_ID_5671862619893371554" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;É possível que muitos desenvolvedores já tenham passado pelo erro "&lt;span style="color: rgb(255, 0, 0); font-style: italic;"&gt;ORA-00955: nome já está sendo usado por um objeto existente&lt;/span&gt;" durante a criação da primary key ou de uma unique key em uma tabela. Mas, porque isso acontece? &lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, sabemos que toda constraint (primary key ou unique key) ao ser criada, geralmente vem acompanhada também de um índice único criada com o mesmo nome da constraint. Mas, se por acaso algum índice já existente, seja ele único ou não, for útil à constraint, então o mesmo será utilizado por ela. Neste ponto, podemos chegar a conclusão &lt;span style="font-weight: bold;"&gt;de que o índice em si não é utilizado para garantir unicidade&lt;/span&gt; como muitos imaginam. Podemos verificar essa afirmação vendo o exemplo abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table tabela1 (cod number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;-- criando um índice normal (não único&lt;/span&gt;)&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create index &lt;span style="color: rgb(51, 51, 255);"&gt;idx_tabela1_cod&lt;/span&gt; on tabela1(cod);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;-- criando a chave primária&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table tabela1 add constraint &lt;span style="color: rgb(255, 0, 0);"&gt;pk_tabela1&lt;/span&gt; primary key (cod);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,constraint_name,index_name from user_constraints;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME             CONSTRAINT_NAME          INDEX_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;---------------------- ------------------------ ---------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABELA1                &lt;span style="color: rgb(255, 0, 0);"&gt;PK_TABELA1&lt;/span&gt;               &lt;span style="color: rgb(51, 51, 255);"&gt;IDX_TABELA1_COD&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos ver pelo resultado acima que o Oracle não criou um índice chamado &lt;span style="color: rgb(51, 51, 255);"&gt;PK_TABELA1&lt;/span&gt;, em vez disso ele utilizou o índice &lt;span style="color: rgb(51, 51, 255);"&gt;IDX_TABELA1_COD&lt;/span&gt; existente. &lt;span style="font-weight: bold;"&gt;Tudo bem, mas o que aconteceria se dropássemos a chave primária? O índice seria dropado também?&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;A regra é, se o índice foi criado implicitamente durante a criação da constraint, então por padrão o Oracle irá dropar também o índice, a não ser que utilizemos a palavra chave (&lt;span style="color: rgb(0, 153, 0);"&gt;keep index&lt;/span&gt;) para manter o índice ao dropar a constraint&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;Mas, e quanto em relação ao índice que já existia antes da criação da constraint?&lt;/span&gt; Neste caso, &lt;span style="font-weight: bold;"&gt;até a versão do Oracle 9i, o índice seria dropado também&lt;/span&gt;, pois por padrão, no Oracle 9i a cláusula (&lt;span style="color: rgb(0, 153, 0);"&gt;drop index&lt;/span&gt;) está implicitamente atrelada ao comando que dropa a constraint. Vejamos na demonstração abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select * from v$version;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;BANNER&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle9i Enterprise Edition Release &lt;span style="color: rgb(255, 0, 0);"&gt;9.2.0.4.0&lt;/span&gt; - 64bit Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PL/SQL Release 9.2.0.4.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CORE    9.2.0.3.0       Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TNS for Linux: Version 9.2.0.4.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLSRTL Version 9.2.0.4.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1 (id number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create unique index &lt;span style="color: rgb(51, 51, 255);"&gt;pk_t1&lt;/span&gt; on t1 (id);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 add constraint &lt;span style="color: rgb(255, 0, 0);"&gt;pk_t1&lt;/span&gt; primary key (id);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter table t1 drop constraint pk_t1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select constraint_name from user_constraints where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;não há linhas selecionadas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select index_name from user_indexes where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-family:courier new;" &gt;não há linhas selecionadas&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Percebemos que, &lt;span style="font-weight: bold;"&gt;após droparmos a chave primária da tabela T1 no Oracle 9i, o índice que ela utilizava também foi dropado&lt;/span&gt;. O comando que o Oracle interpretou foi "alter table t1 drop constraint pk_t1 &lt;span style="color: rgb(255, 0, 0);"&gt;DROP INDEX&lt;/span&gt;"  Por um lado, isso não é bom, pois não foi a PK quem criou o índice. O índice foi criado para ser utilizado para outros fins (performance, etc...) e o Oracle simplesmente dropa o índice sem nos avisar? &lt;span style="font-weight: bold;"&gt;Deve ser por esse motivo que o padrão mudou à partir do Oracle 10g&lt;/span&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select * from v$version;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;BANNER&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------------------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release &lt;span style="color: rgb(255, 0, 0);"&gt;10.2.0.1.0&lt;/span&gt; - 64bi&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PL/SQL Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CORE    10.2.0.1.0      Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TNS for Linux: Version 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLSRTL Version 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1 (id number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create unique index &lt;span style="color: rgb(51, 51, 255);"&gt;pk_t1&lt;/span&gt; on t1 (id);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 add constraint &lt;span style="color: rgb(255, 0, 0);"&gt;pk_t1&lt;/span&gt; primary key (id);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter table t1 drop constraint pk_t1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select constraint_name from user_constraints where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;não há linhas selecionadas&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select index_name from user_indexes where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INDEX_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;PK_T1&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos ver acima que, &lt;span style="font-weight: bold;"&gt;após droparmos a chave primária da tabela T1 no Oracle 10g R2, o índice que ela utilizava foi mantido&lt;/span&gt;. O comando que o Oracle 10g interpretou foi "alter table t1 drop constraint pk_t1 &lt;span style="color: rgb(51, 51, 255);"&gt;KEEP INDEX&lt;/span&gt;". Se quiséssemos dropar também o índice, teríamos que utilizar a cláusula (&lt;span style="color: rgb(0, 153, 0);"&gt;drop index&lt;/span&gt;). &lt;span style="color: rgb(255, 102, 0);"&gt;Vale a pena salientar que esse comportamento só é válido quando a constraint reutiliza um índice existente. Portanto, um índice que foi criado implicitamente durante a criação de uma constraint, também será dropado junto com a constraint&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após essa longa introdução, irei demonstrar abaixo que uma simples exportação e importação de tabelas, seja via os utilitários exp/imp ou expdp/impdp, poderá ser a causa do erro &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;ORA-00955&lt;/span&gt; durante a criação de uma primary key ou unique key.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Vamos partir do comando abaixo:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1 (id number constraint pk_t1 primary key);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, já sabemos que se droparmos a chave primária da tabela T1, o índice que foi implicitamente criado também será dropado. &lt;span style="font-weight: bold;"&gt;Mas, o que acontece se exportamos essa tabela e a importarmos novamente no banco de dados&lt;/span&gt;? Para realização dos testes irei utilizar o Oracle 11g R2.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;exp scott/tiger file=t1.dmp tables=t1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Export: Release 11.2.0.1.0 - Production on Dom Nov 6 10:01:39 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Exportação executada no conjunto de caracteres de WE8MSWIN1252 e no conjunto de&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;caracteres de AL16UTF16 NCHAR&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Sobre exportar tabelas especificadas ... via Caminho Convencional ...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportando tabela                          T1          0 linhas exportadas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Exportação encerrada com sucesso, sem advertências.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a exportação da tabela T1 pelo utilitário (exp), irei verificar abaixo como o Oracle irá executar os comandos DDL de criação da tabela durante a importação:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;imp scott/tiger file=t1.dmp indexfile=t1.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Import: Release 11.2.0.1.0 - Production on Dom Nov 6 10:03:14 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Arquivo de exportação criado por EXPORT:V11.02.00 via caminho convencional&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;importação realizada nos conjuntos de caracteres WE8MSWIN1252 e NCHAR AL16UTF16&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . ignorando tabela "T1"&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Importação encerrada com sucesso, sem advertências.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;type t1.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  CREATE TABLE "SCOTT"."T1" ("ID" NUMBER) PCTFREE 10 PCTUSED 40&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  INITRANS 1 MAXTRANS 255 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  1 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  "USERS" LOGGING NOCOMPRESS ;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  ... 0 rows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CONNECT SCOTT;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;&lt;span style="color: rgb(51, 51, 255);"&gt;CREATE UNIQUE INDEX "SCOTT"."PK_T1" ON "T1" ("ID" )&lt;/span&gt; PCTFREE 10 INITRANS 2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;MAXTRANS 255 STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 FREELISTS 1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;FREELIST GROUPS 1 BUFFER_POOL DEFAULT) TABLESPACE "USERS" LOGGING ;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  &lt;span style="color: rgb(255, 0, 0);"&gt;ALTER TABLE "SCOTT"."T1" ADD CONSTRAINT "PK_T1" PRIMARY KEY ("ID")&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 STORAGE(INITIAL 65536&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  NEXT 1048576 MINEXTENTS 1 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;REM  DEFAULT) TABLESPACE "USERS" LOGGING ENABLE ;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima, podemos perceber que o Oracle &lt;span style="font-weight: bold;"&gt;irá primeiro criar o índice para depois criar a constraint primary key&lt;/span&gt;. Esse comportamento também é visto se utilizarmos o utilitário de exportação e importação Oracle DataPump:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;expdp scott/tiger tables=t1 directory=data_pump_dir dumpfile=t1.dmp&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Export: Release 11.2.0.1.0 - Production on Dom Nov 6 10:08:57 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando "SCOTT"."SYS_EXPORT_TABLE_01":  scott/******** tables=t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;directory=data_pump_dir dumpfile=t1.dmp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Estimativa em andamento com o método BLOCKS...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE_DATA&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Estimativa total usando o método de BLOCKS: 0 KB&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/INDEX/INDEX&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1"                                  0 KB       0 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela-mestre "SCOTT"."SYS_EXPORT_TABLE_01" carregada/descarregada com sucesso&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;******************************************************************************&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conjunto de arquivos de dump para SCOTT.SYS_EXPORT_TABLE_01 é:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  E:\ORACLE\ADMIN\BD02\DPDUMP\T1.DMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;O job "SCOTT"."SYS_EXPORT_TABLE_01" foi concluído com sucesso em 10:09:27&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a exportação da tabela T1 pelo utilitário (expdp), irei verificar abaixo como o Oracle irá executar os comandos DDL de criação da tabela durante a importação:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;impdp scott/tiger tables=t1 directory=data_pump_dir dumpfile=t1.dmp sqlfile=t1.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Import: Release 11.2.0.1.0 - Production on Dom Nov 6 10:12:35 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela-mestre "SCOTT"."SYS_SQL_FILE_TABLE_01" carregada/descarregada com sucesso&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando "SCOTT"."SYS_SQL_FILE_TABLE_01":  scott/******** tables=t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;directory=data_pump_dir dumpfile=t1.dmp SQLFILE=t1.txt&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/INDEX/INDEX&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;O job "SCOTT"."SYS_SQL_FILE_TABLE_01" foi concluído com sucesso em 22:12:43&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;type E:\oracle\admin\BD02\dpdump\t1.txt&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-- CONNECT SCOTT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '10150 TRACE NAME CONTEXT FOREVER, LEVEL 1';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '10904 TRACE NAME CONTEXT FOREVER, LEVEL 1';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '25475 TRACE NAME CONTEXT FOREVER, LEVEL 1';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '10407 TRACE NAME CONTEXT FOREVER, LEVEL 1';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '10851 TRACE NAME CONTEXT FOREVER, LEVEL 1';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ALTER SESSION SET EVENTS '22830 TRACE NAME CONTEXT FOREVER, LEVEL 192 ';&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-- new object type path: TABLE_EXPORT/TABLE/TABLE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;CREATE TABLE "SCOTT"."T1"&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   (    "ID" NUMBER&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;   ) SEGMENT CREATION IMMEDIATE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  DEFAULT CELL_FLASH_CACHE DEFAULT)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  TABLESPACE "USERS" ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-- new object type path: TABLE_EXPORT/TABLE/INDEX/INDEX&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;CREATE UNIQUE INDEX "SCOTT"."PK_T1" ON "SCOTT"."T1" ("ID")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PCTFREE 10 INITRANS 2 MAXTRANS 255&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  DEFAULT CELL_FLASH_CACHE DEFAULT)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  TABLESPACE "USERS" PARALLEL 1 ;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  ALTER INDEX "SCOTT"."PK_T1" NOPARALLEL;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-- new object type path: TABLE_EXPORT/TABLE/CONSTRAINT/CONSTRAINT&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;ALTER TABLE "SCOTT"."T1" ADD CONSTRAINT "PK_T1" PRIMARY KEY ("ID")&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  DEFAULT CELL_FLASH_CACHE DEFAULT)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  TABLESPACE "USERS"  ENABLE;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Da mesma forma como aconteceu no exemplo com os utilitários (exp/imp), podemos perceber acima que o Oracle também &lt;span style="font-weight: bold;"&gt;irá primeiro criar o índice para depois criar a constraint primary key&lt;/span&gt;. Após a importação da tabela T1, irei simular abaixo o erro &lt;span style="color: rgb(255, 0, 0);"&gt;ORA-00955&lt;/span&gt;:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Dom Nov 6 10:23:45 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 drop primary key;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter table t1 add (id2 number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 add constraint pk_t1 primary key (id,id2);&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;alter table t1 add constraint pk_t1 primary key (id,id2)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;*&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;ERRO na linha 1:&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;ORA-00955: nome já está sendo usado por um objeto existente&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam o motivo do erro? O Oracle tentou criar um índice com o nome &lt;span style="color: rgb(51, 51, 255);"&gt;PK_T1&lt;/span&gt;. A questão é que o índice que foi utilizado pela chave primária anterior foi mantido no banco de dados:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,index_name from user_indexes;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME                     INDEX_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------ ------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1                             &lt;span style="color: rgb(51, 51, 255);"&gt;PK_T1&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;A explicação é que, após dropar a chave primária, criar uma nova coluna na tabela e criar novamente a chave primária, o índice &lt;span style="color: rgb(51, 51, 255);"&gt;PK_T1&lt;/span&gt; existente não foi reaproveitado (por motivos óbvios). Neste caso, &lt;span style="font-weight: bold;"&gt;o Oracle tentou criar um índice com o mesmo nome da constraint, o que gerou o erro &lt;span style="color: rgb(255, 0, 0);"&gt;ORA-00955&lt;/span&gt;&lt;/span&gt;. Para resolver o problema teremos que dropar o índice &lt;span style="color: rgb(51, 51, 255);"&gt;PK_T1&lt;/span&gt; explicitamente antes de criar a nova primary key.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; drop index pk_t1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice eliminado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 add constraint pk_t1 primary key (id,id2);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-3188602776579261025?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/3188602776579261025/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=3188602776579261025' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/3188602776579261025'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/3188602776579261025'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/11/desvendando-o-erro-ora-00955-durante.html' title='Desvendando o erro ORA-00955 durante a criação de uma primary key ou unique key'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://4.bp.blogspot.com/-mHHoGCUa5nQ/TraBAIGPkqI/AAAAAAAAAu4/Ah1mN9KCqWU/s72-c/image.jpeg' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-7792239489653178999</id><published>2011-10-04T21:55:00.008-03:00</published><updated>2011-10-04T22:17:49.265-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='dbca'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle 11g'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle 10g'/><title type='text'>Criando um banco de dados no modo silencioso com o DBCA</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Para aqueles que já conhecem a interface gráfica do assistente de configuração de banco de dados do Oracle, sabem que estou falando do &lt;span style="font-weight: bold;"&gt;DBCA&lt;/span&gt; (&lt;span style="color: rgb(51, 51, 255);"&gt;Database Configuration Assistant&lt;/span&gt;). No Oracle 10g, por exemplo, o &lt;span style="font-weight: bold;"&gt;DBCA&lt;/span&gt; fornece 4 tipos de templates (gabaritos), para que o DBA possa escolher aquele mais adequado ao tipo de banco a ser criado.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-vFVGS_-vSXI/TouuZU1HEyI/AAAAAAAAAuw/ltHBFL5Hzco/s1600/dbca.png"&gt;&lt;img style="display:block; margin:0px auto 10px; text-align:center;cursor:pointer; cursor:hand;width: 400px; height: 244px;" src="http://2.bp.blogspot.com/-vFVGS_-vSXI/TouuZU1HEyI/AAAAAAAAAuw/ltHBFL5Hzco/s400/dbca.png" alt="" id="BLOGGER_PHOTO_ID_5659809106832593698" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Na figura acima existe um template adicional, criado por mim que será utilizado mais a frente. Até então, o Oracle fornece quatro modelos: &lt;span style="color: rgb(51, 51, 255);"&gt;Finalidade geral&lt;/span&gt;, &lt;span style="color: rgb(51, 51, 255);"&gt;processamento de transações&lt;/span&gt;, &lt;span style="color: rgb(51, 51, 255);"&gt;Data Warehouse&lt;/span&gt; e &lt;span style="color: rgb(51, 51, 255);"&gt;banco de dados personalizado&lt;/span&gt;. Exceto para banco de dados personalizado, os outros três são templates do tipo &lt;span style="color: rgb(0, 153, 0); font-weight: bold;"&gt;seed&lt;/span&gt; (que incluem arquivos de dados). A vantagem dos templates do tipo seed é que os mesmos poupam tempo na criação de banco de dados, porque a cópia dos arquivos de banco de dados já criados para os locais corretos, leva menos tempo do que criá-los do zero. Os templates são armazenados no diretório &lt;span style="color: rgb(255, 0, 0);"&gt;$ORACLE_HOME/assistants/dbca/templates&lt;/span&gt; e tem um formato do tipo XML. Uma outra vantagem dos templates é que os mesmos são fáceis de compartilhar e podem ser copiados de uma máquina para outra. &lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Existem dois tipos de templates: &lt;span style="color: rgb(0, 153, 0);"&gt;seeds&lt;/span&gt; e &lt;span style="color: rgb(51, 51, 255);"&gt;nonseeds&lt;/span&gt;. O templates do tipo seed têm a extensão (&lt;span style="color: rgb(0, 153, 0);"&gt;*.dbc&lt;/span&gt;) e incluem os arquivos de dados de um banco de dados, em um arquivo especial com a extensão (*.dfb). Ao criar um banco de dados usando o DBCA, se você escolher algum modelo do tipo &lt;span style="color: rgb(0, 153, 0);"&gt;seed&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;a criação de banco de dados será mais rápida porque os arquivos físicos do banco de dados já foram criados&lt;/span&gt;. Portanto, a criação do banco de dados começa como uma cópia do banco de dados do seed, em vez de ter que ser criado. Na verdade, o DBCA copia os arquivos de dados para o local especificado, cria um arquivo de controle e abre o banco de dados com a opção &lt;span style="font-weight: bold;"&gt;RESETLOGS&lt;/span&gt;. Já um template do tipo &lt;span style="color: rgb(51, 51, 255);"&gt;nonseed&lt;/span&gt; tem a extensão (&lt;span style="color: rgb(51, 51, 255);"&gt;*.dbt&lt;/span&gt;) e &lt;span style="font-weight: bold;"&gt;não inclui qualquer arquivo de banco de dados&lt;/span&gt;. Se você escolher um modelo &lt;span style="color: rgb(51, 51, 255);"&gt;nonseed&lt;/span&gt; ao criar o banco de dados, &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;o assistente irá criar um novo banco de dados e executar todos os scripts necessários, como os scripts catalog.sql e catproc.sql, por exemplo&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No mais, irei utilizar abaixo um template do tipo &lt;span style="color: rgb(51, 51, 255);"&gt;nonseed&lt;/span&gt; criado por mim, e o utilizarei para criar um banco de dados &lt;span style="font-weight: bold;"&gt;sem a necessidade de utilizar a interface gráfica do DBCA (silent mode)&lt;/span&gt;. Eu criei um template e o chamei de &lt;span style="color: rgb(0, 153, 0);"&gt;templatepadrao10g.dbt&lt;/span&gt;, conforme demonstrado pelo código abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;pre style="font-family: Andale Mono, Lucida Console, Monaco, fixed, monospace; color: #000000; background-color: #eee;font-size: 12px;border: 1px dashed #999999;line-height: 14px;padding: 5px; overflow: scroll; height:400px; width: 100%"&gt;&lt;code&gt;&amp;lt;DatabaseTemplate name="padrao" description="Template padrao 10g" version="10.2.0.0.0"&amp;gt;&lt;br /&gt; &amp;lt;CommonAttributes&amp;gt;&lt;br /&gt;    &amp;lt;option name="ISEARCH" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="OMS" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="JSERVER" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="SPATIAL" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="ODM" value="false"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace id="SYSAUX"/&amp;gt;&lt;br /&gt;    &amp;lt;/option&amp;gt;&lt;br /&gt;    &amp;lt;option name="IMEDIA" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="XDB_PROTOCOLS" value="false"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace id="SYSAUX"/&amp;gt;&lt;br /&gt;    &amp;lt;/option&amp;gt;&lt;br /&gt;    &amp;lt;option name="ORACLE_TEXT" value="false"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace id="SYSAUX"/&amp;gt;&lt;br /&gt;    &amp;lt;/option&amp;gt;&lt;br /&gt;    &amp;lt;option name="SAMPLE_SCHEMA" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="CWMLITE" value="false"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace id="SYSAUX"/&amp;gt;&lt;br /&gt;    &amp;lt;/option&amp;gt;&lt;br /&gt;    &amp;lt;option name="EM_REPOSITORY" value="false"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace id="SYSAUX"/&amp;gt;&lt;br /&gt;    &amp;lt;/option&amp;gt;&lt;br /&gt;    &amp;lt;option name="HTMLDB" value="false"/&amp;gt;&lt;br /&gt;    &amp;lt;option name="NET_EXTENSIONS" value="false"/&amp;gt;&lt;br /&gt; &amp;lt;/CommonAttributes&amp;gt;&lt;br /&gt; &amp;lt;Variables/&amp;gt;&lt;br /&gt; &amp;lt;CustomScripts Execute="false"/&amp;gt;&lt;br /&gt; &amp;lt;InitParamAttributes&amp;gt;&lt;br /&gt;    &amp;lt;InitParams&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="pga_aggregate_target" value="60" unit="MB"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="nls_territory" value="BRAZIL"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="processes" value="150"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="db_recovery_file_dest_size" value="2048" unit="MB"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="nls_language" value="BRAZILIAN PORTUGUESE"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="control_files" value="(&amp;amp;quot;{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\control01.ctl&amp;amp;quot;, &amp;amp;quot;{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\control02.ctl&amp;amp;quot;, &amp;amp;quot;{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\control03.ctl&amp;amp;quot;)"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="sga_target" value="200" unit="MB"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="compatible" value="10.2.0.1.0"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="background_dump_dest" value="{ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\bdump"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="job_queue_processes" value="10"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="user_dump_dest" value="{ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\udump"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="audit_file_dest" value="{ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\adump"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="db_domain" value=""/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="open_cursors" value="300"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="db_block_size" value="8" unit="KB"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="db_recovery_file_dest" value="{ORACLE_BASE}\flash_recovery_area"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="undo_tablespace" value="UNDOTBS1"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="core_dump_dest" value="{ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\cdump"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="remote_login_passwordfile" value="EXCLUSIVE"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="undo_management" value="AUTO"/&amp;gt;&lt;br /&gt;       &amp;lt;initParam name="db_file_multiblock_read_count" value="16"/&amp;gt;&lt;br /&gt;    &amp;lt;/InitParams&amp;gt;&lt;br /&gt;    &amp;lt;MiscParams&amp;gt;&lt;br /&gt;       &amp;lt;customSGA&amp;gt;true&amp;lt;/customSGA&amp;gt;&lt;br /&gt;       &amp;lt;archiveLogMode&amp;gt;false&amp;lt;/archiveLogMode&amp;gt;&lt;br /&gt;       &amp;lt;initParamFileName&amp;gt;{ORACLE_BASE}\admin\{DB_UNIQUE_NAME}\pfile\init.ora&amp;lt;/initParamFileName&amp;gt;&lt;br /&gt;    &amp;lt;/MiscParams&amp;gt;&lt;br /&gt;    &amp;lt;SPfile useSPFile="true"&amp;gt;{ORACLE_HOME}\database\spfile{SID}.ora&amp;lt;/SPfile&amp;gt;&lt;br /&gt; &amp;lt;/InitParamAttributes&amp;gt;&lt;br /&gt; &amp;lt;StorageAttributes&amp;gt;&lt;br /&gt;    &amp;lt;ControlfileAttributes id="Arquivo de controle"&amp;gt;&lt;br /&gt;       &amp;lt;maxDatafiles&amp;gt;100&amp;lt;/maxDatafiles&amp;gt;&lt;br /&gt;       &amp;lt;maxLogfiles&amp;gt;16&amp;lt;/maxLogfiles&amp;gt;&lt;br /&gt;       &amp;lt;maxLogMembers&amp;gt;3&amp;lt;/maxLogMembers&amp;gt;&lt;br /&gt;       &amp;lt;maxLogHistory&amp;gt;1&amp;lt;/maxLogHistory&amp;gt;&lt;br /&gt;       &amp;lt;maxInstances&amp;gt;8&amp;lt;/maxInstances&amp;gt;&lt;br /&gt;       &amp;lt;image name="control01.ctl" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;       &amp;lt;image name="control02.ctl" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;       &amp;lt;image name="control03.ctl" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;    &amp;lt;/ControlfileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;DatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\sysaux01.dbf"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace&amp;gt;SYSAUX&amp;lt;/tablespace&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;status&amp;gt;0&amp;lt;/status&amp;gt;&lt;br /&gt;       &amp;lt;size unit="MB"&amp;gt;120&amp;lt;/size&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;true&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;autoExtend&amp;gt;true&amp;lt;/autoExtend&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;10240&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;maxSize unit="MB"&amp;gt;-1&amp;lt;/maxSize&amp;gt;&lt;br /&gt;    &amp;lt;/DatafileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;DatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\system01.dbf"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace&amp;gt;SYSTEM&amp;lt;/tablespace&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;status&amp;gt;0&amp;lt;/status&amp;gt;&lt;br /&gt;       &amp;lt;size unit="MB"&amp;gt;300&amp;lt;/size&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;true&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;autoExtend&amp;gt;true&amp;lt;/autoExtend&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;10240&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;maxSize unit="MB"&amp;gt;-1&amp;lt;/maxSize&amp;gt;&lt;br /&gt;    &amp;lt;/DatafileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;DatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\temp01.dbf"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace&amp;gt;TEMP&amp;lt;/tablespace&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;status&amp;gt;0&amp;lt;/status&amp;gt;&lt;br /&gt;       &amp;lt;size unit="MB"&amp;gt;20&amp;lt;/size&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;true&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;autoExtend&amp;gt;true&amp;lt;/autoExtend&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;640&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;maxSize unit="MB"&amp;gt;-1&amp;lt;/maxSize&amp;gt;&lt;br /&gt;    &amp;lt;/DatafileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;DatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\undotbs01.dbf"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace&amp;gt;UNDOTBS1&amp;lt;/tablespace&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;status&amp;gt;0&amp;lt;/status&amp;gt;&lt;br /&gt;       &amp;lt;size unit="MB"&amp;gt;200&amp;lt;/size&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;true&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;autoExtend&amp;gt;true&amp;lt;/autoExtend&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;5120&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;maxSize unit="MB"&amp;gt;-1&amp;lt;/maxSize&amp;gt;&lt;br /&gt;    &amp;lt;/DatafileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;DatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\users01.dbf"&amp;gt;&lt;br /&gt;       &amp;lt;tablespace&amp;gt;USERS&amp;lt;/tablespace&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;status&amp;gt;0&amp;lt;/status&amp;gt;&lt;br /&gt;       &amp;lt;size unit="MB"&amp;gt;5&amp;lt;/size&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;true&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;autoExtend&amp;gt;true&amp;lt;/autoExtend&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;1280&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;maxSize unit="MB"&amp;gt;-1&amp;lt;/maxSize&amp;gt;&lt;br /&gt;    &amp;lt;/DatafileAttributes&amp;gt;&lt;br /&gt;    &amp;lt;TablespaceAttributes id="SYSAUX"&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;offlineMode&amp;gt;1&amp;lt;/offlineMode&amp;gt;&lt;br /&gt;       &amp;lt;readOnly&amp;gt;false&amp;lt;/readOnly&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;defaultTemp&amp;gt;false&amp;lt;/defaultTemp&amp;gt;&lt;br /&gt;       &amp;lt;undo&amp;gt;false&amp;lt;/undo&amp;gt;&lt;br /&gt;       &amp;lt;local&amp;gt;true&amp;lt;/local&amp;gt;&lt;br /&gt;       &amp;lt;blockSize&amp;gt;-1&amp;lt;/blockSize&amp;gt;&lt;br /&gt;       &amp;lt;allocation&amp;gt;1&amp;lt;/allocation&amp;gt;&lt;br /&gt;       &amp;lt;uniAllocSize unit="KB"&amp;gt;-1&amp;lt;/uniAllocSize&amp;gt;&lt;br /&gt;       &amp;lt;initSize unit="KB"&amp;gt;64&amp;lt;/initSize&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;64&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;incrementPercent&amp;gt;50&amp;lt;/incrementPercent&amp;gt;&lt;br /&gt;       &amp;lt;minExtends&amp;gt;1&amp;lt;/minExtends&amp;gt;&lt;br /&gt;       &amp;lt;maxExtends&amp;gt;4096&amp;lt;/maxExtends&amp;gt;&lt;br /&gt;       &amp;lt;minExtendsSize unit="KB"&amp;gt;64&amp;lt;/minExtendsSize&amp;gt;&lt;br /&gt;       &amp;lt;logging&amp;gt;true&amp;lt;/logging&amp;gt;&lt;br /&gt;       &amp;lt;recoverable&amp;gt;false&amp;lt;/recoverable&amp;gt;&lt;br /&gt;       &amp;lt;maxFreeSpace&amp;gt;0&amp;lt;/maxFreeSpace&amp;gt;&lt;br /&gt;       &amp;lt;autoSegmentMgmt&amp;gt;true&amp;lt;/autoSegmentMgmt&amp;gt;&lt;br /&gt;       &amp;lt;bigfile&amp;gt;false&amp;lt;/bigfile&amp;gt;&lt;br /&gt;       &amp;lt;datafilesList&amp;gt;&lt;br /&gt;          &amp;lt;TablespaceDatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\sysaux01.dbf"&amp;gt;&lt;br /&gt;             &amp;lt;id&amp;gt;-1&amp;lt;/id&amp;gt;&lt;br /&gt;          &amp;lt;/TablespaceDatafileAttributes&amp;gt;&lt;br /&gt;       &amp;lt;/datafilesList&amp;gt;&lt;br /&gt;    &amp;lt;/TablespaceAttributes&amp;gt;&lt;br /&gt;    &amp;lt;TablespaceAttributes id="SYSTEM"&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;offlineMode&amp;gt;1&amp;lt;/offlineMode&amp;gt;&lt;br /&gt;       &amp;lt;readOnly&amp;gt;false&amp;lt;/readOnly&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;defaultTemp&amp;gt;false&amp;lt;/defaultTemp&amp;gt;&lt;br /&gt;       &amp;lt;undo&amp;gt;false&amp;lt;/undo&amp;gt;&lt;br /&gt;       &amp;lt;local&amp;gt;true&amp;lt;/local&amp;gt;&lt;br /&gt;       &amp;lt;blockSize&amp;gt;-1&amp;lt;/blockSize&amp;gt;&lt;br /&gt;       &amp;lt;allocation&amp;gt;3&amp;lt;/allocation&amp;gt;&lt;br /&gt;       &amp;lt;uniAllocSize unit="KB"&amp;gt;-1&amp;lt;/uniAllocSize&amp;gt;&lt;br /&gt;       &amp;lt;initSize unit="KB"&amp;gt;64&amp;lt;/initSize&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;64&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;incrementPercent&amp;gt;50&amp;lt;/incrementPercent&amp;gt;&lt;br /&gt;       &amp;lt;minExtends&amp;gt;1&amp;lt;/minExtends&amp;gt;&lt;br /&gt;       &amp;lt;maxExtends&amp;gt;-1&amp;lt;/maxExtends&amp;gt;&lt;br /&gt;       &amp;lt;minExtendsSize unit="KB"&amp;gt;64&amp;lt;/minExtendsSize&amp;gt;&lt;br /&gt;       &amp;lt;logging&amp;gt;true&amp;lt;/logging&amp;gt;&lt;br /&gt;       &amp;lt;recoverable&amp;gt;false&amp;lt;/recoverable&amp;gt;&lt;br /&gt;       &amp;lt;maxFreeSpace&amp;gt;0&amp;lt;/maxFreeSpace&amp;gt;&lt;br /&gt;       &amp;lt;autoSegmentMgmt&amp;gt;true&amp;lt;/autoSegmentMgmt&amp;gt;&lt;br /&gt;       &amp;lt;bigfile&amp;gt;false&amp;lt;/bigfile&amp;gt;&lt;br /&gt;       &amp;lt;datafilesList&amp;gt;&lt;br /&gt;          &amp;lt;TablespaceDatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\system01.dbf"&amp;gt;&lt;br /&gt;             &amp;lt;id&amp;gt;-1&amp;lt;/id&amp;gt;&lt;br /&gt;          &amp;lt;/TablespaceDatafileAttributes&amp;gt;&lt;br /&gt;       &amp;lt;/datafilesList&amp;gt;&lt;br /&gt;    &amp;lt;/TablespaceAttributes&amp;gt;&lt;br /&gt;    &amp;lt;TablespaceAttributes id="TEMP"&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;offlineMode&amp;gt;1&amp;lt;/offlineMode&amp;gt;&lt;br /&gt;       &amp;lt;readOnly&amp;gt;false&amp;lt;/readOnly&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;true&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;defaultTemp&amp;gt;true&amp;lt;/defaultTemp&amp;gt;&lt;br /&gt;       &amp;lt;undo&amp;gt;false&amp;lt;/undo&amp;gt;&lt;br /&gt;       &amp;lt;local&amp;gt;true&amp;lt;/local&amp;gt;&lt;br /&gt;       &amp;lt;blockSize&amp;gt;-1&amp;lt;/blockSize&amp;gt;&lt;br /&gt;       &amp;lt;allocation&amp;gt;1&amp;lt;/allocation&amp;gt;&lt;br /&gt;       &amp;lt;uniAllocSize unit="KB"&amp;gt;-1&amp;lt;/uniAllocSize&amp;gt;&lt;br /&gt;       &amp;lt;initSize unit="KB"&amp;gt;64&amp;lt;/initSize&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;64&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;incrementPercent&amp;gt;0&amp;lt;/incrementPercent&amp;gt;&lt;br /&gt;       &amp;lt;minExtends&amp;gt;1&amp;lt;/minExtends&amp;gt;&lt;br /&gt;       &amp;lt;maxExtends&amp;gt;0&amp;lt;/maxExtends&amp;gt;&lt;br /&gt;       &amp;lt;minExtendsSize unit="KB"&amp;gt;64&amp;lt;/minExtendsSize&amp;gt;&lt;br /&gt;       &amp;lt;logging&amp;gt;true&amp;lt;/logging&amp;gt;&lt;br /&gt;       &amp;lt;recoverable&amp;gt;false&amp;lt;/recoverable&amp;gt;&lt;br /&gt;       &amp;lt;maxFreeSpace&amp;gt;0&amp;lt;/maxFreeSpace&amp;gt;&lt;br /&gt;       &amp;lt;autoSegmentMgmt&amp;gt;true&amp;lt;/autoSegmentMgmt&amp;gt;&lt;br /&gt;       &amp;lt;bigfile&amp;gt;false&amp;lt;/bigfile&amp;gt;&lt;br /&gt;       &amp;lt;datafilesList&amp;gt;&lt;br /&gt;          &amp;lt;TablespaceDatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\temp01.dbf"&amp;gt;&lt;br /&gt;             &amp;lt;id&amp;gt;-1&amp;lt;/id&amp;gt;&lt;br /&gt;          &amp;lt;/TablespaceDatafileAttributes&amp;gt;&lt;br /&gt;       &amp;lt;/datafilesList&amp;gt;&lt;br /&gt;    &amp;lt;/TablespaceAttributes&amp;gt;&lt;br /&gt;    &amp;lt;TablespaceAttributes id="UNDOTBS1"&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;offlineMode&amp;gt;1&amp;lt;/offlineMode&amp;gt;&lt;br /&gt;       &amp;lt;readOnly&amp;gt;false&amp;lt;/readOnly&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;defaultTemp&amp;gt;false&amp;lt;/defaultTemp&amp;gt;&lt;br /&gt;       &amp;lt;undo&amp;gt;true&amp;lt;/undo&amp;gt;&lt;br /&gt;       &amp;lt;local&amp;gt;true&amp;lt;/local&amp;gt;&lt;br /&gt;       &amp;lt;blockSize&amp;gt;-1&amp;lt;/blockSize&amp;gt;&lt;br /&gt;       &amp;lt;allocation&amp;gt;1&amp;lt;/allocation&amp;gt;&lt;br /&gt;       &amp;lt;uniAllocSize unit="KB"&amp;gt;-1&amp;lt;/uniAllocSize&amp;gt;&lt;br /&gt;       &amp;lt;initSize unit="KB"&amp;gt;512&amp;lt;/initSize&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;512&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;incrementPercent&amp;gt;50&amp;lt;/incrementPercent&amp;gt;&lt;br /&gt;       &amp;lt;minExtends&amp;gt;8&amp;lt;/minExtends&amp;gt;&lt;br /&gt;       &amp;lt;maxExtends&amp;gt;4096&amp;lt;/maxExtends&amp;gt;&lt;br /&gt;       &amp;lt;minExtendsSize unit="KB"&amp;gt;512&amp;lt;/minExtendsSize&amp;gt;&lt;br /&gt;       &amp;lt;logging&amp;gt;true&amp;lt;/logging&amp;gt;&lt;br /&gt;       &amp;lt;recoverable&amp;gt;false&amp;lt;/recoverable&amp;gt;&lt;br /&gt;       &amp;lt;maxFreeSpace&amp;gt;0&amp;lt;/maxFreeSpace&amp;gt;&lt;br /&gt;       &amp;lt;autoSegmentMgmt&amp;gt;true&amp;lt;/autoSegmentMgmt&amp;gt;&lt;br /&gt;       &amp;lt;bigfile&amp;gt;false&amp;lt;/bigfile&amp;gt;&lt;br /&gt;       &amp;lt;datafilesList&amp;gt;&lt;br /&gt;          &amp;lt;TablespaceDatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\undotbs01.dbf"&amp;gt;&lt;br /&gt;             &amp;lt;id&amp;gt;-1&amp;lt;/id&amp;gt;&lt;br /&gt;          &amp;lt;/TablespaceDatafileAttributes&amp;gt;&lt;br /&gt;       &amp;lt;/datafilesList&amp;gt;&lt;br /&gt;    &amp;lt;/TablespaceAttributes&amp;gt;&lt;br /&gt;    &amp;lt;TablespaceAttributes id="USERS"&amp;gt;&lt;br /&gt;       &amp;lt;online&amp;gt;true&amp;lt;/online&amp;gt;&lt;br /&gt;       &amp;lt;offlineMode&amp;gt;1&amp;lt;/offlineMode&amp;gt;&lt;br /&gt;       &amp;lt;readOnly&amp;gt;false&amp;lt;/readOnly&amp;gt;&lt;br /&gt;       &amp;lt;temporary&amp;gt;false&amp;lt;/temporary&amp;gt;&lt;br /&gt;       &amp;lt;defaultTemp&amp;gt;false&amp;lt;/defaultTemp&amp;gt;&lt;br /&gt;       &amp;lt;undo&amp;gt;false&amp;lt;/undo&amp;gt;&lt;br /&gt;       &amp;lt;local&amp;gt;true&amp;lt;/local&amp;gt;&lt;br /&gt;       &amp;lt;blockSize&amp;gt;-1&amp;lt;/blockSize&amp;gt;&lt;br /&gt;       &amp;lt;allocation&amp;gt;1&amp;lt;/allocation&amp;gt;&lt;br /&gt;       &amp;lt;uniAllocSize unit="KB"&amp;gt;-1&amp;lt;/uniAllocSize&amp;gt;&lt;br /&gt;       &amp;lt;initSize unit="KB"&amp;gt;128&amp;lt;/initSize&amp;gt;&lt;br /&gt;       &amp;lt;increment unit="KB"&amp;gt;128&amp;lt;/increment&amp;gt;&lt;br /&gt;       &amp;lt;incrementPercent&amp;gt;0&amp;lt;/incrementPercent&amp;gt;&lt;br /&gt;       &amp;lt;minExtends&amp;gt;1&amp;lt;/minExtends&amp;gt;&lt;br /&gt;       &amp;lt;maxExtends&amp;gt;4096&amp;lt;/maxExtends&amp;gt;&lt;br /&gt;       &amp;lt;minExtendsSize unit="KB"&amp;gt;128&amp;lt;/minExtendsSize&amp;gt;&lt;br /&gt;       &amp;lt;logging&amp;gt;true&amp;lt;/logging&amp;gt;&lt;br /&gt;       &amp;lt;recoverable&amp;gt;false&amp;lt;/recoverable&amp;gt;&lt;br /&gt;       &amp;lt;maxFreeSpace&amp;gt;0&amp;lt;/maxFreeSpace&amp;gt;&lt;br /&gt;       &amp;lt;autoSegmentMgmt&amp;gt;true&amp;lt;/autoSegmentMgmt&amp;gt;&lt;br /&gt;       &amp;lt;bigfile&amp;gt;false&amp;lt;/bigfile&amp;gt;&lt;br /&gt;       &amp;lt;datafilesList&amp;gt;&lt;br /&gt;          &amp;lt;TablespaceDatafileAttributes id="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\users01.dbf"&amp;gt;&lt;br /&gt;             &amp;lt;id&amp;gt;-1&amp;lt;/id&amp;gt;&lt;br /&gt;          &amp;lt;/TablespaceDatafileAttributes&amp;gt;&lt;br /&gt;       &amp;lt;/datafilesList&amp;gt;&lt;br /&gt;    &amp;lt;/TablespaceAttributes&amp;gt;&lt;br /&gt;    &amp;lt;RedoLogGroupAttributes id="1"&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;false&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;fileSize unit="KB"&amp;gt;51200&amp;lt;/fileSize&amp;gt;&lt;br /&gt;       &amp;lt;Thread&amp;gt;1&amp;lt;/Thread&amp;gt;&lt;br /&gt;       &amp;lt;member ordinal="0" memberName="redo01.log" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;    &amp;lt;/RedoLogGroupAttributes&amp;gt;&lt;br /&gt;    &amp;lt;RedoLogGroupAttributes id="2"&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;false&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;fileSize unit="KB"&amp;gt;51200&amp;lt;/fileSize&amp;gt;&lt;br /&gt;       &amp;lt;Thread&amp;gt;1&amp;lt;/Thread&amp;gt;&lt;br /&gt;       &amp;lt;member ordinal="0" memberName="redo02.log" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;    &amp;lt;/RedoLogGroupAttributes&amp;gt;&lt;br /&gt;    &amp;lt;RedoLogGroupAttributes id="3"&amp;gt;&lt;br /&gt;       &amp;lt;reuse&amp;gt;false&amp;lt;/reuse&amp;gt;&lt;br /&gt;       &amp;lt;fileSize unit="KB"&amp;gt;51200&amp;lt;/fileSize&amp;gt;&lt;br /&gt;       &amp;lt;Thread&amp;gt;1&amp;lt;/Thread&amp;gt;&lt;br /&gt;       &amp;lt;member ordinal="0" memberName="redo03.log" filepath="{ORACLE_BASE}\oradata\{DB_UNIQUE_NAME}\"/&amp;gt;&lt;br /&gt;    &amp;lt;/RedoLogGroupAttributes&amp;gt;&lt;br /&gt; &amp;lt;/StorageAttributes&amp;gt;&lt;br /&gt;&amp;lt;/DatabaseTemplate&amp;gt;&lt;br /&gt;&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Agora iniciarei a criação de um banco de dados no modo silent que chamarei de &lt;span style="color: rgb(51, 51, 255);"&gt;BD03&lt;/span&gt;. Preste atenção nos parâmetros que eu passo para o DBCA.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;dbca -silent -createDatabase&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -templateName &lt;span style="color: rgb(0, 153, 0);"&gt;templatepadrao10g.dbt&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -gdbName &lt;span style="color: rgb(51, 51, 255);"&gt;BD03&lt;/span&gt; -sysPassword &lt;span style="color: rgb(51, 51, 255);"&gt;manager&lt;/span&gt; -systemPassword &lt;span style="color: rgb(51, 51, 255);"&gt;manager&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -characterset &lt;span style="color: rgb(255, 0, 0);"&gt;WE8ISO8859P1&lt;/span&gt; -nationalCharacterSet &lt;span style="color: rgb(255, 0, 0);"&gt;AL16UTF16&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -emConfiguration NONE -databaseType OLTP&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Criando e iniciando a instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;2% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;3% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;5% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;12% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Criando arquivos de banco de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;13% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;25% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Criando views de dicionário de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;28% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;32% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;36% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;37% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;38% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;39% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;40% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;41% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;42% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;43% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;44% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;45% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;52% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;56% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;60% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;61% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;64% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Concluindo Criação de Banco de Dados&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;67% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;71% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;75% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;86% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;97% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;100% concluído&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Fácil e prático, não? &lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Ter Out 4 21:10:01 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select name from v$database;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;BD03&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select instance_name from v$instance;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INSTANCE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;bd03&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select * from nls_database_parameters;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;PARAMETER                      VALUE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------ -------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_LANGUAGE                   BRAZILIAN PORTUGUESE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_TERRITORY                  BRAZIL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_CURRENCY                   R$&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_ISO_CURRENCY               BRAZIL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_NUMERIC_CHARACTERS         ,.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_CHARACTERSET               &lt;span style="color: rgb(255, 0, 0);"&gt;WE8ISO8859P1&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_CALENDAR                   GREGORIAN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_DATE_FORMAT                DD/MM/RR&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_DATE_LANGUAGE              BRAZILIAN PORTUGUESE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_SORT                       WEST_EUROPEAN&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_TIME_FORMAT                HH24:MI:SSXFF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_TIMESTAMP_FORMAT           DD/MM/RR HH24:MI:SSXFF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_TIME_TZ_FORMAT             HH24:MI:SSXFF TZR&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_TIMESTAMP_TZ_FORMAT        DD/MM/RR HH24:MI:SSXFF TZR&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_DUAL_CURRENCY              Cr$&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_COMP                       BINARY&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_LENGTH_SEMANTICS           BYTE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_NCHAR_CONV_EXCP            FALSE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_NCHAR_CHARACTERSET         &lt;span style="color: rgb(255, 0, 0);"&gt;AL16UTF16&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NLS_RDBMS_VERSION              10.2.0.1.0&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;20 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, da mesma forma que podemos criar, podemos também dropar um banco de dados com o &lt;span style="font-weight: bold;"&gt;DBCA&lt;/span&gt;. Antes disso, no exemplo abaixo irei aproveitar e demonstrar como dropar um banco de dados utilizando o comando &lt;span style="color: rgb(255, 0, 0);"&gt;DROP DATABASE&lt;/span&gt; emitido de dentro do SQL*Plus.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Ter Out 4 21:30:01 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; &lt;span style="font-weight: bold;"&gt;startup mount force restrict&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Instância ORACLE iniciada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Total System Global Area  209715200 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Fixed Size                  1248140 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Variable Size              71304308 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Database Buffers          134217728 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Redo Buffers                2945024 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Banco de dados montado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; &lt;span style="color: rgb(255, 0, 0);"&gt;drop database;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Banco de Dados eliminado.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;A outra forma seria utilizando o próprio DBCA como demonstrado abaixo:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;dbca -silent -deleteDatabase &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -sourceDB &lt;span style="color: rgb(51, 51, 255);"&gt;BD03&lt;/span&gt; &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -sysDBAUserName &lt;span style="color: rgb(51, 51, 255);"&gt;SYS&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    -sysDBAPassword &lt;span style="color: rgb(51, 51, 255);"&gt;manager&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Estabelecendo conexão com o banco de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;4% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;9% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;14% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;47% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Atualizando arquivos de configuração de rede&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;48% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;52% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Deletando instância e arquivos de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;76% concluído&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;100% concluído&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-7792239489653178999?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/7792239489653178999/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=7792239489653178999' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/7792239489653178999'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/7792239489653178999'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/10/criando-um-banco-de-dados-no-modo.html' title='Criando um banco de dados no modo silencioso com o DBCA'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-vFVGS_-vSXI/TouuZU1HEyI/AAAAAAAAAuw/ltHBFL5Hzco/s72-c/dbca.png' height='72' width='72'/><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-2667515439881605596</id><published>2011-09-04T12:01:00.038-03:00</published><updated>2011-09-05T11:17:14.393-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='datafile'/><category scheme='http://www.blogger.com/atom/ns#' term='flashback database'/><category scheme='http://www.blogger.com/atom/ns#' term='tablespace'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><title type='text'>Um pouco sobre o Flashback Database 10g/11g ...</title><content type='html'>&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Olá,&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://1.bp.blogspot.com/-btIJbFtY_Tk/TmOXllN5JUI/AAAAAAAAAsI/aZaJnDroVqE/s1600/undo2.png"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 128px; height: 128px;" src="http://1.bp.blogspot.com/-btIJbFtY_Tk/TmOXllN5JUI/AAAAAAAAAsI/aZaJnDroVqE/s400/undo2.png" alt="" id="BLOGGER_PHOTO_ID_5648525029554070850" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Para quem já teve a oportunidade de utilizar esta feature disponível desde a versão do Oracle 10g deve percebido o quanto a mesma é incrível. Na minha visão a tecnologia flashback é uma das features mais incríveis e uma das que eu eu mais gosto no Oracle. Nessas últimas semanas tenho trabalhado muito em algumas bases de mais ou menos 1 TB de tamanho realizando flahback database em um ambiente montado para realização de cenários de teste repetidos. Aliás, prefiro criar pontos de restauração garantidos (&lt;span style="font-style: italic; font-weight: bold;"&gt;Guaranted Restore Point&lt;/span&gt;) que é uma feature nova no Oracle 10g R2 para não ter que depender do parâmetro &lt;a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e17110/initparams059.htm#REFRN10233"&gt;DB_FLASHBACK_RETENTION_TARGET&lt;/a&gt; (default 24 horas). Houve um dia que uma operação de flashback database demorou cerca de 4 horas para voltar uma base até um ponto específico no tempo dentro da janela flashback. Não foi surpresa pra mim pois nesse meio tempo tinham sido realizadas várias operações DML e DDL como criação de índices, particionamentos de tabelas entre outras operações em muitas tabelas gigantescas. Fico pensando quanto tempo demoraria se tivéssemos &lt;a href="http://eduardolegatti.blogspot.com/2010/03/database-point-in-time-recovery-dbpitr.html"&gt;que voltar um backup&lt;/a&gt;!&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Como eu disse anteriormente, o flashback database &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;é muito útil nos casos em que temos vários cenários de testes repetidos&lt;/span&gt;. Digamos que você tem uma aplicação que está sendo testada em um ambiente de desenvolvimento. Toda vez que você executa a aplicação, ela executas vários comandos DML e, desta forma, altera vários registros em várias tabelas. Em um determinado momento ao final dos testes, você deseja retornar os dados para os seus valores originais antes da realização do próximo teste. Portanto, o flashback é uma ferramenta excelente para isso.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Bom, diferente de outras &lt;a href="http://eduardolegatti.blogspot.com/2010/03/database-point-in-time-recovery-dbpitr.html"&gt;tecnologias flashback&lt;/a&gt; como a flashback query por exemplo, o flashback database não depende da retenção de blocos no tablespace de UNDO. Quando o flashback database está habilitado ou até mesmo quando não está, mas algum ponto de restauração garantido existe, o Oracle registra informações extras na Flash Recovery Area (&lt;span style="color: rgb(255, 0, 0);"&gt;no 11g o termo agora é Fast Recovery Area&lt;/span&gt;) em arquivos chamados de flashback logs. Os logs de flashback possuem os dados para retornar os blocos até um tempo anterior. O legal do flashback database é que podemos voltar o banco em um determinado tempo no passado e abrir o banco no modo &lt;span style="color: rgb(51, 51, 255);"&gt;read only&lt;/span&gt; para ver se voltou o suficiente. Caso contrário, poderemos avançar no tempo ou retroceder ainda mais quantas vezes forem necessárias antes de abrir o banco com a opção &lt;span style="font-weight: bold;"&gt;resetlogs&lt;/span&gt;. O interessante é que mesmo após abrir o banco com a opção resetlogs, ainda assim poderemos utilizar os pontos de restauração criados e  ainda não removidos. A figura abaixo nos dá uma visão geral de algumas das possibilidades dentro de uma janela de tempo em que poderemos atuar:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-ZgKGvtcVjeM/TmOXwYG7ZYI/AAAAAAAAAsQ/J9ipXQMu51M/s1600/FlashbackDatabasetimewindow.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-ZgKGvtcVjeM/TmOXwYG7ZYI/AAAAAAAAAsQ/J9ipXQMu51M/s800/FlashbackDatabasetimewindow.png" alt="" id="BLOGGER_PHOTO_ID_5648525215013758338" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Vale a pena salientar que pontos de restauração garantidos ficarão eternos até que sejam removidos. Por outro lado, caso um ponto de restauração garantido não seja criado e a Flash Recovery Area precisar de mais espaço para acomodar outros tipos de arquivos, os flashback logs que foram gerados serão removidos para dar espaço a outros tipos de arquivos, como &lt;span style="font-weight: bold;"&gt;archive logs&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;arquivos de backup do RMAN&lt;/span&gt;. Portanto, seja cuidadoso ao criar um ponto de restauração garantido pois os logs de flashback crescerão até que o mesmo seja removido. Um outro ponto importante a dizer é que para que o flashback seja ativado o banco de dados precisar estar em modo &lt;a href="http://eduardolegatti.blogspot.com/2007/08/como-se-precaver-da-perda-de-dados.html"&gt;ARCHIVELOG&lt;/a&gt;, ou seja, em algum momento os archive logs gerados serão necessários para dar suporte aos flashback logs. Então, não apague nenhum archive log. Me lembro de algumas vezes ter tido que realizar o flashback de dentro do RMAN, pois alguns archive logs necessários para realização do flashback não estavam mais no disco e sim em algum backupset, devido a estratégia de política de backup em vigor.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;No mais, neste artigo irei demonstrar como o flashback database reage às alterações de algumas propriedades dos tablespaces e datafiles (create, resize, drop) realizados dentro da janela flashback. Em alguns momentos tive que abrir mão de alguns datafiles no momento da realização do flashback database. Neste caso, é bom termos cuidado pois dependendo da alteração estrutural no nível de datafiles realizada no banco de dados, essa alteração poderá impactar no flashback da base de dados de forma total ou parcial.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Inicialmente irei realizar um teste no Oracle 10g R2 e depois irei realizar um teste no Oracle 11g R2 para demonstrar alguns pontos.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-dIqHCHSsWM8/TmOYPtV8j0I/AAAAAAAAAsg/eqiRokaMocI/s1600/sql1.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-dIqHCHSsWM8/TmOYPtV8j0I/AAAAAAAAAsg/eqiRokaMocI/s800/sql1.JPG" alt="" id="BLOGGER_PHOTO_ID_5648525753289838402" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Acima estão listados os tablespaces e seus respectivos datafiles do meu banco de dados. Abaixo irei realizar um shutdown do banco para iniciá-lo em estado &lt;a href="http://eduardolegatti.blogspot.com/2008/02/estgios-de-inicializao-do-banco-de.html"&gt;MOUNT&lt;/a&gt; afim de ativar o modo flashback.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://1.bp.blogspot.com/-IhqdN0OUbq4/TmOYqQS2PQI/AAAAAAAAAso/1DvWDS0cots/s1600/sql2.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/-IhqdN0OUbq4/TmOYqQS2PQI/AAAAAAAAAso/1DvWDS0cots/s800/sql2.JPG" alt="" id="BLOGGER_PHOTO_ID_5648526209348680962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;O comando "&lt;span style="font-weight: bold; font-style: italic;"&gt;archive log list&lt;/span&gt;" me mostra que o banco já está operando no modo ARCHIVELOG.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-E2_X_Ly3Krc/TmOY7Mt049I/AAAAAAAAAsw/eHcx-whZ3uI/s1600/sql3.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-E2_X_Ly3Krc/TmOY7Mt049I/AAAAAAAAAsw/eHcx-whZ3uI/s800/sql3.JPG" alt="" id="BLOGGER_PHOTO_ID_5648526500445873106" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Acima verifiquei o destino e o tamanho da Flash Recovery Area. Deixarei de lado o parâmetro &lt;a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e17110/initparams059.htm#REFRN10233"&gt;DB_FLASHBACK_RETENTION_TARGET&lt;/a&gt; na qual o valor default é 24 horas, pois irei criar pontos de restauração garantidos e neste caso este período de retenção será desconsiderado.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-wGf0bsSuJLY/TmOZmhQeE0I/AAAAAAAAAs4/6AzagJgVjRI/s1600/sql4.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-wGf0bsSuJLY/TmOZmhQeE0I/AAAAAAAAAs4/6AzagJgVjRI/s800/sql4.JPG" alt="" id="BLOGGER_PHOTO_ID_5648527244694262594" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Após ativar o flashback database, irei criar a abaixo um ponto de restauração garantido com o nome de "&lt;span style="font-weight: bold; font-style: italic;"&gt;stable&lt;/span&gt;".&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/-kYMpv859t-w/TmObR9DqkVI/AAAAAAAAAtA/2QzuKZKIhhE/s1600/sql5.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/-kYMpv859t-w/TmObR9DqkVI/AAAAAAAAAtA/2QzuKZKIhhE/s800/sql5.JPG" alt="" id="BLOGGER_PHOTO_ID_5648529090402750802" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Pronto. O banco já está com o suporte de flashback ativado e com um ponto de restauração criado. Abaixo irei realizar algumas operações como criar uma tablespace, renomear uma tablespaces, dropar outra, e redimensionar alguns datafiles.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://1.bp.blogspot.com/-ksUxhmE4zgQ/TmOcuPPT29I/AAAAAAAAAtI/Tz5Mo5QAyhE/s1600/sql6.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/-ksUxhmE4zgQ/TmOcuPPT29I/AAAAAAAAAtI/Tz5Mo5QAyhE/s800/sql6.JPG" alt="" id="BLOGGER_PHOTO_ID_5648530675831397330" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-ly4u1f6f0YU/TmOdcEV4MTI/AAAAAAAAAtQ/sWBjJtd_vdQ/s1600/sql7.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-ly4u1f6f0YU/TmOdcEV4MTI/AAAAAAAAAtQ/sWBjJtd_vdQ/s800/sql7.JPG" alt="" id="BLOGGER_PHOTO_ID_5648531463180136754" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Após realizadas as alterações acima, o layout do meu de banco de dados ficou como demonstrado pelo resultado da query acima. Agora irei realizar o flashback database para o restore point criado anteriormente. Para tanto, será necessário deixar a base no estado &lt;a href="http://eduardolegatti.blogspot.com/2008/02/estgios-de-inicializao-do-banco-de.html"&gt;MOUNT&lt;/a&gt;.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-2_BFxTYo6p0/TmOek1YvUpI/AAAAAAAAAtY/Q-sJwVmQPYg/s1600/sql8.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-2_BFxTYo6p0/TmOek1YvUpI/AAAAAAAAAtY/Q-sJwVmQPYg/s800/sql8.JPG" alt="" id="BLOGGER_PHOTO_ID_5648532713296056978" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Acima está uma lição a ser aprendida e que está muito bem documentada. Não efetue nenhuma operação de redução de tamanho de datafile enquanto o banco de dados estiver com o flashback ativo. Como demonstrado acima, o datafile 4 pertencente ao tablespace &lt;span style="font-weight: bold;"&gt;USERS&lt;/span&gt; inviabilizou a realização do flashback.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/-8O-9mYOWLmA/TmOgeTEI_SI/AAAAAAAAAtg/KsiQfbzKqus/s1600/sql9.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/-8O-9mYOWLmA/TmOgeTEI_SI/AAAAAAAAAtg/KsiQfbzKqus/s800/sql9.JPG" alt="" id="BLOGGER_PHOTO_ID_5648534800026893602" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Colocar o datafile 4 em modo &lt;span style="color: rgb(255, 0, 0);"&gt;off-line&lt;/span&gt; não bastou para resolver o problema.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://2.bp.blogspot.com/-53jeG94lByg/TmOhheeTXMI/AAAAAAAAAto/kErbKOmDgMo/s1600/sql10.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-53jeG94lByg/TmOhheeTXMI/AAAAAAAAAto/kErbKOmDgMo/s800/sql10.JPG" alt="" id="BLOGGER_PHOTO_ID_5648535954140650690" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;Portanto, terei de abrir mão do datafile 4 executando o comando abaixo.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-NXe3SU8mZes/TmOh5ydvmLI/AAAAAAAAAtw/j7VHIQ-6hZc/s1600/sql11.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-NXe3SU8mZes/TmOh5ydvmLI/AAAAAAAAAtw/j7VHIQ-6hZc/s800/sql11.JPG" alt="" id="BLOGGER_PHOTO_ID_5648536371823876274" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;Agora irei tentar realizar novamente o flashback do banco de dados.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-peuUVlf3OK4/TmOiKKgeipI/AAAAAAAAAt4/GY7mt4Co4ho/s1600/sql12.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-peuUVlf3OK4/TmOiKKgeipI/AAAAAAAAAt4/GY7mt4Co4ho/s800/sql12.JPG" alt="" id="BLOGGER_PHOTO_ID_5648536653155699346" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Em relação ao datafile 4 o problema foi resolvido abrindo mão do mesmo, mas agora o Oracle está reclamando do datafile 5 que pertence ao tablespace TBS01 que foi dropado. Bom, uma outra lição aprendida é de que &lt;span style="font-weight: bold;"&gt;o flashback database não recupera tablespaces e datafiles que foram removidos&lt;/span&gt;.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-SjNsd7U8Yhg/TmOiV4kdvpI/AAAAAAAAAuA/U6QY5S9DDf8/s1600/sql13.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-SjNsd7U8Yhg/TmOiV4kdvpI/AAAAAAAAAuA/U6QY5S9DDf8/s800/sql13.JPG" alt="" id="BLOGGER_PHOTO_ID_5648536854499016338" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Por fim, poderei realizar o flashback database com sucesso como demonstrado abaixo:&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-2DUEG_hgUmE/TmOihin01ZI/AAAAAAAAAuI/gxERgNwsCDw/s1600/sql14.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-2DUEG_hgUmE/TmOihin01ZI/AAAAAAAAAuI/gxERgNwsCDw/s800/sql14.JPG" alt="" id="BLOGGER_PHOTO_ID_5648537054765962642" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;span style="font-weight: bold;"&gt;Conclusão:&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;ul&gt;&lt;li style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;A tablespace TBS03 que foi criada após o ponto de restauração foi removida do banco de dados.&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;O datafile 3 pertencente ao tablespace SYSAUX que teve o seu tamanho aumentado voltou para o seu tamanho original.&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;O datafile 4 pertencente ao tablespace USERS que teve o seu tamanho reduzido permanenceu off-line e portanto foi perdido. Qualquer tentativa de recover do mesmo precisará de um backup de uma incarnação anterior.&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;A tablespace TBS02 que foi renomeada para TABLESPACE02 foi desfeita e voltou para o nome original.&lt;/span&gt;&lt;/li&gt;&lt;li style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;A tablespace TBS01 que foi dropada, não foi recuperada e portanto, o seu datafile foi perdido.&lt;/span&gt;&lt;/li&gt;&lt;/ul&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Nos testes que realizei com o Oracle 11g R2, verifiquei que o comando "&lt;span style="font-style: italic; font-weight: bold;"&gt;alter database flashback on&lt;/span&gt;" pode ser emito também enquanto o banco de dados está aberto (OPEN) e não mais somente no estado MOUNT. Em relação a operação de redução do tamanho de um datafile, o mesmo inviabilizou o flashback do banco de dados, mas agora não será necessário utilizar a cláusula &lt;span style="color: rgb(255, 0, 0);"&gt;offline-drop&lt;/span&gt; do comando "&lt;span style="font-style: italic; font-weight: bold;"&gt;alter database datafile&lt;/span&gt;" como demonstrado abaixo.&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://1.bp.blogspot.com/-Fs7FJrflvxs/TmOi6FxPzqI/AAAAAAAAAuQ/jt1ovyzDk5I/s1600/sql15.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/-Fs7FJrflvxs/TmOi6FxPzqI/AAAAAAAAAuQ/jt1ovyzDk5I/s800/sql15.JPG" alt="" id="BLOGGER_PHOTO_ID_5648537476517580450" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Em relação a criação de um ponto de restauração garantido sem o modo de flashback ativado, podemos verificar abaixo que o mesmo é possível nas versões 10g R2 e 11g como demonstrado abaixo:&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://3.bp.blogspot.com/-gnqPUv_4GNc/TmOjHxdafEI/AAAAAAAAAuY/g7hJ54TAtaQ/s1600/sql16.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/-gnqPUv_4GNc/TmOjHxdafEI/AAAAAAAAAuY/g7hJ54TAtaQ/s800/sql16.JPG" alt="" id="BLOGGER_PHOTO_ID_5648537711583853634" border="0" /&gt;&lt;/a&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Os valores possíveis para a coluna &lt;span style="font-weight: bold;"&gt;FLASHBACK_ON&lt;/span&gt; da view &lt;span style="color: rgb(51, 51, 255); font-weight: bold;"&gt;V$DATABASE&lt;/span&gt; da versão 10g R1 são (&lt;span style="color: rgb(51, 51, 255);"&gt;YES&lt;/span&gt;/&lt;span style="color: rgb(255, 0, 0);"&gt;NO&lt;/span&gt;). Na versão 10g R2 foi incluído o valor "&lt;span style="color: rgb(255, 0, 0);"&gt;RESTORE POINT ONLY&lt;/span&gt;" o que significa que só é possível realizar o flashback do banco de dados para um ponto de restauração.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-J7xCq7O6K5w/TmOjW3oVWxI/AAAAAAAAAug/Uigc8JroMKk/s1600/sql17.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-J7xCq7O6K5w/TmOjW3oVWxI/AAAAAAAAAug/Uigc8JroMKk/s800/sql17.JPG" alt="" id="BLOGGER_PHOTO_ID_5648537970938305298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Acima foi até possível pegar um erro de tradução para o português da mensagem do erro &lt;span style="font-weight: bold;"&gt;ORA-38726&lt;/span&gt;. O certo seria "&lt;span style="font-style: italic; color: rgb(0, 153, 0);"&gt;ORA-38726: Log do banco de dados de flashback não está ativado.&lt;/span&gt;"&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;No mais, após remover o ponto de restauração, poderemos perceber que o valor da coluna &lt;span style="font-weight: bold;"&gt;FLASHBACK_ON&lt;/span&gt; da view &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;V$DATABASE&lt;/span&gt; terá o seu valor atualizado para "&lt;span style="color: rgb(255, 0, 0);"&gt;NO&lt;/span&gt;".&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-oLgi7NjnG8k/TmOjrnA2qNI/AAAAAAAAAuo/4TOGWYcYlwc/s1600/sql18.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-oLgi7NjnG8k/TmOjrnA2qNI/AAAAAAAAAuo/4TOGWYcYlwc/s800/sql18.JPG" alt="" id="BLOGGER_PHOTO_ID_5648538327255001298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-2667515439881605596?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/2667515439881605596/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=2667515439881605596' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/2667515439881605596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/2667515439881605596'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/09/um-pouco-sobre-o-flashback-database.html' title='Um pouco sobre o Flashback Database 10g/11g ...'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-btIJbFtY_Tk/TmOXllN5JUI/AAAAAAAAAsI/aZaJnDroVqE/s72-c/undo2.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-1995378902136598375</id><published>2011-08-03T23:31:00.009-03:00</published><updated>2011-08-04T00:00:46.340-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='oracle 11g'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='trigger'/><title type='text'>Definindo a ordem de execução de triggers no Oracle 11g ...</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Até o Oracle 11g, não se podia determinar a ordem de execução de triggers do mesmo tipo para uma tabela. Por exemplo, se temos 3 triggers em uma tabela na qual todas são &lt;span style="font-weight: bold;"&gt;BEFORE INSERT&lt;/span&gt;, qual será a ordem de execução das mesmas? A resposta é: &lt;span style="color: rgb(51, 51, 255);"&gt;impossível determinar, pois se você tiver várias triggers do mesmo tipo na tabela, então o Oracle escolherá uma ordem arbitrária e randômica para executá-las&lt;/span&gt;. Então dependendo da regra de negócio existente, isso poderia ser um problema ou não, pois a solução seria criar uma única trigger do tipo em questão e colocar toda a regra de negócio (PL/SQL) nela. A desvantagem nesse caso seria apenas de cunho administrativo e de manutenção, pois a trigger poderia ficar imensa, complexa e de difícil compreensão.&lt;br /&gt;&lt;br /&gt;Na minha visão, a vantagem de se ter mais de uma trigger seria a de trazer mais praticidade e modularidade de forma a separar a regra de negócio de acordo com o objetivo de cada uma, além de trazer uma certa flexibilidade na hora realizar manutenções no código. Imagina um cenário onde existe uma única trigger que, além de realizar grande parte da regra de negócio, ainda realiza operações para geração de logs de transação. Veja a flexibilidade se criássemos 2 triggers: uma para a regra de negócio em si e outra para geração de logs de transação. Alguém um dia poderia sugerir: "A rotina está muito lenta hoje, acho melhor desabilitarmos a trigger que realiza a geração dos logs de transação" Fácil não?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;No mais, neste artigo irei demonstrar que com o Oracle 11g podemos determinar a ordem de execução das triggers de uma tabela que são de um mesmo tipo. Na criação de uma trigger no Oracle 11g, existe uma nova cláusula chamada "&lt;span style="font-weight: bold;"&gt;follows&lt;/span&gt;" que nos permitirá definir a ordem de execução das mesmas.&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No primeiro exemplo abaixo, irei criar 3 triggers do tipo &lt;span style="font-weight: bold;"&gt;BEFORE INSERT&lt;/span&gt; sem definir uma ordem de execução.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Ago 3 21:34:36 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1 (id number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(0, 153, 0);"&gt;trg_teste_01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5     dbms_output.put_line('trigger trg_teste_01');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(51, 51, 255);"&gt;trg_teste_02&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5     dbms_output.put_line('trigger trg_teste_02');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(255, 0, 0);"&gt;trg_teste_03&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5     dbms_output.put_line('trigger trg_teste_03');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a criação da tabela e das triggers, irei inserir um registro na tabela T1.&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; set serveroutput on&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (1);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;trigger trg_teste_03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;trigger trg_teste_02&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;trigger trg_teste_01&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1 linha criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam que a trigger &lt;span style="color: rgb(255, 0, 0);"&gt;trg_teste_03&lt;/span&gt; foi acionada primeiro? Quem garante que a mesma será executada primeiro na próxima vez? Bom, no segundo exemplo abaixo irei criar novamente as triggers só que, agora, definindo a ordem de execução: &lt;span style="color: rgb(0, 153, 0);"&gt;trg_teste_01&lt;/span&gt;, depois &lt;span style="color: rgb(51, 51, 255);"&gt;trg_teste_02&lt;/span&gt; e depois &lt;span style="color: rgb(255, 0, 0);"&gt;trg_teste_03&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(0, 153, 0);"&gt;trg_teste_01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5     dbms_output.put_line('trigger trg_teste_01');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(51, 51, 255);"&gt;trg_teste_02&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;follows trg_teste_01&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     dbms_output.put_line('trigger trg_teste_02');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create or replace trigger &lt;span style="color: rgb(255, 0, 0);"&gt;trg_teste_03&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  before insert on t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   for each row&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4   &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;follows trg_teste_02&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5   begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     dbms_output.put_line('trigger trg_teste_03');&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (2);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;trigger trg_teste_01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;trigger trg_teste_02&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;trigger trg_teste_03&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1 linha criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Podemos ver que as mesmas foram acionadas de acordo com a ordem que eu havia definido anteriormente. Poderíamos inclusive desabilitar uma das triggers que não haveria problema nenhum:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter trigger &lt;span style="color: rgb(51, 51, 255);"&gt;trg_teste_02&lt;/span&gt; disable;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho alterado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (3);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;trigger trg_teste_01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;trigger trg_teste_03&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1 linha criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Agora, caso alguma trigger que é dependente de outra for dropada, aí sim teremos problemas pois não conseguiremos realizar algumas operações até que o problema seja sanado.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; drop trigger &lt;span style="color: rgb(51, 51, 255);"&gt;trg_teste_02&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho eliminado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,status from user_objects where object_type='TRIGGER';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME                    STATUS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------ -------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TRG_TESTE_01                   VALID&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;TRG_TESTE_03                   INVALID&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (3);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;insert into t1 values (3)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;            *&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ERRO na linha 1:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-04045: erros durante a recompilação/revalidação de SCOTT.TRG_TESTE_03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-04098: gatilho 'SCOTT.TRG_TESTE_03' é inválido e a revalidação falhou&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; drop table t1;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;drop table t1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;           *&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ERRO na linha 1:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-00604: ocorreu um erro no nível 1 SQL recursivo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-04045: erros durante a recompilação/revalidação de SCOTT.TRG_TESTE_03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 102, 0);font-family:courier new;" &gt;ORA-04098: gatilho 'SCOTT.TRG_TESTE_03' é inválido e a revalidação falhou&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter trigger &lt;span style="color: rgb(255, 0, 0);"&gt;trg_teste_03&lt;/span&gt; disable;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Gatilho alterado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (4);&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;trigger trg_teste_01&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1 linha criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; drop table t1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela eliminada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-1995378902136598375?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/1995378902136598375/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=1995378902136598375' title='6 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1995378902136598375'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1995378902136598375'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/08/definindo-ordem-de-execucao-de-triggers.html' title='Definindo a ordem de execução de triggers no Oracle 11g ...'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>6</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-1492098932393127051</id><published>2011-07-18T22:08:00.016-03:00</published><updated>2011-07-24T20:49:51.188-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='evento'/><category scheme='http://www.blogger.com/atom/ns#' term='guob tech day'/><title type='text'>Minha experiência no GUOB Tech Day 2011 ...</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Olá,&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://1.bp.blogspot.com/-3omI1QUg6nA/TiTaBCpyQNI/AAAAAAAAApY/zU8koU1q1ys/s1600/20110716_010.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 121px; height: 161px;" src="http://1.bp.blogspot.com/-3omI1QUg6nA/TiTaBCpyQNI/AAAAAAAAApY/zU8koU1q1ys/s400/20110716_010.jpg" alt="" id="BLOGGER_PHOTO_ID_5630865145546817746" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Quem não foi, realmente perdeu uma grande oportunidade de ver excelentes palestras e prestigiar grandes profissionais do mundo Oracle. Foi sensacional. Confesso que pequei em não realizar um networking de forma mais assertiva. No entanto, tive a oportunidade de conhecer pessoalmente grandes DBAs e profissionais Oracle que são influências e referências para mim. A não presença do Francisco Munoz Alvarez no evento, por motivos profissionais, foi uma pena pois queria muito ter conhecido ele pessoalmente desta vez. irei&lt;/span&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-lLDZMs5iARM/TiTafIHHjtI/AAAAAAAAApg/oZFxTNVabJo/s1600/20110716_002.jpg"&gt;&lt;img style="float: right; margin: 0pt 0pt 10px 10px; cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/-lLDZMs5iARM/TiTafIHHjtI/AAAAAAAAApg/oZFxTNVabJo/s200/20110716_002.jpg" alt="" id="BLOGGER_PHOTO_ID_5630865662408101586" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt; aguardar uma próxima oportunidade. Uma pena também foi o Ricardo Portilho ter aberto mão de sua palestra em prol de outras, mas realmente foi uma atitude louvável. Conheci pessoalmente muitos mestres que antes só conhecia apenas virtualmente, como o Rodrigo Almeida, o Ricardo Portilho, o Marcus Vinicius Miguel Pedro, o David Ricardo e muitos outros que estavam presentes no evento, incluindo o Diretor da OTN Latin America, Pablo Ciccarello. Conheci também os palestrantes internacionais como Kuassi Mensah, Kai Yu, Graham Wood, Hans Forbrich, Arup Nanda, Debra Lilley, entre outros.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://3.bp.blogspot.com/-LJ48Vi_0S3s/TiTatf8fAKI/AAAAAAAAApo/V7z_YtGqKwA/s1600/20110716_003.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 156px;" src="http://3.bp.blogspot.com/-LJ48Vi_0S3s/TiTatf8fAKI/AAAAAAAAApo/V7z_YtGqKwA/s200/20110716_003.jpg" alt="" id="BLOGGER_PHOTO_ID_5630865909324120226" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;A organização do evento foi impecável, pena não ter havido cadeiras suficientes para todos em algumas sessões. Acabei perdendo a palestra do Rodrigo Mufalani sobre certificações Oracle. Algumas sessões realmente estavam lotadas e acho que não teria como os organizadores preverem a tamanha quantidade de pessoas em algumas sessões. Foi um sucesso. Para quem não sabe, o GUOB faz parte do LAOUC (Latin America Oracle Users Community) desde sua fundação em 2009 e a partir desta aliança, o LAOUC assim como a OTN, se tornou um grande apoiador dos eventos do GUOB, através do envio de material técnico e relacionamento com palestrantes internacionais. Ainda não me associei ao grupo, mas irei fazê-lo logo  em breve ;-)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;&lt;span style="font-size:85%;"&gt; &lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;a href="http://2.bp.blogspot.com/-fjlA9nWdafI/TiTa-_cUyqI/AAAAAAAAApw/-6Cg8v9m0XE/s1600/20110716_001.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 150px;" src="http://2.bp.blogspot.com/-fjlA9nWdafI/TiTa-_cUyqI/AAAAAAAAApw/-6Cg8v9m0XE/s200/20110716_001.jpg" alt="" id="BLOGGER_PHOTO_ID_5630866209836944034" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Após a abertura do evento iniciada pelo Presidente do GUOB Eduardo Hahn e pelo diretor da OTN Pablo Ciccarello, entrou em cena o arquiteto da Oracle Graham Wood, conhecido como um dos criadores do AWR e ADDM do oracle 10g/11g. Nesta palestra ele mostrou de forma online o Oracle Exadata carregando 1 TB de dados no banco de dados de forma incrivelmente rápida, além de mostrar a inserção de aproximadamente 8 billões de linhas em apenas 9 minutos. Logo depois assisti outra palestra dele sobre algumas funcionalidades escondidas do Oracle. Arup Nanda também palestrou sobre o Exadata e nos mostrou um novo perfil de profissional, o DMA (Database Machine Administrator).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt; &lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt; &lt;span style="font-family:courier new;"&gt;Dentre as palestras de Kleuber Matta da Quest Software e Hans Forbrich, assisti a de Kai Yu que palestrou sobre virtualização do Oracle 11g/R2 RAC e sobre arquitetura e configuração do mesmo, até então um assunto que ainda preciso me dedicar.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://1.bp.blogspot.com/-WQwBD4awpK0/TiTbbXetONI/AAAAAAAAAqI/_4hJFso9kqI/s1600/20110716_306.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 150px;" src="http://1.bp.blogspot.com/-WQwBD4awpK0/TiTbbXetONI/AAAAAAAAAqI/_4hJFso9kqI/s200/20110716_306.jpg" alt="" id="BLOGGER_PHOTO_ID_5630866697325721810" border="0" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/-mJWmfMc0wV4/TiTbbCz4O7I/AAAAAAAAAqA/4Cse3n1xVfE/s1600/20110716_303.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 150px;" src="http://3.bp.blogspot.com/-mJWmfMc0wV4/TiTbbCz4O7I/AAAAAAAAAqA/4Cse3n1xVfE/s200/20110716_303.jpg" alt="" id="BLOGGER_PHOTO_ID_5630866691777379250" border="0" /&gt;&lt;/a&gt;&lt;a href="http://3.bp.blogspot.com/-_zIt0-3crx0/TiTbbD-wzQI/AAAAAAAAAp4/76eRRygpEFE/s1600/20110716_302.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 150px;" src="http://3.bp.blogspot.com/-_zIt0-3crx0/TiTbbD-wzQI/AAAAAAAAAp4/76eRRygpEFE/s200/20110716_302.jpg" alt="" id="BLOGGER_PHOTO_ID_5630866692091464962" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Assisti também outra palestra do Hans Forbrich sobre algumas considerações de segurança do Business Inteligence do 11g. Dentre as palestras de Kuassi Mensah e Thomas Glufke, me interessei sobre a palestra do Marcus Vinicius Miguel Pedro onde ele abordou a disponibilidade de sites com o RAC Extended Cluster e confesso que me agregou muito conhecimento.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-Cqq3s7K43s4/TiTbbwEWasI/AAAAAAAAAqQ/tKIf0AhDJxs/s1600/20110716_414.jpg"&gt;&lt;img style="float: left; margin: 0pt 10px 10px 0pt; cursor: pointer; width: 200px; height: 150px;" src="http://4.bp.blogspot.com/-Cqq3s7K43s4/TiTbbwEWasI/AAAAAAAAAqQ/tKIf0AhDJxs/s200/20110716_414.jpg" alt="" id="BLOGGER_PHOTO_ID_5630866703926061762" border="0" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Nas últimas palestras, assisti o Arup Nanda falando sobre algumas melhores práticas no que se refere ao gerenciamento do banco de dados Oracle e conheci muito de sua personalidade. Ao final do evento, foram sorteados muitos brindes, entre eles alguns livros do próprio Arup Nanda e até um NetBook foi sorteado.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Enfim, o evento foi excelente e me agregou muitos conhecimentos. Portanto, parabenizo a todos os organizadores.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;a href="http://4.bp.blogspot.com/-IT2e07ky_aw/TiTcNvQ_SEI/AAAAAAAAAqg/FdG8El9izOU/s1600/20110716_020.jpg"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 301px;" src="http://4.bp.blogspot.com/-IT2e07ky_aw/TiTcNvQ_SEI/AAAAAAAAAqg/FdG8El9izOU/s400/20110716_020.jpg" alt="" id="BLOGGER_PHOTO_ID_5630867562704095298" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;br /&gt;&lt;/span&gt;  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-1492098932393127051?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/1492098932393127051/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=1492098932393127051' title='8 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1492098932393127051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1492098932393127051'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/07/minha-experiencia-no-guob-tech-day-2011.html' title='Minha experiência no GUOB Tech Day 2011 ...'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/-3omI1QUg6nA/TiTaBCpyQNI/AAAAAAAAApY/zU8koU1q1ys/s72-c/20110716_010.jpg' height='72' width='72'/><thr:total>8</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-4106391126454106993</id><published>2011-07-06T22:09:00.004-03:00</published><updated>2011-07-06T22:58:30.824-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='duplicate'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle 11g'/><category scheme='http://www.blogger.com/atom/ns#' term='rman'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><title type='text'>Clonando um banco de dados Oracle com o RMAN - DUPLICATE DATABASE</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Neste artigo irei demonstrar na prática como clonar um banco de dados Oracle &lt;span style="font-weight: bold;"&gt;no mesmo servidor&lt;/span&gt; através do comando &lt;span style="font-weight: bold;"&gt;DUPLICATE DATABASE&lt;/span&gt; do &lt;a href="http://eduardolegatti.blogspot.com/2010/10/estrategia-de-backup-rman.html"&gt;RMAN&lt;/a&gt;. Irei realizar alguns passos de forma a mostrar a clonagem &lt;span style="color: rgb(51, 51, 255);"&gt;com o uso de um backup previamente feito pelo RMAN&lt;/span&gt; que, aliás, é fundamental e obrigatório para realização da clonagem nas versões &lt;span style="color: rgb(255, 0, 0);"&gt;Oracle 10g e anteriores&lt;/span&gt;. Uma outra abordagem que farei, será a de mostrar os passos para a realização da clonagem &lt;span style="color: rgb(51, 51, 255);"&gt;sem a utilização de um backup&lt;/span&gt; através de um novo recurso do comando &lt;span style="font-style: italic; color: rgb(0, 153, 0);"&gt;duplicate database&lt;/span&gt; no RMAN do &lt;span style="color: rgb(255, 0, 0);"&gt;Oracle 11g&lt;/span&gt; chamando de &lt;span style="font-weight: bold;"&gt;ACTIVE DATABASE&lt;/span&gt;. Para mostrar as duas abordagens, usarei o &lt;span style="font-weight: bold;"&gt;Oracle 11g Rel2  instalado em uma máquina sob o sistema operacional Windows&lt;/span&gt;. Já vou adiantando que a clonagem via o comando &lt;span style="font-style: italic;"&gt;duplicate database&lt;/span&gt; pode ser feita em bancos que estejam operando nos modos &lt;a href="http://eduardolegatti.blogspot.com/2007/08/como-se-precaver-da-perda-de-dados.html"&gt;&lt;span style="font-weight: bold;"&gt;NOARCHIVELOG&lt;/span&gt;&lt;/a&gt; ou &lt;a href="http://eduardolegatti.blogspot.com/2007/08/como-se-precaver-da-perda-de-dados.html"&gt;&lt;span style="font-weight: bold;"&gt;ARCHIVELOG&lt;/span&gt;&lt;/a&gt;. No caso de bancos operando no modo &lt;span style="font-weight: bold;"&gt;NOARCHIVELOG&lt;/span&gt;, o banco de origem deverá estar no mínimo em estado &lt;a href="http://eduardolegatti.blogspot.com/2008/02/estgios-de-inicializao-do-banco-de.html"&gt;&lt;span style="color: rgb(255, 0, 0);"&gt;MOUNT&lt;/span&gt;&lt;/a&gt; e a instância auxiliar deverá estar no estado &lt;a href="http://eduardolegatti.blogspot.com/2008/02/estgios-de-inicializao-do-banco-de.html"&gt;&lt;span style="color: rgb(255, 102, 0);"&gt;NOMOUNT&lt;/span&gt;&lt;/a&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No primeiro cenário, irei clonar o banco de dados &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; para &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;. O primeiro passo é criar os diretórios necessários nos devidos locais de forma que eles possam ficar iguais aos diretórios do banco de dados de origem como &lt;span style="color: rgb(255, 0, 0);"&gt;admin\TESTE\adump&lt;/span&gt; e, no meu caso, &lt;span style="color: rgb(255, 0, 0);"&gt;oradata\TESTE&lt;/span&gt;. Nesta primeira abordagem irei realizar a clonagem utilizando um backup do banco de dados &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; previamente realizado pelo &lt;span style="font-weight: bold;"&gt;RMAN&lt;/span&gt; como demonstrado abaixo. No caso, o banco de dados de origem &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; está operando no modo &lt;span style="font-weight: bold;"&gt;ARCHIVELOG&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;rman target /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Recovery Manager: Release 11.2.0.1.0 - Production on Qua Jul 6 20:33:30 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados de destino: BD02 (DBID=2693065298)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; backup full database plus archivelog;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;log atual arquivado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: SID=29 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando conjunto de backups de log arquivado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: especificando log(s) arquivado no conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;thread do log arquivado de entrada=1 sequência=16 RECID=1 STAMP=754598030&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando o componente 1 em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: componente 1 finalizado em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2011_07_06&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando conjunto de backup completo de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00001 nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00005 nome=E:\ORACLE\ORADATA\BD02\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00006 nome=E:\ORACLE\ORADATA\BD02\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00007 nome=E:\ORACLE\ORADATA\BD02\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando o componente 1 em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: componente 1 finalizado em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2011_07_06&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:25&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando conjunto de backup completo de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: especificando arquivo[s] de dados no conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;incluindo arquivo de controle atual no conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;incluindo SPFILE atual do conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando o componente 1 em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: componente 1 finalizado em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2011_07_06&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;log atual arquivado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando conjunto de backups de log arquivado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: especificando log(s) arquivado no conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;thread do log arquivado de entrada=1 sequência=17 RECID=2 STAMP=754598064&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando o componente 1 em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: componente 1 finalizado em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET\2011_07_06\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: conjunto de backups concluído, tempo decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a criação do backup pelo RMAN, irei conectar no banco de dados de origem e criar um arquivo de inicialização (pfile) na qual o editarei conforme exemplo a seguir.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jul 6 20:35:47 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; create pfile from spfile;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Arquivo criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conteúdo do arquivo de inicialização após a edição&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.audit_file_dest='E:\oracle\admin\&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;\adump'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.audit_trail='db'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.compatible='11.2.0.0.0'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.control_files='E:\oracle\oradata\&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;\control01.ctl'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_block_size=8192&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_domain=''&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_name='&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_recovery_file_dest='E:\oracle\flash_recovery_area'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_recovery_file_dest_size=107374182400&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.diagnostic_dest='E:\oracle'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.memory_target=320864256&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.nls_language='BRAZILIAN PORTUGUESE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.nls_territory='BRAZIL'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.open_cursors=300&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.processes=150&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.remote_login_passwordfile='EXCLUSIVE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.undo_tablespace='UNDOTBS1'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;*.db_file_name_convert =('&lt;span style="color: rgb(51, 51, 255);"&gt;\oradata\BD02\&lt;/span&gt;','&lt;span style="color: rgb(255, 0, 0);"&gt;\oradata\TESTE\&lt;/span&gt;')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;*.log_file_name_convert =('&lt;span style="color: rgb(51, 51, 255);"&gt;\oradata\BD02\&lt;/span&gt;','&lt;span style="color: rgb(255, 0, 0);"&gt;\oradata\TESTE\&lt;/span&gt;')&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a criação do arquivo &lt;span style="color: rgb(255, 0, 0);"&gt;initTESTE.ora&lt;/span&gt;, sua edição e cópia para o local apropriado em &lt;span style="color: rgb(0, 153, 0);"&gt;%ORACLE_HOME%\database&lt;/span&gt;, irei criar um serviço no Windows para poder inicializar a instância em NOMOUNT como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;oradim -new -sid &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt; -syspwd minhasenha&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Instância criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;set ORACLE_SID=&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a criação do serviço, irei iniciar a instância em estado NOMOUNT. Neste ponto, essa será a minha &lt;span style="color: rgb(255, 0, 0);"&gt;instância auxiliar&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jul 6 20:44:21 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a uma instância inativa.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; startup nomount&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Instância ORACLE iniciada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Total System Global Area  322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Fixed Size                  1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Variable Size             209717096 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Database Buffers          104857600 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Redo Buffers                6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Está tudo pronto para iniciarmos o processo de clonagem. Abaixo irei conectar na instância &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt;. Para tanto, será necessário que tenha um serviço no arquivo &lt;span style="color: rgb(0, 153, 0);"&gt;TNSNAMES.ORA&lt;/span&gt; que aponte para a instância de origem &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt;. Já que no prompt do &lt;span style="font-weight: bold;"&gt;DOS&lt;/span&gt; eu executei o comando &lt;span style="font-style: italic; color: rgb(255, 0, 0);"&gt;set ORACLE_SID=TESTE&lt;/span&gt;, então no comando abaixo a parte &lt;span style="font-style: italic; color: rgb(255, 0, 0);"&gt;auxiliary /&lt;/span&gt; irá se conectar na instância auxiliar TESTE.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;rman target &lt;span style="color: rgb(51, 51, 255);"&gt;sys/manager@BD02&lt;/span&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;auxiliary /&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Recovery Manager: Release 11.2.0.1.0 - Production on Qua Jul 6 21:08:20 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados de destino: &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; (DBID=2693065298)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados auxiliar: &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt; (não montado)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Agora é só iniciar o processo de clonagem com o comando abaixo e o RMAN fará todo o trabalho para nós.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; duplicate &lt;span style="color: rgb(51, 51, 255);"&gt;target&lt;/span&gt; database to &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando Duplicate Db em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: SID=19 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "create spfile from memory";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: create spfile from memory&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''BD02'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Modified by RMAN duplicate'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_unique_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''TESTE'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Modified by RMAN duplicate'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone force nomount&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   restore clone primary controlfile;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   alter clone database mount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_name =  ''BD02''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Modified by RMAN duplicate'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_unique_name =  ''TESTE''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Modified by RMAN duplicate'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando restore em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: SID=18 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: iniciando restauração de conjunto de backups&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando arquivo de controle&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: lendo backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\BACKUPSET&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurada a parte de backup 1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restauração concluída, tempo decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE\CONTROL01.CTL&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado restore em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados montado&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set until scn  222488;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  1 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\SYSTEM01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  2 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  3 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  4 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\USERS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  5 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  6 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS02.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  7 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS03.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   restore&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   clone database&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   ;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET until clause&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando restore em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: iniciando restauração de backups de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: especificando arquivo(s) para restauração&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurando em E:\ORACLE\ORADATA\TESTE\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: lendo backup E:\ORACLE\FLASH_RECOVERY_AREA\BD02\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: handle de componente=E:\ORACLE\FLASH_RECOVERY_AREA\BD02\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restaurada a parte de backup 1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: restauração concluída, tempo decorrido: 00:00:45&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado restore em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone datafile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 1 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 2 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 3 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 4 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 5 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 6 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 7 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set until scn  222488;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   recover&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   clone database&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;    delete archivelog&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   ;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET until clause&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando recover em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;iniciar recuperação de mídia&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;o log arquivado para thread 1 com sequência 17 já está no disco&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;recuperação da mídia concluída, tempo decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado recover em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''TESTE'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Reset to original value by RMAN'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system reset  db_unique_name scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados desmontado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_name =  ''TESTE''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Reset to original value by RMAN'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system reset  db_unique_name scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução: CREATE CONTROLFILE REUSE SET DATABASE "TESTE" RESETLOGS ARCHIVELOG&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGFILES     16&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGMEMBERS    3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXDATAFILES   100&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXINSTANCES     8&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGHISTORY  292&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; LOGFILE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  1 ( 'E:\ORACLE\ORADATA\TESTE\REDO01.LOG' ) SIZE 50 M  REUSE,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  2 ( 'E:\ORACLE\ORADATA\TESTE\REDO02.LOG' ) SIZE 50 M  REUSE,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  3 ( 'E:\ORACLE\ORADATA\TESTE\REDO03.LOG' ) SIZE 50 M  REUSE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; DATAFILE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  'E:\ORACLE\ORADATA\TESTE\SYSTEM01.DBF'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; CHARACTER SET WE8MSWIN1252&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for tempfile  1 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TEMP01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone tempfile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   catalog clone datafilecopy  "E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\USERS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS02.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE\TBS03.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone datafile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo temporário renomeado 1 para&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;E:\ORACLE\ORADATA\TESTE\TEMP01.DBF no arquivo de controle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 2 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 3 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 4 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 5 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 6 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 7 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   Alter clone database open resetlogs;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados aberto&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado Duplicate Db em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. A clonagem foi realizada e poderemos conectar no banco de dados &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt; como demonstrado abaixo.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jul 6 21:16:54 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select open_mode,name,created from v$database;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OPEN_MODE            NAME                  CREATED&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------------- --------------------- ----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;READ WRITE           &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE&lt;/span&gt;                 06/07/2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select file_name from dba_data_files;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;FILE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;7 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select file_name from dba_temp_files;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;FILE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE\TEMP01.DBF&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;A próxima abordagem será demonstrar a clonagem &lt;span style="font-weight: bold;"&gt;sem que seja necessário a realização prévia de um backup&lt;/span&gt;. Isto só é possível utilizando o &lt;span style="font-weight: bold;"&gt;Oracle 11g&lt;/span&gt;. Neste caso, irei clonar novamente o banco de dados &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; só que agora como &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt;. Após a criação dos diretórios necessários, irei realizar a modificação no arquivo de inicialização (pfile) gerado da mesma forma com fiz na primeira abordagem:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;Conteúdo do arquivo de inicialização após a edição&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.audit_file_dest='E:\oracle\admin\&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt;\adump'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.audit_trail='db'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.compatible='11.2.0.0.0'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.control_files='E:\oracle\oradata\&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt;\control01.ctl'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_block_size=8192&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_domain=''&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_name='&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt;'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_recovery_file_dest='E:\oracle\flash_recovery_area'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.db_recovery_file_dest_size=107374182400&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.diagnostic_dest='E:\oracle'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.memory_target=320864256&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.nls_language='BRAZILIAN PORTUGUESE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.nls_territory='BRAZIL'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.open_cursors=300&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.processes=150&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.remote_login_passwordfile='EXCLUSIVE'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;*.undo_tablespace='UNDOTBS1'&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;*.db_file_name_convert =('&lt;span style="color: rgb(51, 51, 255);"&gt;\oradata\BD02\&lt;/span&gt;','&lt;span style="color: rgb(255, 0, 0);"&gt;\oradata\TESTE2\&lt;/span&gt;')&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;*.log_file_name_convert =('&lt;span style="color: rgb(51, 51, 255);"&gt;\oradata\BD02\&lt;/span&gt;','&lt;span style="color: rgb(255, 0, 0);"&gt;\oradata\TESTE2\&lt;/span&gt;')&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Diferente da primeira abordagem, precisaremos editar o arquivo &lt;span style="color: rgb(0, 153, 0);"&gt;LISTENER.ORA&lt;/span&gt; de forma &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;a registrar a instância clone&lt;/span&gt; conforme demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;Conteúdo do arquivo listener.ora&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SID_LIST_LISTENER =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  (SID_LIST =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    (SID_DESC =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      (SID_NAME = CLRExtProc)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      (ORACLE_HOME = E:\oracle\product\11.2.0\dbhome_1)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      (PROGRAM = extproc)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; &lt;span style="color: rgb(255, 0, 0);"&gt;   (SID_DESC =&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      (GLOBAL_DBNAME = TESTE2)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      (ORACLE_HOME = E:\oracle\product\11.2.0\dbhome_1)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      (SID_NAME = TESTE2)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;    )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;LISTENER =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  (DESCRIPTION_LIST =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    (DESCRIPTION =&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      (ADDRESS = (PROTOCOL = TCP)(HOST = micro)(PORT = 1521))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    )&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  )&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;ADR_BASE_LISTENER = E:\oracle&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Precisaremos também adicionar um serviço no arquivo &lt;span style="color: rgb(0, 153, 0);"&gt;TNSNAMES.ORA&lt;/span&gt; para a instância &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; conforme o exemplo abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;Conteúdo do arquivo tnsnames.ora&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------------------------&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;TESTE2 =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;  (DESCRIPTION =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;    (ADDRESS_LIST =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      (ADDRESS = (PROTOCOL = TCP)(HOST = micro)(PORT = 1521))&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;    )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;    (CONNECT_DATA =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;      (SERVICE_NAME = TESTE2)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;    )&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;  )&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após realizados os passos acima, irei criar um serviço no Windows da mesma forma que foi realizada na primeira abordagem, afim de poder inicializar a instância &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; (auxiliar) em NOMOUNT. Precisaremos também criar um arquivo de senha.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;oradim -new -sid &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; -syspwd minhasenha&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Instância criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;orapwd file=E:\oracle\product\11.2.0\dbhome_1\database\&lt;span style="color: rgb(255, 0, 0);"&gt;pwdTESTE2.ora&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;    password=minhasenha&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. Agora já poderemos inicializar a instância TESTE2 em NOMOUNT como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;set ORACLE_SID=&lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jul 6 21:25:37 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a uma instância inativa.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; startup nomount&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Instância ORACLE iniciada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Total System Global Area  322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Fixed Size                  1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Variable Size             209717096 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Database Buffers          104857600 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Redo Buffers                6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Através do comando abaixo, poderemos no conectar na instância de origem &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; e na instância auxiliar &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; para dar início à clonagem de forma online.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;rman target &lt;span style="color: rgb(51, 51, 255);"&gt;sys/manager@BD02&lt;/span&gt; auxiliary &lt;span style="color: rgb(255, 0, 0);"&gt;sys/minhasenha@TESTE2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Recovery Manager: Release 11.2.0.1.0 - Production on Qua Jul 6 21:36:59 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados de destino: &lt;span style="color: rgb(51, 51, 255);"&gt;BD02&lt;/span&gt; (DBID=2693065298)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;conectado ao banco de dados auxiliar: &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; (não montado)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Agora é só iniciar o processo de clonagem utilizando a cláusula &lt;span style="font-style: italic; color: rgb(0, 153, 0);"&gt;from active database&lt;/span&gt; do comando DUPLICATE abaixo, e o RMAN fará todo o trabalho para nós de forma online sem a necessidade de utilização de um backup realizado previamente.&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;RMAN&amp;gt; duplicate &lt;span style="color: rgb(51, 51, 255);"&gt;target database&lt;/span&gt; to &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; from active database;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando Duplicate Db em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;usar o arquivo de controle do banco de dados de destino em vez do catálogo&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: SID=19 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "create spfile from memory";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: create spfile from memory&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''BD02'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Modified by RMAN duplicate'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_unique_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''TESTE2'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Modified by RMAN duplicate'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone force nomount&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   backup as copy current controlfile auxiliary format &lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;      'E:\ORACLE\ORADATA\TESTE2\CONTROL01.CTL';&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   alter clone database mount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_name =  ''BD02''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Modified by RMAN duplicate'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_unique_name =  ''TESTE2''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Modified by RMAN duplicate'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: SID=37 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;copiando arquivo de controle atual&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo=E:\ORACLE\PRODUCT\11.2.0\DBHOME_1\DATABASE\SNCFBD02.ORA&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados montado&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  1 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  2 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  3 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  4 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\USERS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  5 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  6 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS02.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for datafile  7 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS03.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   backup as copy reuse&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   datafile  1 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF"   datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 2 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF"   datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 3 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF"  datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 4 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\USERS01.DBF"    datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 5 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS01.DBF"      datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 6 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS02.DBF"      datafile&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; 7 auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS03.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql 'alter system archive log current';&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome=E:\ORACLE\ORADATA\BD02\SYSTEM01.DBF do arquivo de dados de entrada&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:01:15&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00002 nome=E:\ORACLE\ORADATA\BD02\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:55&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00003 nome=E:\ORACLE\ORADATA\BD02\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:25&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00004 nome=E:\ORACLE\ORADATA\BD02\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:04&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00005 nome=E:\ORACLE\ORADATA\BD02\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00006 nome=E:\ORACLE\ORADATA\BD02\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;número do arquivo=00007 nome=E:\ORACLE\ORADATA\BD02\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\ORADATA\TESTE2\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de arquivo de dados concluída; decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system archive log current&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   backup as copy reuse&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   archivelog like  "E:\ORACLE\FLASH_RECOVERY_AREA\BD02\ARCHIVELOG\2011_07_06\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   O1_MF_1_18_707LDYHN_.ARC" auxiliary format&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; E:\ORACLE\FLASH_RECOVERY_AREA\TESTE2\ARCHIVELOG\2011_07_06\O1_MF_1_18_%U_.ARC;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   catalog clone recovery area;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone datafile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;utilizando o canal ORA_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: iniciando cópia de log arquivado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;thread do log arquivado de entrada=1 sequência=18 RECID=3 STAMP=754604271&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de saída=E:\ORACLE\FLASH_RECOVERY_AREA\TESTE2\ARCHIVELOG\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_DISK_1: cópia de log arquivado concluída, decorrido: 00:00:01&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado backup em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;procurando todos os arquivos na área de recuperação&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Lista de Arquivos Desconhecidos para o Banco de Dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;=====================================================&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Nome do Arquivo: E:\ORACLE\FLASH_RECOVERY_AREA\TESTE2\ARCHIVELOG\2011_07_06\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;O1_MF_1_18_ARCH_D-BD02_ID-2693065298_S-18_T-1_A-752966866_0FMFKM7G_.ARC&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;catalogando arquivos...&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;catalogação concluída&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Lista de Arquivos Catalogados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;=============================&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Nome do Arquivo: E:\ORACLE\FLASH_RECOVERY_AREA\TESTE2\ARCHIVELOG\2011_07_06\&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;O1_MF_1_18_ARCH_D-BD02_ID-2693065298_S-18_T-1_A-752966866_0FMFKM7G_.ARC&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 1 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 2 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 3 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 4 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 5 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 6 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 7 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set until scn  226711;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   recover&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   clone database&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;    delete archivelog&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   ;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET until clause&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Iniciando recover em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal alocado: ORA_AUX_DISK_1&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;canal ORA_AUX_DISK_1: SID=21 tipo de dispositivo=DISK&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;iniciar recuperação de mídia&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;o log arquivado para thread 1 com sequência 18 já está no disco&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de log =E:\ORACLE\FLASH_RECOVERY_AREA\TESTE2\ARCHIVELOG\&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;recuperação da mídia concluída, tempo decorrido: 00:00:03&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado recover em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system set  db_name =&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''TESTE2'' comment=&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; ''Reset to original value by RMAN'' scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   sql clone "alter system reset  db_unique_name scope=spfile";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   shutdown clone immediate;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   startup clone nomount;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados desmontado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system set  db_name =  ''TESTE2''&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;comment= ''Reset to original value by RMAN'' scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução sql: alter system reset  db_unique_name scope=spfile&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;encerramento de instância Oracle&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conectado ao banco de dados auxiliar (não iniciado)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instância Oracle iniciada&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Total da Área Global do Sistema     322228224 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Fixed Size              1374360 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Variable Size         218105704 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Database Buffers       96468992 bytes&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Redo Buffers            6279168 bytes&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;instrução: CREATE CONTROLFILE REUSE SET DATABASE "TESTE2" RESETLOGS ARCHIVELOG&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGFILES     16&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGMEMBERS    3&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXDATAFILES   100&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXINSTANCES     8&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  MAXLOGHISTORY  292&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; LOGFILE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  1 ( 'E:\ORACLE\ORADATA\TESTE2\REDO01.LOG' ) SIZE 50 M  REUSE,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  2 ( 'E:\ORACLE\ORADATA\TESTE2\REDO02.LOG' ) SIZE 50 M  REUSE,&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  GROUP  3 ( 'E:\ORACLE\ORADATA\TESTE2\REDO03.LOG' ) SIZE 50 M  REUSE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; DATAFILE&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;  'E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF'&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; CHARACTER SET WE8MSWIN1252&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   set newname for tempfile  1 to&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TEMP01.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone tempfile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   catalog clone datafilecopy  "E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\USERS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS01.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS02.DBF",&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt; "E:\ORACLE\ORADATA\TESTE2\TBS03.DBF";&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   switch clone datafile all;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando comando: SET NEWNAME&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo temporário renomeado 1 para E:\ORACLE\ORADATA\TESTE2\TEMP01.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados catalogado&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;nome do arquivo de cópia=E:\ORACLE\ORADATA\TESTE2\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 2 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 3 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 4 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 5 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 6 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;arquivo de dados 7 alternado para a cópia do arquivo de dados&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;cópia do arquivo de dados file name=E:\ORACLE\ORADATA\TESTE2\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;conteúdo do Script de Memória:&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;{&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;   Alter clone database open resetlogs;&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;}&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;executando Script de Memória&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;banco de dados aberto&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(153, 153, 153);font-family:courier new;" &gt;Finalizado Duplicate Db em 06/07/11&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pronto. A clonagem foi realizada de forma online e poderemos conectar no banco de dados &lt;span style="color: rgb(255, 0, 0);"&gt;TESTE2&lt;/span&gt; como demonstrado abaixo.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus / as sysdba&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jul 6 21:47:54 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select open_mode,name,created from v$database;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OPEN_MODE            NAME                  CREATED&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------------- --------------------- ----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;READ WRITE           TESTE2                06/07/2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select file_name from dba_data_files;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;FILE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\SYSTEM01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\SYSAUX01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\UNDOTBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\USERS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\TBS01.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\TBS02.DBF&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\TBS03.DBF&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;7 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; select file_name from dba_temp_files;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;FILE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;------------------------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;E:\ORACLE\ORADATA\TESTE2\TEMP01.DBF&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-4106391126454106993?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/4106391126454106993/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=4106391126454106993' title='7 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/4106391126454106993'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/4106391126454106993'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/07/clonando-um-banco-de-dados-oracle-com-o.html' title='Clonando um banco de dados Oracle com o RMAN - DUPLICATE DATABASE'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>7</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-6990031321582086596</id><published>2011-06-14T22:50:00.004-03:00</published><updated>2011-06-21T10:53:46.777-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='evento'/><category scheme='http://www.blogger.com/atom/ns#' term='guob tech day'/><title type='text'>GUOB TECH DAY 2011</title><content type='html'>&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Olá,&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;a href="http://www.guob.com.br/"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer; width: 400px; height: 53px;" src="http://2.bp.blogspot.com/-p5AHVlkFhyA/TgCiIb_-axI/AAAAAAAAApI/rItTYDiNrLA/s400/V4_GUOB_680X90px.jpg" alt="" id="BLOGGER_PHOTO_ID_5620670600797121298" border="0" /&gt;&lt;/a&gt;&lt;a href="http://4.bp.blogspot.com/-7FSyhsv5vIw/TfgQ5A_BpSI/AAAAAAAAApA/A2G3aNZVxRI/s1600/GUOB_468X60px.jpg"&gt;&lt;br /&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;/span&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Agende-se para mais este grande evento organizado pelo &lt;a href="http://www.guob.com.br/"&gt;GUOB&lt;/a&gt; com apoio do LAOUC e OTN. Acontecerá no dia 16/07/2011, sábado, em São Paulo no Hotel Blue Tree Morumbi, a edição 2011 do grande encontro de usuários de tecnologia Oracle do Brasil com a participação de palestrantes internacionais e nacionais.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Este ano contamos com a presença de &lt;span style="font-weight: bold;"&gt;Arup Nanda&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Graham Wood&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Debra Lilley&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Kay Yu&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;Hans Forbrich&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;Francisco Munoz&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Aproveite esta grande oportunidade de estar próximo de grande autores e referências em tecnologia Oracle no mundo.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;Faça sua associação gratuita ao GUOB através da opção no menu &lt;span style="color: rgb(51, 51, 255); font-weight: bold;"&gt;ASSOCIE-SE&lt;/span&gt; no &lt;a href="http://www.guob.com.br/"&gt;site&lt;/a&gt;. Você poderá ser o ganhador de um dos 3 convites para associados ao GUOB para um almoço com os palestrantes durante o GUOB TECH DAY 2011.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Participem e divulguem o evento.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Acesse o &lt;a href="http://www.guob.com.br/"&gt;site&lt;/a&gt; para maiores informações. GUOB TECH DAY 2011.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Nos encontramos lá...&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-size:85%;"&gt;&lt;span style="font-family:courier new;"&gt;&lt;/span&gt;  &lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-6990031321582086596?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/6990031321582086596/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=6990031321582086596' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/6990031321582086596'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/6990031321582086596'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/06/guob-tech-day-2011.html' title='GUOB TECH DAY 2011'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-p5AHVlkFhyA/TgCiIb_-axI/AAAAAAAAApI/rItTYDiNrLA/s72-c/V4_GUOB_680X90px.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-8228058805832124880</id><published>2011-06-08T22:04:00.005-03:00</published><updated>2011-06-08T23:04:38.618-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='table partition'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle 11g'/><category scheme='http://www.blogger.com/atom/ns#' term='partições'/><category scheme='http://www.blogger.com/atom/ns#' term='interval partitioning'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><title type='text'>Interval Partitioning. Abordando um conceito de particionamento por intervalo do Oracle 11g.</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No artigo de &lt;a href="http://eduardolegatti.blogspot.com/2011/02/executando-operacoes-de-manutencao-em.html"&gt;Fevereiro/2011&lt;/a&gt; fiz uma breve introdução sobre o conceito de tabelas particionadas, assim como no post de &lt;a href="http://eduardolegatti.blogspot.com/2011/04/particionando-uma-tabela-on-line-com-o.html"&gt;Abril/2011&lt;/a&gt;, na qual demonstrei como particionar uma tabela de forma on-line. Neste artigo irei demonstrar um novo conceito de particionamento de tabelas introduzido no &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Oracle 11g&lt;/span&gt; que automatiza a criação de novas partições por uma determinada faixa ou intervalo (&lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;), de forma que o DBA não precise mais se preocupar em criar novas partições a todo tempo. O Oracle 11g se encarregará desta tarefa de forma automática de acordo com a demanda. Vale a pena salientar que o &lt;a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e16541/part_admin001.htm#BAJHFFBE"&gt;Interval Partitioning&lt;/a&gt; nada mais é que um &lt;span style="font-weight: bold;"&gt;Range Partitioning&lt;/span&gt; aprimorado. Para fixar o conceito, vamos a um exemplo prático:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 11.2.0.1.0 Production on Qua Jun 8 20:00:18 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2010, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    (id  number)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     partition by &lt;span style="color: rgb(0, 153, 0);"&gt;range&lt;/span&gt;(id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  &lt;span style="color: rgb(51, 51, 255);"&gt;5     interval (100)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6      (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7       partition p1 values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;1000&lt;/span&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8      );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima, eu criei uma tabela particionada com apenas uma partição (&lt;span style="font-weight: bold;"&gt;P1&lt;/span&gt;) que armazenará registros com ID até &lt;span style="color: rgb(0, 153, 0);"&gt;999&lt;/span&gt;. Perceberam a palavra-chave &lt;span style="color: rgb(51, 51, 255);"&gt;INTERVAL na linha 5&lt;/span&gt;?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         def_tablespace_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5         interval&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6    from user_part_tables&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION PARTITION_COUNT DEF_TABLESPACE_NAME INTERVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------- --------------- ------------------- --------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;             &lt;span style="color: rgb(255, 0, 0);"&gt;1048575&lt;/span&gt; USERS               &lt;span style="color: rgb(51, 51, 255);"&gt;100&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Pois bem, as linhas inseridas com um ID até 999 residirão na partição &lt;span style="font-weight: bold;"&gt;P1&lt;/span&gt; da tabela T1. &lt;span style="font-weight: bold;"&gt;As linhas inseridas com um ID maior que 999 acionarão a criação de uma nova partição com uma faixa ou intervalo de &lt;span style="color: rgb(51, 51, 255);"&gt;100&lt;/span&gt; cada&lt;/span&gt;, ou seja, o limite superior de cada nova partição sempre terá como base o valor do limite superior da partição mais alta mais &lt;span style="color: rgb(51, 51, 255); font-weight: bold;"&gt;100&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Observaram a coluna &lt;span style="font-weight: bold;"&gt;PARTITION_COUNT&lt;/span&gt; da view &lt;span style="font-weight: bold;"&gt;USER_PART_TABLES&lt;/span&gt; no resultado do SQL acima? No Oracle, o número máximo de partições é limitada em &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;1024K-1&lt;/span&gt;, o que dá &lt;span style="color: rgb(255, 0, 0);"&gt;1048575&lt;/span&gt; partições. Para um melhor entendimento, veja o exemplo abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 select level from dual connect by level &amp;lt;= 1405;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1405 linhas criadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; commit;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Commit concluído.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; analyze table t1 compute statistics;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela analisada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         num_rows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_tab_partitions&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION_NAME  HIGH_VALUE  NUM_ROWS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------------- ----------- --------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          P1              &lt;span style="color: rgb(0, 153, 0);"&gt;1000&lt;/span&gt;             999 &lt;span style="font-style: italic;"&gt;(1-999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P25         &lt;span style="color: rgb(51, 51, 255);"&gt;1100&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1000-1999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P26         &lt;span style="color: rgb(51, 51, 255);"&gt;1200&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1100-1999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P27         &lt;span style="color: rgb(51, 51, 255);"&gt;1300&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1200-1299)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P28         &lt;span style="color: rgb(51, 51, 255);"&gt;1400&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1300-1399)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P29         &lt;span style="color: rgb(51, 51, 255);"&gt;1500&lt;/span&gt;               6 &lt;span style="font-style: italic;"&gt;(1400-1405)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;6 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a inserção de 1405 registros, podemos perceber que o Oracle criou, de forma automática, &lt;span style="color: rgb(51, 51, 255);"&gt;5 partições&lt;/span&gt; afim de acomodar as novas linhas dentro da faixa especificada que foi de &lt;span style="color: rgb(51, 51, 255);"&gt;100&lt;/span&gt; em &lt;span style="color: rgb(51, 51, 255);"&gt;100&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Bom, e se após algum tempo eu precisar ou quiser alterar este intervalo para novas linhas? Sem problemas. Veja o comando abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t1 set INTERVAL (&lt;span style="color: rgb(255, 0, 0);"&gt;5000&lt;/span&gt;);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         def_tablespace_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5         interval&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6    from user_part_tables&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION PARTITION_COUNT DEF_TABLESPACE_NAME INTERVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------- --------------- ------------------- --------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;             1048575 USERS               &lt;span style="color: rgb(255, 0, 0);"&gt;5000&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam que o intervalo agora é de &lt;span style="color: rgb(255, 0, 0);"&gt;5000&lt;/span&gt;? Agora irei inserir novas linhas através do SQL abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2     select id from (select level id&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3                     from dual&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4                     connect by level &amp;lt;= 20000)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5               where id &amp;gt;= 1406;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;18595 linhas criadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; analyze table t1 compute statistics;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela analisada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         num_rows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_tab_partitions;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION_NAME  HIGH_VALUE  NUM_ROWS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------------- ----------- --------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          P1              &lt;span style="color: rgb(0, 153, 0);"&gt;1000&lt;/span&gt;             999 &lt;span style="font-style: italic;"&gt;(1-999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P25         &lt;span style="color: rgb(51, 51, 255);"&gt;1100&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1000-1999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P26         &lt;span style="color: rgb(51, 51, 255);"&gt;1200&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1100-1999)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P27         &lt;span style="color: rgb(51, 51, 255);"&gt;1300&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1200-1299)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P28         &lt;span style="color: rgb(51, 51, 255);"&gt;1400&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1300-1399)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P29         &lt;span style="color: rgb(51, 51, 255);"&gt;1500&lt;/span&gt;             100 &lt;span style="font-style: italic;"&gt;(1400-1499)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P30         &lt;span style="color: rgb(255, 0, 0);"&gt;6500&lt;/span&gt;            5000 &lt;span style="font-style: italic;"&gt;(1500-6499)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P31         &lt;span style="color: rgb(255, 0, 0);"&gt;11500&lt;/span&gt;           5000 &lt;span style="font-style: italic;"&gt;(6500-11499)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P32         &lt;span style="color: rgb(255, 0, 0);"&gt;16500&lt;/span&gt;           5000 &lt;span style="font-style: italic;"&gt;(11500-16499)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          SYS_P33         &lt;span style="color: rgb(255, 0, 0);"&gt;21500&lt;/span&gt;           3501 &lt;span style="font-style: italic;"&gt;(16500-20000)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;10 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos perceber que &lt;span style="color: rgb(255, 0, 0);"&gt;4 novas partições&lt;/span&gt; foram criadas afim de acomodar as novas linhas dentro do intervalo proposto. E se quisermos criar uma tabela particionada tendo como chave da partição uma coluna do tipo &lt;span style="font-weight: bold;"&gt;DATE&lt;/span&gt; na qual os registros fiquem acomodados em partições &lt;span style="font-weight: bold; color: rgb(51, 51, 255);"&gt;mensais&lt;/span&gt;? Veja o exemplo abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; create table t2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2     (data  date)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3      tablespace &lt;span style="color: rgb(255, 102, 0);"&gt;users&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4      partition by &lt;span style="color: rgb(0, 153, 0);"&gt;range&lt;/span&gt;(data)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  &lt;span style="color: rgb(51, 51, 255);"&gt;5      interval(numtoyminterval(1,'month'))&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6      &lt;span style="color: rgb(204, 51, 204);"&gt;store in (tbs01,tbs02,tbs03)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7       (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8        partition p1 values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;to_date('01/01/2011','dd/mm/yyyy')&lt;/span&gt;)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9       );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         interval&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_part_tables&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   where table_name='T2';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION PARTITION_COUNT INTERVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------- --------------- --------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;             1048575 &lt;span style="color: rgb(51, 51, 255);"&gt;NUMTOYMINTERVAL(1,'MONTH')&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima, eu criei uma tabela particionada que irá armazenar os registros de forma mensal tendo como limite superior inicial a data &lt;span style="color: rgb(0, 153, 0);"&gt;01/01/2011&lt;/span&gt;, ou seja, todos os registros com data inferior a &lt;span style="color: rgb(0, 153, 0);"&gt;2011&lt;/span&gt; serão armazenados na partição &lt;span style="font-weight: bold;"&gt;P1&lt;/span&gt;. Vale a pena salientar que os registros da partição &lt;span style="font-weight: bold;"&gt;P1&lt;/span&gt; serão armazenados na tablespace &lt;span style="color: rgb(255, 102, 0);"&gt;USERS&lt;/span&gt; e que os registros das novas partições que forem criadas deverão ser armazenados nas tablespaces &lt;span style="color: rgb(204, 51, 204);"&gt;TBS01&lt;/span&gt;, &lt;span style="color: rgb(204, 51, 204);"&gt;TBS02&lt;/span&gt; e &lt;span style="color: rgb(204, 51, 204);"&gt;TBS03&lt;/span&gt;. O Oracle irá utilizará um algoritmo para balancear os registros nessas &lt;span style="color: rgb(204, 51, 204);"&gt;3 tablespaces&lt;/span&gt;. Abaixo irei inserir alguns registros com data de &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;01/01/2010 em diante&lt;/span&gt; de forma a popular a tabela.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t2 &lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2  select to_date('31/12/2009')+level from dual&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3  connect by level &amp;lt;= 486;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;486 linhas criadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; analyze table t2 compute statistics;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela analisada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         num_rows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_tab_partitions&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   where table_name='T2';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION_NAME  HIGH_VALUE                      NUM_ROWS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------------- ------------------------------- --------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          P1              &lt;span style="color: rgb(0, 153, 0);"&gt;TO_DATE(' 2011-01-01 00:00:00'&lt;/span&gt;       365 &lt;span style="font-style: italic;"&gt;(2010)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          SYS_P61         &lt;span style="color: rgb(51, 51, 255);"&gt;TO_DATE(' 2011-02-01 00:00:00'&lt;/span&gt;        31 &lt;span style="font-style: italic;"&gt;(Jan/2011)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          SYS_P62         &lt;span style="color: rgb(51, 51, 255);"&gt;TO_DATE(' 2011-03-01 00:00:00'&lt;/span&gt;        28 &lt;span style="font-style: italic;"&gt;(Fev/2011)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          SYS_P63         &lt;span style="color: rgb(51, 51, 255);"&gt;TO_DATE(' 2011-04-01 00:00:00'&lt;/span&gt;        31 &lt;span style="font-style: italic;"&gt;(Mar/2011)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          SYS_P64         &lt;span style="color: rgb(51, 51, 255);"&gt;TO_DATE(' 2011-05-01 00:00:00'&lt;/span&gt;        30 &lt;span style="font-style: italic;"&gt;(Abr/2011)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          SYS_P65         &lt;span style="color: rgb(51, 51, 255);"&gt;TO_DATE(' 2011-06-01 00:00:00'&lt;/span&gt;         1 &lt;span style="font-style: italic;"&gt;(Mai/2011)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam como os registros foram acomodados? Todos os registros com data até &lt;span style="color: rgb(0, 153, 0);"&gt;31/12/2010&lt;/span&gt; foram armazenados na partição &lt;span style="font-weight: bold;"&gt;P1&lt;/span&gt;. Para acomodar os demais registros com data superior a &lt;span style="color: rgb(0, 153, 0);"&gt;31/12/2010&lt;/span&gt;, o Oracle criou automaticamente &lt;span style="color: rgb(51, 51, 255);"&gt;5 novas partições&lt;/span&gt; com &lt;span style="font-weight: bold;"&gt;intervalo mensal&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Se por acaso quisermos alterar o intervalo para que novos registros fiquem acomodados de forma &lt;span style="font-weight: bold;"&gt;trimestral&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;semestral&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;anual&lt;/span&gt; ou até mesmo &lt;span style="font-weight: bold;"&gt;diário&lt;/span&gt;, poderemos utilizar os comandos abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;alter table t2 set INTERVAL(NUMTOYMINTERVAL(&lt;span style="font-weight: bold;"&gt;3,'month'&lt;/span&gt;));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;alter table t2 set INTERVAL(NUMTOYMINTERVAL(&lt;span style="font-weight: bold;"&gt;6,'month'&lt;/span&gt;));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;alter table t2 set INTERVAL(NUMTOYMINTERVAL(&lt;span style="font-weight: bold;"&gt;1,'year'&lt;/span&gt;));&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;alter table t2 set INTERVAL(NUMTODSINTERVAL(&lt;span style="font-weight: bold;"&gt;1,'day'&lt;/span&gt;));&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Se quisermos desabilitar o recurso de criação automática de partições para a tabela T2, poderemos utilizar o comando abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;alter table t2 set INTERVAL();&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No mais, poderíamos alterar o intervalo para que o mesmo fosse anual como demonstrado no comando abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; alter table t2 set &lt;span style="color: rgb(51, 51, 255);"&gt;INTERVAL(NUMTOYMINTERVAL(1,'year'))&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         interval&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_part_tables&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   where table_name='T2';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION PARTITION_COUNT INTERVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------- --------------- -------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T2          &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;             1048575 &lt;span style="color: rgb(51, 51, 255);"&gt;NUMTOYMINTERVAL(1,'YEAR')&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;font-size:85%;"  &gt;Existem algumas restrições para seu uso:&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * Não pode ser utilizado em tabelas do tipo IOT (Index Organized Tables)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * A coluna chave da partição deverá ser obrigatoriamente do tipo DATE ou NUMBER&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * Não poderá ser criado nenhum índice de domínio (Domain Indexes)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * Não é suportado no nível de sub-partição&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Neste momento, alguém poderia estar se perguntando. É possível exportar essas tabelas particionadas (Interval Partitioning) para o &lt;span style="font-weight: bold; color: rgb(255, 0, 0);"&gt;Oracle 10g&lt;/span&gt;? &lt;span style="font-weight: bold;"&gt;Sim&lt;/span&gt;. A tabela será importada no Oracle 10g sem problemas, mas as mesmas serão criadas com particionamento do tipo &lt;span style="font-weight: bold;"&gt;&lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt; somente&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-family:courier new;font-size:85%;"  &gt;Exportando a tabela T1 no Oracle 11g para ser importada no Oracle 10g&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;expdp scott/tiger directory=data_pump_dir&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;    dumpfile=t1 tables=t1 &lt;span style="color: rgb(255, 0, 0); font-weight: bold;"&gt;version=10.2&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Export: Release &lt;span style="color: rgb(255, 0, 0);"&gt;11.2.0.1.0&lt;/span&gt; - Production on Qua Jun 8 20:41:12 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Produc&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP, Data Mining and Real Application Testing options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando "SCOTT"."SYS_EXPORT_TABLE_01":  scott/********&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;directory=data_pump_dir dumpfile=t1 tables=t1 version=10.2&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Estimativa em andamento com o método BLOCKS...&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE_DATA&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Estimativa total usando o método de BLOCKS: 896 KB&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P30"                    43.95 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P31"                    45.42 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P32"                    48.83 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P33"                    35.67 KB    3501 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"P1"                         12.64 KB     999 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P25"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P26"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P27"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P28"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . exportou "SCOTT"."T1":"SYS_P29"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela-mestre "SCOTT"."SYS_EXPORT_TABLE_01" carregada/descarregada com sucesso&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;******************************************************************************&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-family:courier new;font-size:85%;"  &gt;Importando a tabela T2 no Oracle 10g&lt;/span&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;impdp scott/tiger dumpfile=t1 tables=t1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Import: Release &lt;span style="color: rgb(255, 0, 0);"&gt;10.2.0.1.0&lt;/span&gt; - Production on Quarta-Feira, 08 Junho, 2011 20:54:23&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 2003, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Produc&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela-mestre "SCOTT"."SYS_IMPORT_TABLE_01" carregada/descarregada com sucesso&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Iniciando "SCOTT"."SYS_IMPORT_TABLE_01":  scott/******** dumpfile=t1 tables=t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/TABLE_DATA&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P30"                    43.95 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P31"                    45.42 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P32"                    48.83 KB    5000 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P33"                    35.67 KB    3501 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"P1"                         12.64 KB     999 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P25"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P26"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P27"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P28"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;. . importou "SCOTT"."T1":"SYS_P29"                    5.718 KB     100 linhas&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Processando o tipo de objeto TABLE_EXPORT/TABLE/STATISTICS/TABLE_STATISTICS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;O job "SCOTT"."SYS_IMPORT_TABLE_01" foi concluído com sucesso em 20:54:58&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;C:\&amp;gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Qua Jun 8 21:13:48 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         def_tablespace_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_part_tables&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6   where table_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITITION  PARTITION_COUNT DEF_TABLESPACE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- ------------ --------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;                     &lt;span style="color: rgb(51, 51, 255);"&gt;10&lt;/span&gt; USERS&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-8228058805832124880?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/8228058805832124880/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=8228058805832124880' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/8228058805832124880'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/8228058805832124880'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/06/interval-partitioning-abordando-um.html' title='Interval Partitioning. Abordando um conceito de particionamento por intervalo do Oracle 11g.'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-7737559931291052418</id><published>2011-05-17T14:02:00.020-03:00</published><updated>2011-09-11T10:25:44.017-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='table partition'/><category scheme='http://www.blogger.com/atom/ns#' term='tablespace'/><category scheme='http://www.blogger.com/atom/ns#' term='table'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='segmento'/><title type='text'>Qual é mesmo o tamanho de uma tabela no Oracle?</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Através das views de dicionário de dados DBA/ALL/USER_SEGMENTS, pode-se facilmente obter essa informação, e de várias formas. No entanto, a intenção deste artigo é demonstrar que o tamanho de uma tabela (em bytes) vai muito além do que focar especificamente no segmento da tabela. Sabemos que no Oracle existem vários tipos de &lt;a href="http://eduardolegatti.blogspot.com/2008/03/introduo-ao-conceito-de-tablespaces.html"&gt;segmentos&lt;/a&gt;, como segmentos de tabela, índice, lob (large objects), undo, temp, partition, ente outros, mas irei focar naqueles que geralmente estão mais presentes na maioria dos schemas de banco de dados. &lt;span style="font-weight: bold;"&gt;Possivelmente alguém não irá concordar comigo, mas, na minha visão, o tamanho real de uma tabela compõe-se não só do tamanho do seu próprio segmento, mas também da soma do tamanho de todos os outros segmentos que dependem dela&lt;/span&gt;. Para demonstrar tais informações, eu criei uma query que mostra essas informações logo mais abaixo.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Bom, após criar 9 tabelas devidamente populadas no meu schema de banco de dados, a soma do tamanho de todos os segmentos foi de aproximadamente &lt;span style="font-weight: bold;"&gt;3,14 GB&lt;/span&gt; como demonstrado pela query abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/-DWvbJnTPnK8/Tl6VX2Gr_PI/AAAAAAAAArw/58iLwIlj1mA/s1600/figura1.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://3.bp.blogspot.com/-DWvbJnTPnK8/Tl6VX2Gr_PI/AAAAAAAAArw/58iLwIlj1mA/s800/figura1.JPG" alt="" id="BLOGGER_PHOTO_ID_5647115219662273778" border="0" /&gt;&lt;/a&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Vale a pena salientar que algumas dessas tabelas são &lt;a href="http://eduardolegatti.blogspot.com/2011/02/executando-operacoes-de-manutencao-em.html"&gt;particionadas&lt;/a&gt;, outras possuem índices normais, locais ou globais, e outras tabelas possuem colunas do tipo CLOB. Portanto, podemos verificar pelo resultado da query acima que a criação de 9 tabelas gerou um total de &lt;span style="font-weight: bold;"&gt;250&lt;/span&gt; segmentos. Agora irei executar a &lt;a href="http://dl.dropbox.com/u/15423203/oracle/user_size_tables.sql"&gt;query que eu criei&lt;/a&gt; de forma a demonstrar como esses &lt;span style="font-weight: bold;"&gt;3,14 GB&lt;/span&gt; estão distribuídos entre essas 9 tabelas.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;div style="text-align: justify;"&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;a href="http://2.bp.blogspot.com/-VwaMERBHU5A/Tl6VjjXXlCI/AAAAAAAAAr4/1X6JQBKRtYY/s1600/figura2.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-VwaMERBHU5A/Tl6VjjXXlCI/AAAAAAAAAr4/1X6JQBKRtYY/s800/figura2.JPG" alt="" id="BLOGGER_PHOTO_ID_5647115420790395938" border="0" /&gt;&lt;/a&gt;&lt;/span&gt;&lt;a href="http://2.bp.blogspot.com/-VwaMERBHU5A/Tl6VjjXXlCI/AAAAAAAAAr4/1X6JQBKRtYY/s1600/figura2.JPG"&gt;&lt;span style="display: block;" id="formatbar_Buttons"&gt;&lt;span onmouseover="ButtonHoverOn(this);" onmouseout="ButtonHoverOff(this);" onmouseup="" onmousedown="CheckFormatting(event);FormatbarButton('richeditorframe', this, 8);ButtonMouseDown(this);" class=" down" style="display: block;" id="formatbar_CreateLink" title=""&gt;&lt;img src="http://www.blogger.com/img/blank.gif" alt="Link" class="gl_link" border="0" /&gt;&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;&lt;a href="http://2.bp.blogspot.com/-IzrZn5tojbI/Tl6V2PGRvfI/AAAAAAAAAsA/kN9P_dWYZhc/s1600/figura3.JPG"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://2.bp.blogspot.com/-IzrZn5tojbI/Tl6V2PGRvfI/AAAAAAAAAsA/kN9P_dWYZhc/s800/figura3.JPG" alt="" id="BLOGGER_PHOTO_ID_5647115741767515634" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Perceberam que do total de &lt;span style="font-weight: bold;"&gt;3216,19 MB&lt;/span&gt;, &lt;span style="color: rgb(51, 51, 255);"&gt;33% (1066,75 MB)&lt;/span&gt; representam segmentos de dados de tabela, &lt;span style="color: rgb(255, 0, 0);"&gt;47% (1493,25 MB)&lt;/span&gt; segmentos de índices e &lt;span style="color: rgb(0, 153, 0);"&gt;20% (656,19 MB)&lt;/span&gt; segmentos de lob? O gráfico abaixo nos dá uma visão mais clara.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://1.bp.blogspot.com/-aq3osUN-21k/TdKt_mUmqbI/AAAAAAAAAos/g5Jv324KWW8/s1600/grafico.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://1.bp.blogspot.com/-aq3osUN-21k/TdKt_mUmqbI/AAAAAAAAAos/g5Jv324KWW8/s800/grafico.png" alt="" id="BLOGGER_PHOTO_ID_5607735794160019890" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Através das informações retornadas pela query, vemos que o segmento de dados da tabela &lt;span style="font-weight: bold;"&gt;T1&lt;/span&gt; possui um tamanho de 576 MB (em aproximadamente 6 milhões de linhas), e que os índices desta tabela somam 1160 MB dando um total de 1736 MB. Portanto, &lt;span style="font-weight: bold;"&gt;na minha visão&lt;/span&gt;, o tamanho real desta tabela é de 1736 MB, e não 576 MB como muitos poderão dizer. &lt;span style="font-weight: bold;"&gt;Lembrem-se de que eu não estou falando apenas do segmento de tabela (T1), mas de todos os outros que dependem dela, como segmentos de índice e de lob por exemplo&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Vejamos agora a tabela &lt;span style="font-weight: bold;"&gt;T4&lt;/span&gt;. Apesar do tamanho do seu segmento de dados ter apenas 4 MB, a mesma tem como dependentes um ou mais índices que somam 0,5 MB e um ou mais segmentos lob que somam 287 MB. &lt;span style="font-weight: bold;"&gt;Portanto, para mim, o tamanho real desta tabela é de 291,5 MB e não apenas 4 MB&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Se alguém me perguntasse qual o espaço necessário que precisaria ser alocado na &lt;a href="http://eduardolegatti.blogspot.com/2008/03/introduo-ao-conceito-de-tablespaces.html"&gt;tablespace&lt;/a&gt; para duplicar as linhas da tabela &lt;span style="font-weight: bold;"&gt;T6&lt;/span&gt; nela própria, eu diria que precisaríamos de no mínimo 487,44 MB e não 236,44 MB.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Portanto, deixo aqui a dica &lt;span style="font-weight: bold;"&gt;e o meu ponto de vista&lt;/span&gt; de não apenas focarmos no tamanho do segmento da tabela, mas também de prestarmos atenção em todos os outros segmentos dependentes dela. Isso com certeza fará diferença quando fizermos algum trabalho relacionado à estimativa para alocação de espaço destes objetos, ou até mesmo nas estimativas de espaço necessárias para uma migração de dados, etc...&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Por fim, o gráfico abaixo nos mostra todos os tipos de segmentos que foram criados e a proporção de espaço alocado de cada um.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;a href="http://4.bp.blogspot.com/-inz0674lH8E/TdKuS6qoANI/AAAAAAAAAo0/Q7j82zxLU4A/s1600/grafico2.png"&gt;&lt;img style="display: block; margin: 0px auto 10px; text-align: center; cursor: pointer;" src="http://4.bp.blogspot.com/-inz0674lH8E/TdKuS6qoANI/AAAAAAAAAo0/Q7j82zxLU4A/s800/grafico2.png" alt="" id="BLOGGER_PHOTO_ID_5607736126038606034" border="0" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-7737559931291052418?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/7737559931291052418/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=7737559931291052418' title='0 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/7737559931291052418'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/7737559931291052418'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/05/qual-e-mesmo-o-tamanho-de-uma-tabela-no.html' title='Qual é mesmo o tamanho de uma tabela no Oracle?'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/-DWvbJnTPnK8/Tl6VX2Gr_PI/AAAAAAAAArw/58iLwIlj1mA/s72-c/figura1.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-8015590896338834593</id><published>2011-05-02T17:52:00.003-03:00</published><updated>2011-05-02T18:20:57.251-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='last_ddl_time'/><category scheme='http://www.blogger.com/atom/ns#' term='timestamp'/><category scheme='http://www.blogger.com/atom/ns#' term='dba_objects'/><category scheme='http://www.blogger.com/atom/ns#' term='user_objetcs'/><category scheme='http://www.blogger.com/atom/ns#' term='all_objects'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><title type='text'>LAST_DDL_TIME vs TIMESTAMP nas views DBA/ALL/USER_OBJECTS. Tem diferença?</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Não é raro muita gente confundir essas duas colunas existentes nas views de dicionário de dados DBA/ALL/USER_OBJECTS. Afinal, qual é a diferença entre elas? Quando é que a informação de data e horário de uma é atualizada e da outra não? Pois bem, vamos então a alguns exemplos práticos de forma a demonstrar essa diferença.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&amp;gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Seg Mai 2 11:49:38 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; desc user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; Nome                          Nulo?    Tipo&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; ----------------------------- -------- ----------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; OBJECT_NAME                            VARCHAR2(128)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; SUBOBJECT_NAME                         VARCHAR2(30)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; OBJECT_ID                              NUMBER&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; DATA_OBJECT_ID                         NUMBER&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; OBJECT_TYPE                            VARCHAR2(19)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; &lt;span style="color: rgb(0, 153, 0);"&gt;CREATED                                DATE&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME                          DATE&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;TIMESTAMP                              VARCHAR2(19)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; STATUS                                 VARCHAR2(7)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; TEMPORARY                              VARCHAR2(1)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; GENERATED                              VARCHAR2(1)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; SECONDARY                              VARCHAR2(1)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Primeiramente, podemos perceber que &lt;span style="font-weight: bold;"&gt;LAST_DDL_TIME&lt;/span&gt; é uma coluna do tipo &lt;span style="color: rgb(255, 0, 0);"&gt;DATE&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;TIMESTAMP&lt;/span&gt;, por incrível que pareça, é um &lt;span style="color: rgb(255, 0, 0);"&gt;VARCHAR2(19)&lt;/span&gt;. Irei criar abaixo uma tabela de exemplo e realizar algumas operações nela.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; create table t1 (id number);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              &lt;span style="color: rgb(0, 153, 0);"&gt;02/05/2011 11:59:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 11:59:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;2011-05-02:11:59:00&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima, podemos perceber que tanto a coluna &lt;span style="color: rgb(0, 153, 0);"&gt;CREATED&lt;/span&gt;, como &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME&lt;/span&gt; e &lt;span style="color: rgb(51, 51, 255);"&gt;TIMESTAMP&lt;/span&gt; possuem a mesma informação de data e horário. O que acontece se modificarmos a estrutura da tabela?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter table t1 modify id number(10,2);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              02/05/2011 11:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:00:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;2011-05-02:12:00:00&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Ambas as colunas LAST_DDL_TIME e TIMESTAMP tiveram suas informações atualizadas. Mas, o que acontece agora se eu simplesmente conceder alguns privilégios (SELECT por exemplo) para algum outro usuário?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; grant select on t1 to adam;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Concessão bem-sucedida.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              02/05/2011 11:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:02:00&lt;/span&gt; 2011-05-02:12:00:00&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos perceber que somente a coluna &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME&lt;/span&gt; teve sua informação atualizada, apesar do comando &lt;span style="font-weight: bold;"&gt;GRANT&lt;/span&gt; ser um comando DCL (Data Control Language). No mais, podemos perceber abaixo que o comando &lt;span style="font-weight: bold;"&gt;REVOKE&lt;/span&gt; terá o mesmo efeito apenas na coluna &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; revoke select on t1 from adam;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Revogação bem-sucedida.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              02/05/2011 11:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:04:00&lt;/span&gt; 2011-05-02:12:00:00&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Existem mais comandos que afetam apenas a coluna LAST_DDL_TIME e não a coluna TIMESTAMP? Sim.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter table t1 move;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              02/05/2011 11:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:06:00&lt;/span&gt; 2011-05-02:12:00:00&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; insert into t1 values (1);&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;1 linha criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; commit;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Commit concluído.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; truncate table t1;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela truncada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='T1';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              02/05/2011 11:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:08:00&lt;/span&gt; 2011-05-02:12:00:00&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam que o comando &lt;span style="font-weight: bold;"&gt;ALTER TABLE MOVE...&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;TRUNCATE TABLE...&lt;/span&gt; atualizaram apenas a coluna &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME&lt;/span&gt;? Irei agora realizar o mesmo teste só que agora com uma FUNCTION. (obs: Poderia também ser uma STORED PROCEDURE ou uma TRIGGER).&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; create or replace function data_atual return date is&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  2   data date;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  3  begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  4     select sysdate into data from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  5     return data;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  6  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Função criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='DATA_ATUAL';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;DATA_ATUAL      &lt;span style="color: rgb(0, 153, 0);"&gt;02/05/2011 12:59:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 12:59:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;2011-05-02:12:59:00&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima, podemos perceber que tanto a coluna &lt;span style="color: rgb(0, 153, 0);"&gt;CREATED&lt;/span&gt;, como &lt;span style="color: rgb(51, 51, 255);"&gt;LAST_DDL_TIME&lt;/span&gt; e &lt;span style="color: rgb(51, 51, 255);"&gt;TIMESTAMP&lt;/span&gt; possuem a mesma informação de data e horário. O que acontece se modificarmos o código PL/SQL da função?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; create or replace function data_atual return date is&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  2   data date;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  3  begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  4     select sysdate&lt;span style="color: rgb(255, 0, 0);"&gt;+1&lt;/span&gt; into data from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  5     return data;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  6  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;  7  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Função criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='DATA_ATUAL';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;DATA_ATUAL      02/05/2011 12:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 13:00:00&lt;/span&gt; &lt;span style="color: rgb(51, 51, 255);"&gt;2011-05-02:13:00:00&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Ambas as colunas LAST_DDL_TIME e TIMESTAMP tiveram suas informações atualizadas. Mas, o que acontece se eu simplesmente conceder alguns privilégios (EXECUTE por exemplo) para algum outro usuário?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; grant execute on data_atual to adam;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Concessão bem-sucedida.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='DATA_ATUAL';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;DATA_ATUAL      02/05/2011 12:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 13:02:00&lt;/span&gt; 2011-05-02:13:00:00&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos perceber que somente a coluna LAST_DDL_TIME teve sua informação atualizada. Vale a penas salientar que o comando &lt;span style="font-weight: bold;"&gt;REVOKE&lt;/span&gt; terá o mesmo efeito. O que acontece agora se apenas compilarmos a função sem qualquer alteração em seu código fonte?&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;" &gt;SQL&amp;gt; alter function data_atual compile;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Função alterada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&amp;gt; select object_name,created,last_ddl_time,timestamp&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    from user_objects&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3   where object_name='DATA_ATUAL';&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;OBJECT_NAME     CREATED             LAST_DDL_TIME       TIMESTAMP&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;--------------- ------------------- ------------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;DATA_ATUAL      02/05/2011 12:59:00 &lt;span style="color: rgb(51, 51, 255);"&gt;02/05/2011 13:04:00&lt;/span&gt; 2011-05-02:13:00:00&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Novamente podemos perceber que somente a coluna LAST_DDL_TIME teve sua informação atualizada.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(51, 51, 255);font-size:85%;" &gt;&lt;span style="font-family:courier new;"&gt;Em resumo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;A coluna &lt;span style="font-weight: bold;"&gt;LAST_DDL_TIME&lt;/span&gt; armazena a informação de data e horário sobre a última vez quando o objeto foi modificado por uma intrução DDL, incluindo alguns comandos que envolvam modificações no nível de extensões (extents) do segmento. Vale a pena salientar que essa modificação também vale para comandos DCL como (GRANT e REVOKE) que foram lançados sobre o objeto. Isso também vale para os objetos PL/SQL como functions, stored procedures, triggers, entre outros, incluindo-se o comando COMPILE executado sobre o mesmo.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Por fim, a coluna &lt;span style="font-weight: bold;"&gt;TIMESTAMP&lt;/span&gt; armazena a informação de data e horário sobre a última vez quando o objeto foi modificado, excluindo-se qualquer operação DCL (GRANT, REVOKE) e excluindo-se também alguns comandos DDL que afetem o objeto no nível de extensões (extents) do segmento. No caso de objetos PL/SQL, exclui-se também o comando COMPILE.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Portanto, se quiser saber realmente quando houve alguma modificação estrutural na tabela ou alguma modificação no código de um de objeto PL/SQL, confie na coluna TIMESTAMP.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-8015590896338834593?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/8015590896338834593/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=8015590896338834593' title='1 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/8015590896338834593'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/8015590896338834593'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/05/lastddltime-vs-timestamp-nas-views.html' title='LAST_DDL_TIME vs TIMESTAMP nas views DBA/ALL/USER_OBJECTS. Tem diferença?'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-1926549731409469606</id><published>2011-04-03T15:02:00.003-03:00</published><updated>2011-04-03T16:10:57.295-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='table partition'/><category scheme='http://www.blogger.com/atom/ns#' term='partições'/><category scheme='http://www.blogger.com/atom/ns#' term='dbms_redefinition'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><title type='text'>Particionando uma tabela on-line com o pacote DBMS_REDEFINITION</title><content type='html'>&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No artigo de &lt;a href="http://eduardolegatti.blogspot.com/2011/02/executando-operacoes-de-manutencao-em.html"&gt;Fevereiro/2011&lt;/a&gt; eu apresentei uma breve introdução sobre tabelas particionadas e alguns exemplos práticos de algumas das operações básicas que podemos realizar sobre as partições mas mesmas. Neste artigo irei demonstrar como poderemos particionar uma tabela (on-line) fazendo uso do pacote &lt;a href="http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_redefi.htm"&gt;DBMS_REDEFINITION&lt;/a&gt; disponível desde a versão do Oracle 9i. Para isso irei criar duas tabelas na qual a tabela filha (alvo da particionamento), possuirá além de índices, uma Foreign key constraint para a tabela pai. Vamos então ao exemplo prático.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;C:\&amp;gt;&lt;span style="font-weight: bold;"&gt;sqlplus scott/tiger&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Dom Abr 3 14:08:20 2011&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Conectado a:&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; create table &lt;span style="color: rgb(0, 153, 0);"&gt;pai&lt;/span&gt; (cod_grupo number constraint pk_pai primary key);&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Tabela criada.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; create table &lt;span style="color: rgb(255, 0, 0);"&gt;filho&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2   (id number constraint pk_filho primary key,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3    cod_grupo number not null,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    data date not null&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5   );&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Tabela criada.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; create index idx_filho_codgrupo on &lt;span style="color: rgb(255, 0, 0);"&gt;filho&lt;/span&gt; (cod_grupo);&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Índice criado.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; alter table &lt;span style="color: rgb(255, 0, 0);"&gt;filho&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2  add constraint fk_filho_pai&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3  foreign key (cod_grupo) references &lt;span style="color: rgb(0, 153, 0);"&gt;pai&lt;/span&gt;;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Tabela alterada.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select * from &lt;span style="color: rgb(0, 153, 0);"&gt;pai&lt;/span&gt;;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt; COD_GRUPO&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;----------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;        10&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;        20&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;        30&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select * from &lt;span style="color: rgb(255, 0, 0);"&gt;filho&lt;/span&gt;;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;        ID  COD_GRUPO DATA&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;---------- ---------- -------------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         1         10 03/04/2011 14:10:19&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         2         10 03/04/2011 14:10:20&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         3         10 03/04/2011 14:10:21&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         4         20 03/04/2011 14:10:22&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         5         20 03/04/2011 14:10:23&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         6         20 03/04/2011 14:10:24&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         7         30 03/04/2011 14:10:25&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         8         30 03/04/2011 14:10:26&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         9         30 03/04/2011 14:10:27&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;9 linhas selecionadas.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a criação das tabelas, eu inseri alguns registros de teste como demonstrado acima.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select constraint_name,constraint_type &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from user_constraints &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   where table_name='&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;CONSTRAINT_NAME                C&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ -&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;SYS_C004411                    C&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;SYS_C004412                    C&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;PK_FILHO                       P&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;FK_FILHO_PAI                   R&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima estão listadas todas as constraints da tabela &lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select index_name &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from user_indexes &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   where table_name='&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;INDEX_NAME&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;PK_FILHO&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;IDX_FILHO_CODGRUPO&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Acima estão listadas todas os índices da tabela filho. Bom, agora irei iniciar o processo de particionamento on-line da tabela &lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;. Para isso irei conectar com o usuário &lt;span style="font-weight: bold;"&gt;SYSTEM&lt;/span&gt; que possui privilégios DBA.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:100%;"  &gt;SQL&amp;gt; connect system/******&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Conectado.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; BEGIN&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2  DBMS_REDEFINITION.&lt;span style="color: rgb(51, 51, 255);"&gt;CAN_REDEF_TABLE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   (uname=&amp;gt;'&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    tname=&amp;gt;'&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5    options_flag=&amp;gt;DBMS_REDEFINITION.CONS_USE_PK);&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  6  END;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  7  /&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;O primeiro passo executado acima foi realizado para verificar se a tabela é passível de redefinição on-line. Se a tabela não fosse uma candidata para tal, a procedure iria retornar um erro indicando o motivo de a mesma não poder ser redefinida de forma on-line. Vale a pena salientar que eu utilizei a opção &lt;span style="font-weight: bold;"&gt;CONS_USE_PK&lt;/span&gt; pois a mesma possui um Primary Key definida. Se não fosse o caso, poderíamos utilizar a opção &lt;span style="font-weight: bold;"&gt;CONS_USE_ROWID&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;O próximo passo será criar uma tabela temporária (interim) com a mesma estrutura da tabela alvo do particionamento, só que agora particionada. Neste caso irei criar uma tabela particionada por HASH.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; create table SCOTT.&lt;span style="color: rgb(255, 153, 0);"&gt;interim&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2   (&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3    id number,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    cod_grupo number,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5    data date&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  6   )&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  7    partition by hash (cod_grupo)&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  8     (&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  9      partition ph01_filho tablespace users,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt; 10      partition ph02_filho tablespace users,&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt; 11      partition ph03_filho tablespace users&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt; 12     )&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt; 13  enable row movement;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Tabela criada.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Percebam a falta de constraints &lt;span style="font-weight: bold;"&gt;NOT NULL&lt;/span&gt; na definição da tabela INTERIM. &lt;span style="font-weight: bold;"&gt;Isso é importante para evitar qualquer problema na execução dos passos seguintes&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; BEGIN&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2  DBMS_REDEFINITION.&lt;span style="color: rgb(51, 51, 255);"&gt;START_REDEF_TABLE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   (uname=&amp;gt;'&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    orig_table=&amp;gt;'&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5    int_table=&amp;gt;'&lt;span style="color: rgb(255, 153, 0);"&gt;INTERIM&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  6    options_flag=&amp;gt;DBMS_REDEFINITION.CONS_USE_PK);&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  7  END;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  8  /&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;O procedimento acima inicia o processo de redefinição on-line da tabela FILHO. Irei verificar abaixo o que este procedimento realmente fez.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; col query format a30&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select mview_name,container_name,query &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from dba_mviews &lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   where owner='&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;MVIEW_NAME        CONTAINER_NAME     QUERY&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;----------------- ------------------ --------------------------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;INTERIM           INTERIM            SELECT "FILHO"."ID" "ID",&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;                                     "FILHO"."COD_GRUPO" "COD_GRUPO",&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;                                     "FILHO"."DATA" "DATA"&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;                                     FROM "SCOTT"."FILHO" "FILHO"&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select master,log_table from dba_mview_logs where log_owner='SCOTT';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;MASTER                         LOG_TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ ------------------------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;FILHO                          MLOG$_FILHO&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Podemos perceber que não somente uma view materializada, mas também um log de view materializada foi automaticamente criada para dar suporte às operações DML que porventura sejam realizadas na tabela original durante a fase da redefinição on-line. Para dar continuidade ao próximo de redefinição on-line, abaixo executarei o procedimento para copiar os objetos dependentes para a tabela &lt;span style="color: rgb(255, 153, 0);"&gt;INTERIM&lt;/span&gt; como constraints e índices.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; var num_errors number&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; BEGIN&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2  DBMS_REDEFINITION.&lt;span style="color: rgb(51, 51, 255);"&gt;COPY_TABLE_DEPENDENTS&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   (uname=&amp;gt;'&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    orig_table=&amp;gt;'&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5    int_table=&amp;gt;'&lt;span style="color: rgb(255, 153, 0);"&gt;INTERIM&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  6    num_errors=&amp;gt;:num_errors);&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  7  END;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  8  /&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; print num_errors&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;NUM_ERRORS&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;----------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;         0&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Após a execução da etapa acima podemos verificar os objetos atualmente criados no schema SCOTT.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select object_name,subobject_name,object_type&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from dba_objects&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   where owner='&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;OBJECT_NAME                    SUBOBJECT_NAME                 OBJECT_TYPE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ ------------------------------ -------------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;font-size:100%;"  &gt;PK_PAI                                                        INDEX&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;font-size:100%;"  &gt;PAI                                                           TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;FILHO                                                         TABLE&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;PK_FILHO                                                      INDEX&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;IDX_FILHO_CODGRUPO                                            INDEX&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;INTERIM                        PH03_FILHO                     TABLE PARTITION&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;INTERIM                        PH02_FILHO                     TABLE PARTITION&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;INTERIM                        PH01_FILHO                     TABLE PARTITION&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;INTERIM                                                       TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;MLOG$_FILHO                                                   TABLE&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;RUPD$_FILHO                                                   TABLE&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;TMP$$_PK_FILHO0                                               INDEX&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;TMP$$_IDX_FILHO_CODGRUPO0                                     INDEX&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;13 linhas selecionadas.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Por fim, poderemos finalizar o processo de redefinição on-line.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; BEGIN&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2  DBMS_REDEFINITION.&lt;span style="color: rgb(51, 51, 255);"&gt;FINISH_REDEF_TABLE&lt;/span&gt;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   (uname=&amp;gt;'&lt;span style="font-weight: bold;"&gt;SCOTT&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  4    orig_table=&amp;gt;'&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;',&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  5    int_table=&amp;gt;'&lt;span style="color: rgb(255, 153, 0);"&gt;INTERIM&lt;/span&gt;');&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  6  END;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  7  /&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:100%;"  &gt;SQL&amp;gt; connect scott/tiger&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Conectado.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select * from cat;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;TABLE_NAME                     TABLE_TYPE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ -----------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;font-size:100%;"  &gt;PAI                            TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 153, 0);font-family:courier new;font-size:100%;"  &gt;INTERIM                        TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;FILHO                          TABLE&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Neste momento não precisaremos mais da tabela temporária &lt;span style="color: rgb(255, 153, 0);"&gt;INTERIM&lt;/span&gt;. Portanto poderemos dropá-la de forma segura.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:100%;"  &gt;SQL&amp;gt; drop table interim;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;Tabela eliminada.&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No mais, poderemos ver abaixo que a tabela &lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt; foi particionada de forma on-line apenas utilizando o pacote &lt;span style="font-weight: bold;"&gt;DBMS_REDEFINITION&lt;/span&gt;.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select table_name,partitioning_type,partition_count&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from user_part_tables;&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;TABLE_NAME                     PARTITI PARTITION_COUNT&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ ------- ---------------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;FILHO                          HASH                  3&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select constraint_name,constraint_type,status&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2    from user_constraints&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3   where table_name='&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;CONSTRAINT_NAME                C STATUS&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ - --------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;SYS_C004411                    C ENABLED&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;SYS_C004412                    C ENABLED&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;PK_FILHO                       P ENABLED&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;FK_FILHO_PAI                   R ENABLED&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;SQL&amp;gt; select index_name,status&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  2   from user_indexes&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;  3  where table_name='&lt;span style="color: rgb(255, 0, 0);"&gt;FILHO&lt;/span&gt;';&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;INDEX_NAME                     STATUS&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:100%;"&gt;------------------------------ --------&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;PK_FILHO                       VALID&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-size:100%;" &gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;font-size:100%;"  &gt;IDX_FILHO_CODGRUPO             VALID&lt;/span&gt;&lt;span style="font-size:100%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-1926549731409469606?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/1926549731409469606/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=1926549731409469606' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1926549731409469606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1926549731409469606'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/04/particionando-uma-tabela-on-line-com-o.html' title='Particionando uma tabela on-line com o pacote DBMS_REDEFINITION'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-1897323393792493136</id><published>2011-03-01T22:05:00.003-03:00</published><updated>2011-03-01T22:26:41.207-03:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='rac'/><category scheme='http://www.blogger.com/atom/ns#' term='sequence'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Abordando o uso de sequências no Oracle em um ambiente RAC ...</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Para quem se recorda do artigo de &lt;a href="http://eduardolegatti.blogspot.com/2008/11/coluna-do-tipo-auto-incremento-no.html"&gt;Novembro/2008&lt;/a&gt; - Coluna do tipo auto-incremento no Oracle? Abordando o uso de seqüências no Oracle, viu como criar e utilizar o objeto sequence no Oracle. Como informação adicional, recentemente realizei alguns testes com diferentes tamanhos de cache (em um ambiente single instance) como demonstrado abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; set timing on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2   for i in 1..10000000 loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     insert into t1 select &lt;span style="font-weight: bold;"&gt;seq_teste_nocache&lt;/span&gt;.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     if mod(i, 10000) = 0 then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5        commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     end if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Decorrido: 00:24:10.22 (24 minutos e 10 segundos)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; set timing on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2   for i in 1..10000000 loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     insert into t1 select &lt;span style="font-weight: bold;"&gt;seq_teste_cache20&lt;/span&gt;.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     if mod(i, 10000) = 0 then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5        commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     end if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Decorrido: 00:05:14.10 (5 minutos e 14 segundos)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; set timing on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2   for i in 1..10000000 loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     insert into t1 select &lt;span style="font-weight: bold;"&gt;seq_teste_cache1000&lt;/span&gt;.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     if mod(i, 10000) = 0 then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5        commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     end if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Decorrido: 00:04:26.88 (4 minutos e 26 segundos)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; set timing on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2   for i in 1..10000000 loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     insert into t1 select &lt;span style="font-weight: bold;"&gt;seq_teste_cache10000&lt;/span&gt;.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     if mod(i, 10000) = 0 then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5        commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     end if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Decorrido: 00:04:25.89 (4 minutos e 25 segundos)&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; set timing on;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; begin&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2   for i in 1..10000000 loop&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     insert into t1 select &lt;span style="font-weight: bold;"&gt;seq_teste_cache50000&lt;/span&gt;.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     if mod(i, 10000) = 0 then&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5        commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6     end if;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7   end loop;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8   commit;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9  end;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10  /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-weight: bold; color: rgb(255, 0, 0);font-family:courier new;" &gt;Decorrido: 00:04:25.80 (4 minutos e 25 segundos)&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam a diferença na performance das execuções? Uma sequence criada com NOCACHE teve o pior desempenho, isso porque a cada valor recuperado da sequence o Oracle precisa atualizar o dicionário de dados com o próximo valor e isso gera uma overhead de I/O absurda. No mais, segundo os testes acima, não haverão muitos benefícios se utilizarmos cache maiores que 50000. Portanto, no geral o ideal seria ter um cache entre 1000 e 10000 para efeitos de boa performance. Vale a pena avaliar!&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No mais, o objetivo deste artigo é demonstrar que em um ambiente RAC, &lt;span style="font-weight: bold;"&gt;os caches das sequences são armazenados em cada nó (node) do cluster e que existe diferença se a mesma é criada com a cláusula ORDER ou NOORDER&lt;/span&gt;. Por padrão, as sequences são criadas como NOORDER. Existem algumas desvantagens (uma overhead a mais) em utilizar a cláusula ORDER em um ambiente RAC, pois os valores das sequências precisam ser sincronizados entre os nós do RAC através de um serviço global de cache e, neste caso, acontece um evento chamado "GLOBAL LOCK". No artigo de &lt;a href="http://www.pythian.com/news/383/sequences-in-oracle-10g-rac/"&gt;Christo Kutrovsky&lt;/a&gt;, existe uma demonstração de como os valores das sequências são retornados quando a mesma é criada com a cláusula ORDER e NOORDER:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;sequência com NOORDER - cache (20)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;---------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 101&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 2 on node-A: nextval -&gt; 102&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;Session 1 on node-B: nextval -&gt; 121&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;Session 1 on node-B: nextval -&gt; 122&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 103&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 104&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;sequência com ORDER - cache (20)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(51, 51, 255);font-family:courier new;" &gt;--------------------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 101 (DFS Lock handle) (CR read)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 2 on node-A: nextval -&gt; 102&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;Session 1 on node-B: nextval -&gt; 103 (DFS Lock handle)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;Session 1 on node-B: nextval -&gt; 104&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 105 (DFS Lock handle)&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;Session 1 on node-A: nextval -&gt; 106&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Perceberam a diferença? Em um ambiente RAC, quando a sequence é criada com a cláusula NOORDER, os caches das mesmas são armazenados e gerenciadas em cada nó (node) do cluster. Abaixo está a demonstração de um teste prático utilizando cláusula ORDER na criação de uma sequence.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; create sequence seq_teste_rac cache 50 &lt;span style="font-weight: bold;"&gt;order&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Seqüência criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;======&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;NODE-A&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(0, 153, 0);font-family:courier new;" &gt;======&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select seq_teste_rac.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         1&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         2&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         3&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         4&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;======&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;NODE-B&lt;/span&gt;&lt;br /&gt;&lt;span style="color: rgb(255, 0, 0);font-family:courier new;" &gt;======&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select seq_teste_rac.nextval from dual;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         5&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         6&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         7&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; /&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NEXTVAL&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;         8&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;Portanto, dependendo da aplicação em uso, vale a pena checar se os objetos sequences estão criados com o tamanho dos caches de forma apropriada e se as mesmas deverão ser ORDER ou NOORDER, de acordo com o objetivo da mesma. Em um ambiente RAC isso pode fazer uma grande diferença.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;&lt;span style="font-weight: bold;"&gt;Conclusão:&lt;/span&gt; &lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;1- NOCACHE é ruim para a performance.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;2- Em um ambiente RAC, ORDER/NOORDER faz diferença.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt;No geral, para a performance, abaixo estão as combinações das cláusulas combinadas (da pior para a melhor)&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * NOCACHE&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * CACHE com ORDER (em um ambiente RAC)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family:courier new;font-size:85%;"&gt; * CACHE com NOORDER (em um ambiente RAC)&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-weight: bold;font-family:courier new;font-size:85%;"  &gt;Observação: Em um ambiente single instance, uma sequence criada com ORDER ou NOORDER não fará a menor diferença, pois os números são sempre gerados ordenadamente.&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;a href="http://download.oracle.com/docs/cd/E11882_01/server.112/e17118/statements_6015.htm#i2067093"&gt;&lt;span style="font-style: italic;font-family:courier new;font-size:85%;"  &gt;"ORDER is necessary only to guarantee ordered generation if you are using Oracle Real Application Clusters. If you are using exclusive mode, then sequence numbers are always generated in order."&lt;/span&gt;&lt;/a&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;hr style='color: blue' /&gt;
Este artigo pertence ao &lt;a href="http://eduardolegatti.blogspot.com"&gt;Oracle Blog por Eduardo Legatti&lt;/a&gt;.&lt;br/&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6132267453407001083-1897323393792493136?l=eduardolegatti.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://eduardolegatti.blogspot.com/feeds/1897323393792493136/comments/default' title='Postar comentários'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=6132267453407001083&amp;postID=1897323393792493136' title='2 Comentários'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1897323393792493136'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6132267453407001083/posts/default/1897323393792493136'/><link rel='alternate' type='text/html' href='http://eduardolegatti.blogspot.com/2011/03/abordando-o-uso-de-sequencias-no-oracle.html' title='Abordando o uso de sequências no Oracle em um ambiente RAC ...'/><author><name>Eduardo Legatti</name><uri>http://www.blogger.com/profile/13417270391272587761</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='24' src='http://1.bp.blogspot.com/_0YJ39t-zN8U/SYHujSPsGHI/AAAAAAAAAYc/8f0fs8oytqg/S220/oracle.jpg'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6132267453407001083.post-8125014134171855615</id><published>2011-02-04T22:40:00.004-02:00</published><updated>2011-02-05T23:10:24.647-02:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='table partition'/><category scheme='http://www.blogger.com/atom/ns#' term='partições'/><category scheme='http://www.blogger.com/atom/ns#' term='tablespace'/><category scheme='http://www.blogger.com/atom/ns#' term='dba'/><category scheme='http://www.blogger.com/atom/ns#' term='oracle'/><title type='text'>Executando operações de manutenção em tabelas particionadas no Oracle ...</title><content type='html'>&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Olá,&lt;/span&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Sabemos que o particionamento é uma técnica que permite que as tabelas e índices sejam divididos em componentes menores e mais gerenciáveis dentro de um banco de dados. As tabelas particionadas ajudam a tornar o banco de dados mais disponível e de melhor manutenção pelo fato de cada partição poder ser criada em tablespaces distintos. Por algumas razões de desempenho, cada partição de uma tabela pode e deve residir na sua própria tablespace. Uma outra vantagem é que as tabelas particionadas podem também melhorar o desempenho de consultas, pois quando uma operação de consulta é efetuada sobre uma tabela particionada, o otimizador determina a partição envolvida – característica denominada de &lt;span style="color: rgb(51, 51, 255);"&gt;Partition Pruning&lt;/span&gt;, desde que a operação esteja condicionada pela chave de partição.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;span style="font-size:85%;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Vale a pena salientar que o particionamento é transparente para as aplicações e não é necessária nenhuma alteração nas instruções SQL para tirar vantagem dele. No entanto, podem haver situações onde especificar uma partição diretamente na instrução SQL seria vantajoso. No mais, o objetivo deste artigo será apresentar de  forma mais didática e, para quem já conhece um pouco sobre particionamento, algumas das operações básicas que podemos realizar nas partições de uma tabela particionada. Dentre algumas das operações temos: &lt;span style="font-weight: bold;"&gt;RENAME&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;MERGE&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;SPLIT&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;TRUNCATE&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;DROP&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;ADD&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;EXCHANGE&lt;/span&gt;, &lt;span style="font-weight: bold;"&gt;ANALYZE&lt;/span&gt; e &lt;span style="font-weight: bold;"&gt;MOVE&lt;/span&gt;. Para início, irei criar uma tabela de exemplo simples chamada T1. No caso, usarei o método range partition que foi um dos primeiros métodos de particionamento criado pela Oracle e existente desde a versão do Oracle 8.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;span style="font-family:courier new;"&gt;C:\&gt;sqlplus scott/tiger&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL*Plus: Release 10.2.0.1.0 - Production on Sex Fev 4 12:47:28 2011&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Copyright (c) 1982, 2005, Oracle.  All rights reserved.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Conectado a:&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;With the Partitioning, OLAP and Data Mining options&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; create table t1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2    (id  number)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3     tablespace users&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4     partition by range(id)&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5      (&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  6       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pdezenas&lt;/span&gt;  values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;100&lt;/span&gt;)  tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_dezenas&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  7       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pcentenas&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;1000&lt;/span&gt;) tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_centenas&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  8       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pmilhares_1000&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;2000&lt;/span&gt;)  tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  9       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pmilhares_2000&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;3000&lt;/span&gt;)  tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 10       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pmilhares_3000&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;4000&lt;/span&gt;)  tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 11       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pmilhares_4000&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;5000&lt;/span&gt;)  tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 12       partition &lt;span style="color: rgb(51, 51, 255);"&gt;pmilhares_n&lt;/span&gt; values less than (&lt;span style="color: rgb(0, 153, 0);"&gt;maxvalue&lt;/span&gt;) tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt; 13    );&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Tabela criada.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; create index idx_t1_id on t1 (id) local tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_indx&lt;/span&gt;;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Índice criado.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; insert into t1 select level from dual connect by level &lt;= 10000;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;10000 linhas criadas.&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; exec dbms_stats.gather_table_stats('SCOTT','T1');&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;Procedimento PL/SQL concluído com sucesso.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Com os comandos acima, eu criei uma tabela particionada T1 com apenas uma coluna para fins de demonstração e a populei com &lt;span style="font-weight: bold;"&gt;10 mil registros&lt;/span&gt;. Foi criado também um índice particionado localmente. Um índice particionado local é muito simples de configurar e manter porque o seu esquema de particionamento&lt;span style="font-weight: bold;"&gt; é idêntico ao esquema da tabela base&lt;/span&gt;. Em outras palavras, &lt;span style="color: rgb(51, 51, 255);"&gt;o número de partições do índice é igual ao número de partições da tabela&lt;/span&gt;. Para um fácil entendimento, eu criei 7 partições que armazenam números. A partição &lt;span style="color: rgb(51, 51, 255);"&gt;pdezenas&lt;/span&gt; foi criada na tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_dezenas&lt;/span&gt;, a partição &lt;span style="color: rgb(51, 51, 255);"&gt;pcentenas&lt;/span&gt; foi criada na tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_centenas&lt;/span&gt; e, as partições restantes, na tablespace &lt;span style="color: rgb(255, 0, 0);"&gt;tbs_milhares&lt;/span&gt;. Abaixo irei executar algumas instruções SQL para obter algumas informações pertinentes sobre a tabela particionada T1.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         partition_count,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         def_tablespace_name&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5    from user_part_tables;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME     PARTITI PARTITION_COUNT DEF_TABLESPACE_NAME&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------- ------- --------------- -------------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1              &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;                &lt;span style="color: rgb(0, 153, 0);"&gt;7&lt;/span&gt; USERS&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Utilizando a view de dicionário de dados &lt;span style="font-weight: bold;"&gt;USER_PART_TABLES&lt;/span&gt;, acima podemos ver que a tabela foi particionada pelo método &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt; e que a mesma possui atualmente &lt;span style="color: rgb(0, 153, 0);"&gt;7&lt;/span&gt; partições.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select index_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            partitioning_type,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            locality,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;            alignment&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;       from user_part_indexes;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;INDEX_NAME     TABLE_NAME       PARTITI  LOCALI  ALIGNMENT&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------- ---------------- -------- ------- ---------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_ID      T1               &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt;    &lt;span style="color: rgb(0, 153, 0);"&gt;LOCAL&lt;/span&gt;   PREFIXED&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Utilizando a view de dicionário de dados &lt;span style="font-weight: bold;"&gt;USER_PART_INDEXES&lt;/span&gt;, acima podemos ver que o índice IDX_T1_ID também foi particionado pelo método &lt;span style="color: rgb(0, 153, 0);"&gt;RANGE&lt;/span&gt; e que o mesmo é um índice &lt;span style="color: rgb(0, 153, 0);"&gt;LOCAL&lt;/span&gt;.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select * from USER_PART_KEY_COLUMNS;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;NAME        OBJEC     COLUMN_NAME  COLUMN_POSITION&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- --------  ------------ ---------------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;TABLE&lt;/span&gt;     &lt;span style="color: rgb(0, 153, 0);"&gt;ID&lt;/span&gt;                         1&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;IDX_T1_ID   &lt;span style="color: rgb(255, 102, 0);"&gt;INDEX&lt;/span&gt;     &lt;span style="color: rgb(0, 153, 0);"&gt;ID&lt;/span&gt;                         1&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Utilizando a view de dicionário de dados &lt;span style="font-weight: bold;"&gt;USER_PART_KEY_COLUMNS,&lt;/span&gt; acima podemos obter a coluna chave da partição. Abaixo a coluna &lt;span style="font-weight: bold; color: rgb(0, 153, 0);"&gt;PARTITIONED&lt;/span&gt; da view &lt;span style="font-weight: bold;"&gt;USER_TABLES&lt;/span&gt; nos mostra que a tabela T1 é uma tabela particionada.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select table_name,partitioned,num_rows from user_tables;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME           PAR   NUM_ROWS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;-------------------- --- ----------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1                   &lt;span style="color: rgb(0, 153, 0);"&gt;YES&lt;/span&gt;      10000&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Abaixo irei executar uma instrução SQL para obter da view &lt;span style="font-weight: bold;"&gt;USER_TAB_PARTITIONS&lt;/span&gt; algumas informações sobre os nomes das partições e o número de linhas em cada partição.&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; break on report&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; compute sum of num_rows on report&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;SQL&gt; select table_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  2         partition_name,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  3         high_value,&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  4         num_rows&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;  5  from user_tab_partitions;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;TABLE_NAME  PARTITION_NAME   HIGH_VALUE NUM_ROWS&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;----------- ---------------- ---------- ---------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PDEZENAS&lt;/span&gt;         &lt;span style="color: rgb(255, 0, 0);"&gt;100&lt;/span&gt;               99&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PCENTENAS&lt;/span&gt;        &lt;span style="color: rgb(255, 0, 0);"&gt;1000&lt;/span&gt;             900&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PMILHARES_1000&lt;/span&gt;   &lt;span style="color: rgb(255, 0, 0);"&gt;2000&lt;/span&gt;            1000&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PMILHARES_2000&lt;/span&gt;   &lt;span style="color: rgb(255, 0, 0);"&gt;3000&lt;/span&gt;            1000&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PMILHARES_3000&lt;/span&gt;   &lt;span style="color: rgb(255, 0, 0);"&gt;4000&lt;/span&gt;            1000&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PMILHARES_4000&lt;/span&gt;   &lt;span style="color: rgb(255, 0, 0);"&gt;5000&lt;/span&gt;            1000&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;T1          &lt;span style="color: rgb(51, 51, 255);"&gt;PMILHARES_N&lt;/span&gt;      &lt;span style="color: rgb(255, 0, 0);"&gt;MAXVALUE&lt;/span&gt;        5001&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;                                        ---------&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;sum                                         &lt;span style="font-weight: bold;"&gt;10000&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;&lt;span style="font-family:courier new;"&gt;7 linhas selecionadas.&lt;/span&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;&lt;/span&gt;&lt;div style="text-align: justify;"&gt;&lt;span style="font-size:100%;"&gt;&lt;span style=";font-family:courier new;font-size:85%;"  &gt;Vale a pena salientar que podemos também acessar diretamente os dados de uma partição como mostrado no exemplo abaixo:&lt;/span&gt;&lt;/span&gt;&lt;br /&gt;&lt;/div&gt;&lt;span style="font-size:100%;"&gt;&lt;pre&gt
