ERP MEGA - Como utilizar a ferramenta Assistente para Conversão de bases de dados?
Dúvida
Como utilizar a ferramenta Assistente para Conversão de base de dados?
Pré-requisito
Ler do artigo Conversão de base de dados para versão Mega Alexandria.
Solução
Importante! Como mencionado no artigo inicial, o processo de migração para a versão Alexandria envolve atividade de exportação/importação de dump para reorganização da estrutura de dados, esse processo deve ser executado por um DBA Oracle ou profissional que detenha suficiente conhecimento e domínio sobre o assunto.
Preparando um diretório para o Mega Alexandria
- Vamos preparar um novo diretório para a versão Mega Alexandria totalmente separado da estrutura de diretório do Mega Planier, para evitar que se perca ou sobrescreva arquivos da versão anterior. Baixe o arquivo .zip com a estrutura básica necessária neste link e descompacte o arquivo no local de sua escolha onde ficará a estrutura de arquivos do Mega Alexandria.
Na pasta "Client" temos os arquivos:
- MegaERP.exe (usado para a validação do MegaPassword.exe)
- MegaPassword.exe
Na pasta "Config" temos os arquivos:
- MegaClient.xml
- MegaConfig.xml
- Na pasta Config edite o arquivo "MegaConfig.xml", e na TAG informe o alias da base que será convertida. Conforme descrito no item 5 do artigo de pré-requisito Conversão de base de dados para versão Mega Alexandria é necessário que primeiramente o processo de migração seja realizado em um ambiente de testes/homologação (copia da base de produção).
- Execute o Mega Atualizador, caso ainda não esteja usando o Mega Atualizador, leia o artigo Mega Atualizador - Pré-requisitos para a instalação e faça o download da ferramenta neste link.
Ao executar o Mega Atualizador, em "Local do Mega ERP" informe o caminho da pasta que foi baixado no item 1.
Com a configuração correta da TAG com o alias da nova base, o Mega Atualizador irá identificar a base e conectar. Informe a senha SYS e SYSTEM, clique em Avançar.
Se já estiver liberado para o seu CNPJ e base o Assistente para Conversão de bases de dados, o mesmo deve ser listado para o download na aba Assistente de conversão Alexandria.
- Na tela que tem as opções Aplicar Depois e Aplicar Agora, escolha a opção Aplicar Agora para que o Mega Atualizador já descompacte o arquivo AssistenteAlexandriaVersaoRelatorio.zip na pasta onde será criada a estrutura de arquivos do Mega Alexandria (informada na tela inicial do Mega Atualizador).
Utilizando a ferramenta de Conversão de Base Alexandria
Para utilizar a ferramenta Assistente para Conversão de bases de dados, realize os passos a seguir:
1. A partir do local onde foi descompactado o conteúdo do arquivo AssistenteAlexandriaVersaoRelatorio.zip execute o arquivo ConverteDBaseAlexandria.exe;
2. Clique em Avançar;
3. Informe os seguintes campos:
Directory: caminho configurado no Oracle Database onde é feito a gravação/leitura dos arquivos de dump.
Connect String: nome da Connect String para acesso à base que está sendo migrada/convertida.
* Importante! O novo owner não pode ser um owner já utilizado pelo Mega ou por outros sistemas existentes.
4. Informe a senha do usuário SYS.
5. Antes de iniciar os processos de conversão da base de dados, a ferramenta de conversão realiza algumas verificações no ambiente, caso sejam identificadas inconsistências você poderá visualizar uma das mensagens de erro descritas abaixo:
5.1 Versão do Sistema Operacional
Valida o sistema operacional onde esta sendo executado o Assistente de Conversão.
Caso ocorra esta mensagem, o Assistente de Conversão não será executado.
Deverá ser executado de uma máquina cujo sistema operacional seja superior a versão Windows Server 2008.
5.2 Verificação de arquivos obrigatórios
O arquivo AtualizacaoMega.xml deve estar na mesma pasta do executável do Assistente de Conversão. O Assistente de Conversão não será executado sem o arquivo.
O arquivo Ignore.xml deve esta na mesma pasta do executável do Assistente de Conversão. O Assistente de Conversão não será executado sem o arquivo.
Caso algum parâmetro não tenha sido informado, será apresentado uma mensagem solicitando o preenchimento do parâmetro. Preencha para continuar a execução.
A pasta de scripts de ajustes dos objetos do banco de dados deve estar no mesmo diretório do executável do Assistente de Conversão. O assistente não será executado sem a pasta.
5.3 Verificação de autorização de uso
Para que seja iniciada a execução do Assistente de Conversão, é realizada a verificação da liberação do produto “Assistente de Conversão Alexandria“ junto à Mega Sistemas para o cliente/base de dados, para evitar que seja feita uma conversão de base que não tenha sido previamente autorizada/solicitada.
Caso a mensagem abaixo seja exibida, solicite a autorização registrando um ticket no taskcenter.
Após informar a senha do usuário SYS e realizar as verificações, será dado inicio à varredura nos objetos dos banco, identificando os duplicados nos owners de responsabilidade do MegaERP.
Quais são os passos ou processos executados pela ferramenta de conversão?
Processo 1 - Identificar objetos duplicados na base não previstos nas correções
Importante! Analise os objetos, na maioria das vezes estes objetos estão duplicados porque foram compilados no owner incorreto e não foram removidos de lá.
Este processo pode demorar devido ao volume de scripts e objetos e serem comparados.
Pressione OK para continua o processo de conversão, todos os objetos não identificados são salvos em backup na tabela GLO_BACKUP_ALEXANDRIA e todos poderão ser recuperados posteriormente.
Este processo ajusta nomenclatura das tabelas do owner MGADT (Mega Auditoria) e corrige o conteúdo de algumas tabelas usadas no processo de auditoria.
O padrão de nome das tabelas de auditoria passa a ser: A#
Processo 3 - Excluir packages, function, procedures, views, mviews, triggers, types e synonyms de todos os owners
Neste processo são excluídos os objetos programáveis de todos os owners de responsabilidade do MegaERP, ou seja, os objetos de owners customizados ou de sistemas terceiros não serão afetados.
É necessário realizar a exclusão pois durante a exportação serão enviados apenas as tabelas e sequences.
Os objetos programáveis dos owners de responsabilidade do MegaERP serão recriados ao atualizar a base com Mega Atualizador.
Importante: DBMS_SCHEDULE / DBMS_JOBS
Os jobs dos owners de customização escritos no agendador de tarefas do Oracle DBMS_SCHEDULER serão salvos na tabela GLO_SCHEDULERBACKUP, e jobs escritos na forma antiga DBMS_JOBS, serão salvos na tabela GLO_JOBSBACKUP, devendo ser recriados posteriormente de forma manual por quem estiver realizando o processo de migração.
O assistente passará pelas etapas de realização de varredura de objetos padrão, geração de backup dos objetos não identificados e por último irá excluir objetos do banco.
Este processo demorar devido ao volume de scripts e objetos e serem comparados.
Processo 4 - Executar scripts da pasta “ScriptsConversao“ para renomear objetos duplicados
Na versão Mega Alexandria existe scripts que fazem a correção de nomes de tabelas que eram de owners diferentes mas que estavam com os nomes iguais. Como as tabelas estarão todos no mesmo owner, não poderão ter os mesmos nomes.
Processo 5- Analisar a existência de duplicidades e objetos programáticos Planier que não foram excluídos.
Os processos irá listar as tabelas com nomenclatura duplicada existentes na base de dados. Será necessário resolver esta duplicidades excluindo uma das tabelas duplicadas. Para excluir uma tabela priorize as tabelas que estiverem vazias e de prefixo diferente do nome do owner. Caso tenha dúvida sobre qual tabela deverá excluir, seguindo a mesma analise anterior você deverá renomear ao invés de excluir.
Após resolver as duplicidades, pressione o botão "Executar" para continuar o processo de conversão.
Processo 6 a 15- Criação de artefatos para conversão Mega Alexandria
Os processos seguintes compreendem os artefatos e a exportação / importação das tabelas e sequences para o novo owner.
11.1 Cria o arquivo de comando (cmd) para executar importação.
11.2 Informe o caminho do executável impdp.exe.
No exemplo, esta localizado em: D:\Oracle\instantclient_19_6.
11.3 Após a criação do arquivo de comando de exportação, o Assistente de Conversão vai exibir a informação sobre a execução do arquivo “Export_ALEXANDRIA.cmd“. Clique em Ok.
Neste ponto você pode executar os comandos Export_ALEXANDRIA.cmd e Import_ALEXANDRIA.cmd sem esperar que o “Assistente de Conversão“ abra o explorer.
Dica! O Assistente de Conversão pode ficar executando (aberto) enquanto se esta fazendo a exportação e importação. Após este processo, acione o botão Avançar para continuar os processos. Caso deseje, pode fechar o Assistente de Conversão. Ao executar novamente após a exportação/importação da base, o programa será reiniciado a partido do último processo executado.
12.1 Após a execução dos comando de exportação e importação da base de dados continue os processos pelo Assistente de Conversão. Ao ser apresentada a tela inicial, clique em Avançar;
12.2 Será apresentada a mensagem informando que foi detectado que o processo ainda foi não todo executado, clique em “Sim“;
12.3 Informe a senha do usuário SYS;
12.4 Antes de fechar o programa para exportação será exibida a mensagem novamente, clique em OK;
O explorer será aberto no local onde se encontra o arquivo Export_ALEXANDRIA_.cmd para ser executado.
12.5 Se já foi realizada a exportação, feche o explorer e clique em Executar. Caso contrário, realize a exportação;
Processo 13 - O explorer será aberto no local onde se encontra o arquivo Import_ALEXANDRIA.cmd, clique no arquivo para que seja executado
Atenção: O passo de importação somente deverá ser realizado após a conclusão do processo de exportação de dump realizado no passo anterior.
13.1 Se já foi realizada a importação, pode fechar o explorer. Caso contrário, execute o comando de importação.
13.2 Clique em “Executar“ para continuar o processo
Processo 14 - Excluir todos os owners convertidos
Atenção: Este passo somente deverá ser realizado após a conclusão do processo de importação de dump realizado no passo anterior.
Este processo exclui os owners de responsabilidade do MegaERP que tiveram suas tabelas e sequences exportadas e agora importados sob o owner único
Processo 15 - Convertendo as customizações da base de dados
Este processo vai fazer as adequações na base de dados de objetos de customização.
O que este processo faz?
-
Grava conteúdo do arquivo AtualizacaoMega.xml no banco de dados
-
Altera conteúdo da tabela GLO_FORMULA
-
Lista os owners que não são de conhecimento do MegaERP (owners customizados)
-
Recria no owner único as tabelas dos owners customizados
-
Recria no owner único as sequences dos owners customizados
-
Recria no owner único os objetos programáticos (procedures, packages, etc) dos owners customizados.
-
Ajusta processos pendentes
-
Drop owners customizados
-
Converte os conteúdos das tabelas:
- GLO_PROCESSOCUSTOMIZADO
-
GLO_FORMULA
-
GLO_TABELA
-
EST_INTEGRASOLIC
- INT_TRADUCAO
-
INT_PROCESSO
- INT_PROCESSOOBJANEXO
-
INT_PROCESSOSQL
-
GLO_BI_FORMATOS
-
GLO_COPIAORGPROC
-
GLO_GERENCIADORDADOS
- ADT_PROCESSO
- ADT_PROCESSOCAMPO
- ADT_PROCESSOLOG
- FIN_HBKFMTFOR
- GLO_RELATORIOSCRIPT
- Permite converter mais alguma tabela que não esteja listado
15.1 Informe a senha do owner único;
15.2 O Assistente irá gravar os dados do arquivo MegaAtualizacao.xml na base;
15.3 Será gerado a lista de nomes de objetos padrão;
15.4 O Assistente irá converter scripts da tabela GLO_FORMULA
15.5 O Assistente irá perguntar quais owners customizados devem ser convertidos
Campo “Customização” - Permite a escolha de qual/quais owners devem ser considerados como conversão de customização
Campo "Não esta na lista?" - Permite adicionar owner que não esteja listado, mas que há objetos que são usados em customização
Após escolher os owners ou adicionar, clique em OK
15.6 O Assistente vai importar as tabelas customizadas;
15.7 Importará Constraints;
15.8 Importará ForeingKey;
15.9 Importará Sequences;
15.10 O Assistente vai criar backup, fabricar nova nomenclatura para objetos customizados, converter objetos e compilar objeto no owner único;
15.11 Após converter os objetos, os owners customizados serão excluídos;
15.12 O Assistente irá converter conteúdos das tabelas;
O processo acima pode demorar um pouco dependendo da quantidade de owners customizados e a quantidade de customizações.
Caso tenha alguma tabela com algum campo que contenha nome de tabela, procedure, package ou customização que não estava na lista acima, informe neste momento e em seguida clique em Converter mais esta!
Caso não tenha, clicar em Continuar.
Será exibida a mensagem de Processo concluído, clique em Ok.
Clicar em Finalizar para encerrar o Assistente de conversão.
Caso precise converter mais algum owner que não foi identificado ou converter novamente algum owner já convertido no passo anterior, prossiga com as orientações do artigo: Converter customizações após a conversão da base de dados
ATENÇÃO
Após a realização dos passos anteriores a estrutura da base de dados estará convertida, para finalizar a preparação da base no padrão Mega Alexandria, o responsável pela execução do processo deverá realizar a atualização da nova base de dados para a última versão disponível do Mega Alexandria, esse processo é realizado utilizando o Mega Atualizador.
Antes de executar o Mega Atualizador para fazer a atualização da versão Mega Alexandria será necessário a configuração do MegaConfig.xml e a criação do arquivo MegaERP.pwd, que você confere no artigo Como definir usuário e senha do owner único?
Após concluir o processo de atualização da versão Mega Alexandria o responsável pela execução deve realizar uma validação geral da base de dados convertida/atualizada, validar os scripts de customização, validar os objetos convertidos, verificar se existem objetos inválidos e realizar eventuais correções que forem necessárias.