J'utilise des déclarations d'ici: p>
Mais je devais les modifier parce que j'utilise un utilisateur multi-utilisateur et qu'il a une structure de table différente (tables numérotées étranges). Comme vous pouvez le voir dans mon Question précédente Tout est vraiment problématique ... Donc, ma question est la suivante: p>
Puis-je simplement changer http://old-domain.com em> à http://new-domain.com em> partout ... dans chaque table de cette base de données? Comment puis-je faire une telle recherche et remplacer par mysql? Ou peut-être quelque chose d'autre serait préférable d'utiliser pour cette tâche? P>
3 Réponses :
Vous pouvez jeter l'ensemble du fichier dB sur .sql et faire le remplacement et l'importer en arrière.
Pour vider DB au fichier SQL, vous pouvez utiliser la commande mysqLDump ou que vous pouvez faire si PhpMyAdmin P>
mysql -uUSERNAME -pPASSWORD -h MYSQLDOMAIN YOURDB < yourdbdump.sql
En quoi? Je suis sur Linux avec / gnome.
Hé, cela a travaillé pour moi, mais j'aimerais comprendre ce que signifie-à-dire, quelqu'un peut-il l'expliquer? Merci!
@OHMMHO, -I code> signifie éditer le fichier en place, je ne suis pas sûr de savoir pourquoi je mets
-e code> là-bas peut ne pas être vraiment nécessaire.
WordPress MU est une douleur dans le cul à migrer.
Il n'y a rien de table pour table et remplacer ces URL. Et vous souhaitez faire preuve de prudence du fichier de vidage SQL au cas où l'URL est stockée à l'intérieur des objets ou des tableaux sérialisés, car vous détruisez ensuite l'intégrité de ces données. P>
Si vous voulez le faire directement à l'intérieur. Mysql tu peux, mais ça va prendre du temps. Ce sera aussi le plus sûr. P>
Ce sera plus facile dans phpmyadmin, même pour l'expérience SQL Gurus, car phpmyadmin n'est tout simplement pratique que vous modifiez souvent la requête SQL. La requête de base est la suivante: p> donc, dans votre cas, pour les tables de poste: p> Suivant, regardez les tables postméta. Vous pouvez courir dans des problèmes ici s'il y a des données sérialisées. Donc, une recherche d'abord pour voir à quoi ressemble les données et voir s'il existe des champs spécifiques, vous devez quitter le script de recherche / remplacement. Votre mise à jour pour cette table ressemblera beaucoup à la dernière: p> Si vous avez trouvé des champs que vous devez exclure, modifiez le script comme: P> Update wp_1_postmeta
SET meta_value = REPLACE(meta_value,"www.oldurl.com","www.newurl.com")
WHERE meta_value LIKE "%www.oldurl.com%"
AND meta_name NOT IN ('meta_name_1', 'meta_name_2')
Aussi: Notez que le blog_id in wp_blogs correspond à la structure de table WP _ * _ _ dans la base de données - vous pouvez écrire un script PHP pour passer à travers et gérer la migration pour vous. J'ai fait cela et c'est un énorme gain de temps (je travaille beaucoup avec WP & WPMU). Malheureusement, je ne peux pas relâcher le script car il a été écrit au moment de l'entreprise.