-
Replication de base
Bonjour,
J'ai besoin de repliquer une base sur une autre.
Pour certaines tables, j'ai juste besoin de repliquer le contenu, pour d'autres la structure et enfin pour les dernieres la structure et les données.
J'ai lu dans la doc de mySql qu'il existait des fonctions de replication.
Le problème c'est qu'apparement avec mon hébergeur je n'ai pas acces à ces fonctions de replication (je leur ai envoye un mail pour savoir si c'était possible d'activer ses fonctions ou pas).
En attendant d'avoir une reponse de leur part et dans le cas où celle ci est négative, je cherche un moyen de repliquer par moi meme mes bases de donnée.
Je n'ai pour le moment pas trouver de scripts le faisant tout seul.
J'ai pensé alors au fichier log de mySql mais j'ai bien peur de ne pas y avoir acces.
J'ai dans l'idée de modifier PhpMyAdmin afin de créer un fichier log avec les modifications faites à partir de PhpMyAdmin.
Avant de me lancer dans une telle aventure, j'aimerais savoir si certains d'entre vous ont d'autres solutions à me proposer.
Merci d'avance
Ankou
-
Bonjour,
De quel type d'hébergement s'agit-il ? Gratuit, mutualisé, dédié ?
Quel est le but de cette réplication ? Si tu n'as pas besoin de répliquer en temps réel il peut y avoir d'autres outils (mysqldump, etc.) pour récupérer et exploiter les données de la base...
-
Il s'agit d'un hébergement mutualisé (gratuit pour 3 ans)
La replication ne serait en aucun cas en temps réel.
Elle servirait juste à répliquer les changements faits sur la structure et certaines données depuis une base de donnée de développement vers une base de donnée de production.
-
A ce moment-là tu pourrais utiliser l'update log (ou le binary log) du serveur de développement pour récupérer ces modifications et ensuite les exécuter sur le serveur de production (à condition d'avoir accès à ce dernier depuis l'extérieur).
-
J'avais également envisagé cette solution mais n'étant pas sûr d'avoir accès à ce(s) fichier(s) je cherchais une solution alternative.
Je pense pas avoir accès à ce(s) fichier(s) car apparement chez mon hébergeur les bases de données sont sur un serveur dédié et je n'ai acces qu'au serveur d'hébergement via SSH.
Je jeterai un coup d'oeil au cas où j'y ai accès mais j'ai bien peur que ce ne soit pas le cas.
-
OK, la base de dév et de production sont sur le même serveur chez ton hébergeur ?
Effectivement si tu n'as pas accès aux logs, je ne vois pas comment faire (à part avec une solution en PHP mais qui risque d'être lourde)...
-
oui la base de DEV et de PROD sont sur le meme serveur.
En effet si j'ai pas acces aux fichiers logs il faudra que je me crée ma propre solution pour repliquer les données que je souhaite.
J'essayerai de regarder ce soir si j'ai acces à ces fichiers de log sinon je vais devoir reflechir à une autre solution. :?
-
Bon j'ai cherché un peu et pas moyen de mettre la main sur ces fichiers de log.
La hotline est pas fichue de me renseigner.
Quelqu'un aurait une idée pour que je trouve le nom de ce fichu fichier de log?
-
Je voudrais pas te décevoir, mais si c'est un serveur mutualisé ça m'étonnerait que ton hébergeur te laisse y accéder...
-
En effet c'est pas gagné.
En plus à chaque fois que je les appelle ou que je leur envoie un mail soit ils comprennent rien à ce que je demande soit ils répondent à côté ;)
Du coup j'ai commencé à programmer mon propre outil de réplication.
Je vous ferai signe quand j'aurais fini si ca interesse quelqu'un :)
-
J'ai enfin fini ma classe qui me permet de faire ma réplication de données d'une base sur une autre. (en hébergement mutualisé sans replication mysql native ni accces aux fichiers de log)
Si le script intéresse quelqu'un, dites le moi.
Edit : le script a été posté ici : http://www.developpez.net/forums/vie...423391#2423391
-
Bonjour,
Suite à un crash de mon PC, j'ai malheureusement perdu le script que j'avais fait pour faire la réplication de mes bases de donnée.
Si par hasard, quelqu'un avait téléchargé mon script et le possède toujours, je serai ravi de pouvoir le récupérer.
Merci d'avance
Ankou