Note : L’ensemble des commandes SSH de ce tuto sont à taper à la racine de votre projet.

Avec magerun (méthode la plus efficace)

Supprimer la BDD existante, en recréer une vide, importer la nouvelle BDD :

Sans magerun

Si la nouvelle base de données est fournie sous forme d’archive *tar.gz

Décompresser l’archive à la racine de votre projet :

  • avec n’importe quel utilitaire de type Winzip, Winrar, 7zip…
  • …ou décompresser l’archive en tapant la ligne de commande suivante :

Si la nouvelle base de données est fournie sous forme d’archive *.gz

Notez bien le nom du fichier ma_nouvelle_base_de_données.sql que vous venez de décompresser. Vous en aurez besoin dans un instant…

Remplir les tables avec la nouvelle base fraîchement copiée

Pour modifier (où simplement obtenir) les username, password et dbname de votre base de données taper la commande :

Les informations dont vous aurez besoin sont renseignées entre les balises suivantes :

Notez que ce fichier doit également contenir l’URL local de votre site :

Commande SSH à exécuter pour déployer la base :

Attention, lorsque mysql est dockerisé, rajouter un paramètre -h db. La commande suivante sue joue à l’intérieur du conteneur !

Lancer, toujours ds le Docker, le script configurator, qui permet de setter la config (notamment de mettre à jour les URLs) projet :

Exemple :

Attention : -p et le mot de passe doivent être collés !!

Remarque : il reste possible que la commande fonctionne sans qu’on ait besoin de renseigner le mot de passe.

Changer les URLs de la nouvelle base que vous venez d’importer dans votre projet par vos URLs locales

Se connecter à un PhpMyAdmin qui permet d’administrer les tables du projet Magento

Méthode 1:

magento-modifier_URL_bdd

Si le site possède plusieurs Store Views (multilangue) :

Sous phpMyAdmin, dans le champ textarea de l’onglet SQL, taper :

Que faire dans le cas où le contenu des pages s’affiche dans le navigateur mais que les ressources CSS et JS ne sont pas chargées ?

Dans cet ordre :

  1. Afficher la source dans le navigateur (ctrl + u) et vérifier que la racine des URLs vers lesquelles pointent vos ressources CSS et JS est similaire à l’URL du site.
    Dans l’exemple ci-dessous, ce n’est pas le cas :

    magento_bdd-url_error

    Si la racine des URLs vers lesquelles pointent vos ressources CSS et JS est différente de l’URL du site :

    Rendez-vous en base de données et dans la table core_config_data effectuer une recherche (onglet Rechercher) dans la colonne value avec comme opérateur LIKE %…% et comme valeur le libellé de la racine de votre URL (dans notre exemple : media.xxx.com).

    magento_bdd-bad_url_search

    Vous devriez vous retrouver avec les résultats suivants (les URLs dans la dernière colonne de la capture sont déjà modifiées :

    magento_bdd-edit_url

    Editez les URLs dans la dernière colonne comme suit :
    Pour base_xxx_url dans l’avant-dernière colonne, mettrez <url_de_la_racine_de_mon_site>/xxx/ dans la dernière colonne.

  2. Vérifier en backoffice que les caches sont désactivés. System > Cache Management. Attention : j’ai eu un cas où les caches étaient, à priori, désactivés mais lorsque j’ai cliqué sur le bouton « Flush Magento Cache » (1er bouton en haut à droite, au-dessus du tableau) tout est repassé en ENABLED !
    En ligne de commande, on peut supprimer les caches de la manière suivante :

  3. Eventuellement, jouer sur la compression des ressources CSS et JS.
    System > Configuration > (Sidebar) encart ADVANCED > entrée Developer > volets « Merge JavaScript Files » et « Merge CSS Files » à No.

Méthode 2:

Sélectionner la table core_config_data relative à la base de données de votre projet.

Trouver un mot-clé présent dans toutes les URLs qu’on souhaite changer et effectuer une recherche à partir de celui-ci (cf. illustration ci-dessous avec le mot-clé ‘netapsys’) :

  • Onglet Rechercher
  • Dans le tableau, dernière rangée ‘value’ sélectionner l’opérateur LIKE %…%
  • Mettre votre mot-clé dans la colonne ‘Valeur’

01

…puis éditer les URLs souhaitées parmi celles qui s’affichent dans la liste des résultats de recherche.

Se connecter au backoffice du projet Magento.

  • Catalogue > Gérer les produits
  • Sélectionner tous les éléments de la colonne ‘Nom’ qui n’ont pas d’URL de spécifié dans la colonne ‘Sites web’
  • En haut à droite du tableau, champ ‘actions’ choisir ‘Mettre à jour les attributs’

02

  • Dans la colonne de gauche ‘Informations produits’ sélectionner l’entrée ‘Sites web’
  • Cocher la case qui correspond au site qui vous intéresse dans le groupe de champs ‘Modifier les attributs > Ajouter le produit aux sites web’
  • Cliquer sur sauvegarder

03