Pessoal bom dia, sei que BD não é muito o foco do forum mas vou pedir ajuda assim mesmo.
Tenho uma base de dados em MySQL que está modelada, digamos de uma maneira complicada… Basicamente são poucas tabelas que contém muitas colunas de focos diferentes. Criamos uma base de dados Oracle e normalizamos o modelo da dados.
Meu problema é que precisamos extrair os dados do MySQL e fazer um dump no Oracle, porém tudo mudou … desde nome de tabelas até campos novos de relacionamento como fks etc…
No momento estamos com indisponibilidade de mão de obra para trabalhar com banco de dados e estou pensando em meter a cara nisso ai , alguém conhece uma ferramenta (se possível gráfica) que seja capaz de relacionar as tabelas e colunas equivalentes do MySQL com o Oracle e me permita essa migração de dados?
Basicamente pensei em fazer um select numa base e insert na outra… mas é dado pra caramba e acredito que deva existir uma solução mais produtiva.
Vlw galera.
…Contando com a ajuda de vc’s ;D
Camarada, você quer uma ferramenta que faça o trabalho de um DBA, é isso?
Sinceramente, não conheço.
Veja bem, se um modelo foi normalizado, ele servirá para qualquer SGBD. “Ah, mas Oracle trabalha com sequence e MySQL com auto_increment”, como dizia um amigo meu, muda a mosca, a merda é a mesma.
Se o modelo implementado no MySQL ficou, digamos, “complicado”, significa que será preciso refazê-lo. E isso implica em ler os dados do MySQL, analisá-los e, de acordo com a análise, inserí-los no Oracle.
Melhor forma de fazer isso? Manualmente.
Por que? Há uma grande chance de dar errado, afinal, a única lei que vale para a “ciência exata” chamada desenvolvimento é a lei de Murphy: “quando algo tem uma única chance de dar errado, dará errado no momento em que for causar maior estrago” e suas variantes.
Na quero uma ferramenta que faça o trabalho de um DBA porém algo que eu consiga relacionar os dados do meu antigo modelo com o novo.
o que você propoe realizar um select num banco transformar os dados e realizar insert no outro ?
Acredito que tenha uma maneira mais simples de lidar com os dados ao inves de ter um programa conectado com 2 dbs só para fazer essa extração e inserção de dados.
Toda ferramenta de extração de dados, incluindo o já falecido MySQL Migration Tools se baseia no princípio de ler a base como ela está e, ou gerar um arquivo dump ou já criar a estrutura de forma idêntica ao que já existia no outro SGBD, ou seja, sem alterar nada.
Isso implica em ter a mesma estrutura de modelagem “complicada” no Oracle.
Você não diz o seu ambiente , mas você pode pensar em criar uma conexão ODBC e fazer o oracle acessar os dados do mysql via DBLINK Genérico … há alguns exemplos na net , use o link abaixo para ser basear …
Agora vc simplesmente pegar um dump do mysql e colocar no oracle facilmente sem fazer muito esforço …sinceramente desconheço … sempre que preciso ou precisei … uso via ODBC ou faço via loader mesmo … e na exceções algum programa java que leia alguma entrada de dados e insira as informações lidas em algum BD …enfim possibilidades existem aos montes …facilidade em fazer isto …vai de cada caso …enfim …boa sorte …
Na verdade o Sql server possui uma ferramenta (Integration Services, se não me engano), que pode fazer esse tipo de migração, se seu relacionamento do mysql para oracle for de 1 pra 1.
Acho inclusive que você poderia usar mesmo para migrar de mysql para oracle.
Um DBA me disse uma vez que o Oracle tinha uma ferramenta semelhante, mas não me falou o nome.
Procure por ferramentas de ETL, que deve achar mais opções.
`