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
Comunidade Brasileira de PostgreSQL