Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

flavialieggio

Do MySQL para Oracle

Recommended Posts

Bom dia galera!!!

 

Estou com um pepinao nas maos e nao sei como fazer!!! Tenho um monte de arquivos no Mysql de um sistema que me passaram e tenho um banco de dados ORACLE prontinho com tabelas prontas pra recber esses dados. So que eu nao sei como fazer essa transferencia!!!! Pelo que sei ate agora, tenho que criar uma rotina de inserção, certo?? ou nao??? Por favor, gostaria muito de orientações!!!! Titulo de curiosidade eu sei programar em php..... http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif ...........

 

Muito obrigada pela atenção

 

Flávia

Compartilhar este post


Link para o post
Compartilhar em outros sites

Flávia :

 

"monte de arquivos no Mysql "

 

São arquivos ou tabelas ?

Quantos ? Que qtd de registros ?

As tabelas do Oracle tem indices,constraints,triggers ?

Tem garantia de integradade dos arquivos origem ?

Você sabe SQL ?

 

Opção 'pronta' no Oracle : sqlloader

 

Opção mais simples de fazer , uma rotina que leia as tabelas do mysql e insira no

Oracle, é de execução mais lenta mais é simples de fazer, ainda que trabalhosa, pois é uma

rotina para cada tabela.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Motta,

 

DEscullpe pela falta de informação.... http://forum.imasters.com.br/public/style_emoticons/default/blush.gif

 

Bem são arquivos mesmo..... qtdade nao sei exatamente, mas sao muitos!!!

 

As tabelas do ORACLE tem indices, constraints e triggers

Nao tenho garantia da integridade dos dados pois alguns dados que sao importantes em alguns arquivos estao em branco.... isso e um enorme problema!!!

 

Entendo sim de SQL....

 

Qual seria a melhor opção??

 

Obrigada pela ajuda e atenção!!!

[]´s

Flávia

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu faria uma séria de programinhas do tipo :

 

Ler arquivo (plsql , usando ult_file) e insere na tabela apropriada, lembrando de desabilitar as

constraints e triggers antes, religando depois.os indices podem ser dropados e depois recriados.

 

Tendo um banco de testes faça a carga antes nele pois assim você minimiza os problemas que podem

ocorrer (ao menos já sabe quais)

 

Seria bom ter uma ideia dos possíveis problemas de integridade que podem ocorrer.

 

Já usou ult_file ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Complementando as soluções.

 

Caso você tenha arquivos TXT delimitados, como o Motta disse, utilize o SQL*LOADER (sqlldr) para fazer as inserções no banco de dados Oracle, é MUITO mais rápido.

 

Depois faça procedimentos que desabilite as contraints e reconstrua os índices, fazer inserções em tabelas que tem índices não é aconselhavel.

 

No SQL*LOADER existem opções de eliminar registros que não satisfaça as constraitns da tabela, como NOT NULL ou UNIQUE. Isso pode lhe dar um pouco mais de consistência nos dados.

 

Após isso, ficar de olho nos segmentos de UNDO (Rollback), pois eles auxiliam o SQL*LOADER na inserção de dados.

 

Na minha opinião, o modo mais fácil de migrar os dados é gerar arquivos TXT delimitados no MySQL (Ele te dá esse suporte) e depois importar para o Oracle. É mais rápido e consistente.

 

Abraços, http://forum.imasters.com.br/public/style_emoticons/default/clap.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.