Migração de EE para SE / SE1 / SE2

Este é o procedimento que sigo para remover o uso de todas as Features de Enterprise Edition de um banco de dados, para deixá-lo compatível com a Standard Edition, Standard Edition One, ou Standard Edition Two.

– Remover índices BITMAP.
– Remover DEGREE de objetos.
– Retirar compressão de objetos.
– Remover compressão de configurações do RMAN.
– Remover compressão de procedimentos de backup.
– Remover SQL Profiles.
– Remover SQL Baselines.
– Remover Partições.
– Executar DUMP apenas do(s) OWNER(s) da aplicação, e não FULL.
– Instalar o Oracle da Edition correta (SE1 / SE / SE2).
– Nas SE e SE1 (<= 12.1.0.1), o instalador é o mesmo, e a opção para SE / SE1 aparece durante a instalação. - Na SE2 (>= 12.1.0.2), o instalador é separado.
– Remover opções após a instalação (via chopt).
– Criar um novo banco de dados, via Template “Custom Database” do DBCA. Ainda no DBCA, alterar estes parâmetros:
AUDIT_TRAIL = NONE
CONTROL_MANAGEMENT_PACK_ACCESS = NONE
DEFERRED_SEGMENT_CREATION = FALSE
JOB_QUEUE_PROCESSES = 0
OPTIMIZER_USE_SQL_PLAN_BASELINES = FALSE
OPTIMIZER_ADAPTIVE_FEATURES = FALSE — Apenas 12c.
PARALLEL_MAX_SERVERS = 0
RESOURCE_LIMIT = FALSE

– Imediatamente após a criação do banco, executar:
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE (CLIENT_NAME => ‘auto optimizer stats collection’, OPERATION => NULL, WINDOW_NAME => NULL);
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE (CLIENT_NAME => ‘sql tuning advisor’, OPERATION => NULL, WINDOW_NAME => NULL);
EXEC DBMS_AUTO_TASK_ADMIN.DISABLE (CLIENT_NAME => ‘auto space advisor’, OPERATION => NULL, WINDOW_NAME => NULL);
— Em 12c, executar as alterações acima também em PDBs.
SELECT NAME, DETECTED_USAGES, CURRENTLY_USED, FIRST_USAGE_DATE, LAST_USAGE_DATE FROM DBA_FEATURE_USAGE_STATISTICS ORDER BY LAST_USAGE_DATE DESC;
— Executar novamente a verificação acima 8 dias depois.

– Adequar o parâmetro JOB_QUEUE_PROCESSES de acordo com o ambiente.
– Importar o DUMP.

9 comments

  1. Bom dia Portilho,

    Na etapa de alterar parâmetros, no caso de sofrer uma auditoria da Oracle, o ambiente estará Non-compliance se estiver diferente dos valores que você informou? Por exemplo JOB_QUEUE_PROCESSES = 10, OPTIMIZER_USE_SQL_PLAN_BASELINES = true e etc, não encontrei na documentação informações precisas sobre isso , visto alguns dos parâmetros já virem por default ativados. Ou nesse caso á apenas para utilização em EE.

    Obrigado,

    1. O parâmetro JOB_QUEUE_PROCESSES pode ser ativado novamente, veja que eu coloco um passo para isso.
      Já o OPTIMIZER_USE_SQL_PLAN_BASELINES faz parte da Feature “SQL Plan Management”, que como pode ser visto neste link, é uma Feature da Enterprise Edition:
      https://docs.oracle.com/database/121/DBLIC/editions.htm#DBLIC116

      E sim, você não encontrará informações precisas na documentação a respeito, por diversas vezes, a este respeito.
      E sim, este parâmetro vem habilitado por padrão.

  2. Portilho,

    Não desativando o job ‘auto optimizer stats collection’ meu ambiente estará non-compliance?

    Grato.

    1. Oi Raphael.
      Não, desta lista apenas o “sql tuning advisor” eu tenho certeza de que viola a Tuning Pack.
      Não encontrei evidências de que as outras 02 tarefas automáticas violam alguma licença, mas como uso minha própria rotina de verificação de fragmentação e de atualização de estatísticas, já desabilito estas por via das dúvidas.

  3. Ricardo,

    Você disse: “Executar DUMP apenas do(s) OWNER(s) da aplicação, e não FULL.”
    A licença do SE1 não permite datapump export full?

    Obrigado desde já.

    1. A licença do SE1 permite Export FULL, mas com o Export FULL, irá também o dicionário de dados, onde está “escrito” a respeito das funcionalidades utilizadas.

Leave a Reply

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Esse site utiliza o Akismet para reduzir spam. Aprenda como seus dados de comentários são processados.