domingo, 24 de janeiro de 2010

Migrando MySQL para PostgreSQL

MySQL e PostgreSQL esses Banco de Dados você pode já ter lido vários artigos sobre esse assunto de migração, mas provavelmente conseguiu apenas fragmentos da informação necessária e não soube nem por onde começar estou certo? haha bom mas vamos pra luta e chego a hora de colocar tudo junto e na prática.

Você tem um projeto/sistema rodando no MySQL e de repente você descobre que você precisa migrar para PostgreSQL. E você se depara com um SQL diferente para cada plataforma, o MySQL trabalha com SQL e o PostgreSQL trabalha com PL/SQL e ai?, bom mas o detalhe que você não tem tempo para reescrever o código do zero e, logicamente, se você tiver tempo de reestruturar o seu projeto para PostgreSQL, o seu Data Base vai ficar mais organizado e, como um bom Data Base deve ser com relacionamento entre Tabelas, Trigger, Functions e etc.

Na verdade, pode haver boas razões para migrar um Data Base de MySQL para PostgreSQL a segurança, desenpenho ou mesmo por um previlégio que so o outro banco possua e não pela falta de tempo de rescrever as tabelas...

E ná verdade o Postgre você poderá vender o seu produto com total tranquilidade (PostgreSQL é licenciada BSD, o diferente de MySQL) e você pode encontrar artigos "Migrando MySQL para PostgreSQL" na web, mas.. você não vai encontrar nenhuma "Migrando PostgreSQL para MySQL" sinal que ele é bom.

PostgreSQL não pode ser apenas mais um péssimo banco porque o que eu sei e andei lendo que vários softwares pupaleres de nome no mercado tem a base de dados do Postgre vou citar uns Skype, Cisco, Juniper, IMDb, Pandora ou NOVA TV decidiram confiar nele, além de a Sun Microsystems tê-lo tornado como base de dados de escolha (e uma também que em janeiro de 2008 PostgreSQL comprou o MySQL UAHSUsuahs).

No PostgreSQL você ainda pode sentir um pouco como uma pessoa com segurança particular. Existem alguns grandes projetos que já reconheceram suas qualidades e que, embora o MySQL tenha sido sua primeira escolha de Banco de Dados, e eles estão demonstrando esforço para fazer tudo funcionar.

Mas Voltando...

Convertendo Base de Dados MySQL para PostgreSQL

Primeiramente vamos fazer Backup de nossa Data Base MySQL com o software mysqldump do próprio MySQL:


mysqldump --compatible=postgresql bancodedados > bkp-bancodedados.sql

Convertendo caracteres para o SQL ficar funcional no PostgreSQL:

sed "s/\\\'/\'\'/g" bkp-bancodedados.sql

Este processo vai demorar muito tempo porque o software "sed" varrerá todo o arquivo para fazer a conversão

Colocando as coisas para funcionar: importando para o PosgreSQL

psql -h server -d databasename -U username -W

Com isso você acabo de migrar a sua estrutura de Dados de MySQL para PostgreSQL

Alguns Likes do PostgreSQL

MySQL

Comunidade Brasileira de PostgreSQL

PostgreSQL: The world's most advanced open source database

PGCon Brasil

PostgreSQL Documentation

Nenhum comentário:

Postar um comentário

 Copyright © 2008-2010 All Right Reserved - Todos os Direitos Reservados Elder Stroparo