On Sun, 24 Nov 2002, Yann Forget wrote:

> Je cherche un script pour convertir une base MySQL en PostgreSQL et
> vice-versa. Quelqu'un aurait-il �a sous la main, ou saurait-il o� je peux le
> trouver ?

Elle est complexe cette base ?  La derni�re fois que j'ai fait �a, j'ai
re-cr�� et re-r�fl�chi les structures de donn�es, car vu le peu de choses
que MySQL supporte et la fa�on dont certaines choses sont impl�ment�es
on a vite mal � la t�te.

Par contre, les donn�es MySQL, on peut les importer assez facilement dans
PostgreSQL, avec juste quelques b�mols sur l'�chappement des guillemets,
et �ventuellement via une VIEW et une RULE pour assurer l'int�grit� ou des
conversions directement dans la base de donn�es.

Mes diff�rentes rencontres avec MySQL ont �t� assez mauvaises: chez un
client, j'ai d�j� vu des bases avec des identifiants uniques mais des
tuples multiples: la base de donn�es avait d� se corrompre d'une mani�re
o� d'une autre. Chez un autre client, m�me `mysqldump' refuse en ce moment
de sauvegarder en raison d'incoh�rences. Et le dump g�n�r� en excluant les
tables probl�matiques n'est pas restorable:  la solution trouv�e est de
sauvegarder directement de /var/lib/mysql, mais sur un MySQL stopp� sur un
slave r�pliqu� (et il m'a fallu �crire un script de red�marrage de
surveillance et red�marrage de la synchronisation car elle s'arr�te de
temps en temps). 

Plus je joue avec MySQL plus je vois que c'est un simple jouet:  rapide
pour faire des requ�tes simples en lecture, et c'est tout.  Mais bon �a
c'est de la politique, il y a plein d'applications o� MySQL peut
probablement rendre service et o� son support partiel peut suffire.
 
Une conversion PostgreSQL -> MySQL r�ellement automatique est impossible
dans l'�tat actuel, sauf si l'on utilise ni proc�dure stock�es, ni
triggers, ni r�gles, ni contraintes d'int�grit� non minimalistes, ni view,
ni select imbriqu�, ni transaction s�rialis�es, etc.

En bref, moi je ne vois pas comment construire quoi que ce soit de solide
avec MySQL: mais bon, il est vrai que j'ai une vision assez sp�ciale de
l'informatique, dans laquelle on passe par diverses phases de conception
avant de cr�er une structure SQL, et dans laquelle on d�place une grande
partie du traitement (validation) dans la base de donn�es plut�t que dans
un programme C, Perl, C++ ou PHP: cette vision ne semble pas �tre
tr�s r�pandue.

Mais regarde quand m�me:

   http://webmasterbase.com/article/529




--
http://www-internal.alphanet.ch/linux-leman/ avant de poser
une question. Ouais, pour se d�sabonner aussi.

Répondre à