ams51 Posté 19 Septembre 2008 Posté 19 Septembre 2008 Bonjour, Je suis en train de monter un serveur de test chez moi (il était temps après 6 ans a développer directement sur la prod). On a réussi a monter le serveur et faire fonctionner PHP. Maintenant le pb est d'importer les bases de mon serveur de prod sur le serveur de dev. Idéalement je voudrais que chaque base ait les mêmes acces (login/pass) et le même contenu. N'y connaissant pas grand chose je voudrais ne pas faire de bétises. Je pense utiliser les commandes mysql et/ou mysqldump mais est ce suffisant pour avoir les mêmes login/pass ? y a t il des fichiers utilisateurs à rapatrier aussi ?
Dan Posté 19 Septembre 2008 Posté 19 Septembre 2008 Si tu as exactement les même versions chez toi, tu peux exporter les bases de données, ainsi que la base mysql. C'est cette dernière qui comporte les login/mots de passe. Tu peux aussi (comme alternative) copier l'intégralité du répertoire /home/mysql, mais il faut pour cela que mysql soit arrêté sur les 2 serveurs !
ams51 Posté 23 Septembre 2008 Auteur Posté 23 Septembre 2008 Si tu as exactement les même versions chez toi, tu peux exporter les bases de données, ainsi que la base mysql. ça aurait été trop simple... j'ai une version 4.1.20 en prod et 5.0.32 en local Est ce que passer en Mysql 5 sur mon serveur implique de gros changements ? Plantage, compatibilité ?
Invité Posté 23 Septembre 2008 Posté 23 Septembre 2008 Bonjour, je te conseille de faire un export de la base en sélectionnant la compatibilité MYSQL 4.0 dans ce cas là. C'est une option sur la page d'export. --> Si tu exportes en 4.0, que tu travailles avec cette version, tu restes en 4.0 --> Ensuite pour la remettre en Prod, tu réexportes en 4.0 Je l'ai déjà fait sur plein de sites, le seul danger (ça m'est arrivé 2X), c'est de me planter sur le charset qui était différent de la 4.0 à la 5.0, mais bon, c'est ma faut, je passais d'un serveur mysql FR à US ou l'inverse... Donc fait attention. Lolo
Dan Posté 23 Septembre 2008 Posté 23 Septembre 2008 La différence majeure entre la version 4 et la version 5 est dans l'analyse de la syntaxe des "join" ... La version 5 est moins permissive que la version 4 sur le plan syntactique, et il faut éventuellement utiliser les parenthèses pour que le "join" se fasse comme tu le souhaites.
ams51 Posté 23 Septembre 2008 Auteur Posté 23 Septembre 2008 En fait je passe les bases de la prod (mysql4) sur la dev (mysql5)... si tout fonctionne je passerai la prod en mysql5 Voilà ce que j'ai fait pour exporter mysqldump --all-databases --add-drop-table -u -p | gzip > all_databases.sql.gz et pour importer j'ai un pb avec le final en gras... zcat all_databases.sql.gz | mysql -u -p < [b]quoi mettre là ??[/b] je me suis inspiré de http://www.webmaster-hub.com/index.php?sho...mp;hl=mysqldump et http://www.manuelphp.com/mysql/mysqldump.php La différence majeure entre la version 4 et la version 5 est dans l'analyse de la syntaxe des "join" ...La version 5 est moins permissive que la version 4 sur le plan syntactique, et il faut éventuellement utiliser les parenthèses pour que le "join" se fasse comme tu le souhaites. ok merci je vais tester tout ça.... si mon forum invision et wordpress passent alors tout ira bien.
Dan Posté 23 Septembre 2008 Posté 23 Septembre 2008 Tu aurais dû le faire base par base... au moins cela te permet de restaurer plus facilement. Et pour Invision et Wordpress, aucun souci avec les versions récentes. Pour faire toutes tes bases, tu peux par exemple lancer situ en as beaucoup : cd /home/mysql # soit le répertoire où sont tes basesfor i in `ls -l | grep "^d" | awk '{print $8}'` #remplacer éventuellement $8 par $9 ... tout dépend du format de sortie de ton "ls"doecho $imysqldump -u$USER -p$PASSWORD -e -q -Q --add-drop-table $i | gzip > $REPl/$i.sql.gzdone en remplaçant $USER, $PASSWORD et $REP par l'utilisateur (root), mot de passe et répertoire de destination.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant