Nós não usamos os garfos do MySQL, mas para nosso caso (bancos de dados de Bioinformática) a mudança para o PostgeSQL funcionou muito bem. A aplicação web (Cellwall Navigator, 10k linhas de código Perl e 10 db de tabelas) estava rodando no MySQL por 5 anos. Demoramos 2 dias para ajustar o SQL para migrar para o Postgres.
Nenhum aplicativo precisou de ajustes codificados, exceto para conexão ao banco de dados.
O ajuste foi:
-
Substitui a senha do MySQL () pelo Postgres md5 () assim
SELECT id FROM users WHERE email = ? AND password = password(?)
torna-seSELECT id FROM users WHERE email = ? AND password = md5(?)
-
Conversão fácil para um MySQL STRAIGHT_JOIN para um JOIN regular
- E um caso de JOIN assim
SQL original, que foi permitida pelo MySQL (funcionou bem para o aplicativo antes da migração):
SELECT sequence.id, ... FROM sequence JOIN xlink ON xlink.sequence = sequence.id WHERE xlink.accession = ? GROUP BY sequence.id
Nós o ajustamos para ser o SQL adequado que funciona no PostgeSQL e correto para o aplicativo:
SELECT DISTINCT sequence.id, ... FROM sequence JOIN xlink ON xlink.sequence = sequence.id WHERE xlink.accession = ?