Script d’une sauvegarde de la Base Mysql de Magento

Création d’un Script de sauvegarde

Nous avons besoin de faire quoi

  1. De sauvegarder la base (Mysqldump)
  2. De changer les droits de la sauvegarde (chmod)
  3. De Compressez la sauvegarde (Gzip)

J’ai fait un tutoriel sur  le Script :

#!/bin/sh
# La première ligne sert à spécifier quel shell tu veux excéuter. ici sh
# pour executer un script il faut
# 1) changer c'est droit pour devenir executable:  chmod 777 NomDuScrip.sh
# 2) puis l'executer : ./NomDuScrip.sh

mysqldump -u Login -pMotdePasse NomBase >/VotreChemin/Sauvegarde.sql 

chmod 777 /VotreChemin/Sauvegarde.sql 

gzip -f -9 /VotreChemin/Sauvegarde.sql

Créer une Tache pour Chaque jour de la semaine avec un nom de Sauvegarde différent (SauvegardeDuLundi.sql, Mardi.sql, etc..,) vous pouvez aussi faire Janvier, Fevrier, etc..

Les Habitués du script ajouteront une variable

______________________________________________________

2) Créer une tâche Planifiée avec Gnome-schedule

  • Si vous utilisez gnome-schedule :
  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description “Ma sauvegarde du Lundi”
  • Commande : Précisez votre Script ou la ligne de commande :  ./CheminDuScrip/script.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine 1 = à 7H00 tous les lundi
  • Ajouter et Valider

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

3)  Ou créer une tâche Planifiée avec crontab :

Planificateur de tâche en ligne de commande

(sans gnome-schedule), tapez :
crontab -e
insérez : 0 7 * * * ./CheminDuScrip/script.sh

Explication des instructions crontab sur wikipedia


J’ai fait aussi un tutoriel pour planifier cette sauvegarde toutes les nuits : voir ici : Comment planifier des taches magento avec planificateur taches gnome schedule

Script pour garder en pleine forme Magento.

Script pour garder en pleine forme Magento.

Avec un éditeur de texte nous allons créer un fichier script.sh,

Il doit impérativement commencer par : #!/bin/sh

Nous allons y mettre tout ce que votre serveur Magento a besoin de faire régulièrement.

  • Nettoyer les log de la base de données régulièrement
  • Exécuter la tache Cron.sh de Magento
  • Vider la corbeille du serveur
  • Vider dossier cache et session*
  • Redémarrer les Services apache
  • Redémarrer les Services Mysql
* Mise en garde : vider les sessions a pour effet de vider les paniers en cours et déconnecte les utilisateurs en cours.

_______________________________________________________

 Nettoyer les log de la base de données régulièrement

1) Créer un fichier est les instructions Mysql pour vider les table de Log

Créer avec un éditeur un fichier texte , nommez -le : Vider_table_log.mysql

DELETE FROM dataflow_batch_export;
DELETE FROM dataflow_batch_import;
DELETE FROM log_customer;
DELETE FROM log_quote;
DELETE FROM log_summary;
DELETE FROM log_summary_type;
DELETE FROM log_url;
DELETE FROM log_url_info;
DELETE FROM log_visitor;
DELETE FROM log_visitor_info;
DELETE FROM log_visitor_online;
DELETE FROM report_viewed_product_index;
DELETE FROM report_compared_product_index;
DELETE FROM report_event;

Enregistrez les dans votre dossier /magento/shell/

2) On va créer le Script de purge :

#!/bin/sh
# La première ligne sert à spécifier quel shell tu veux excéuter. ici sh
# pour executer un script il faut
# 1) changer c'est droit pour devenir executable:  chmod +x NomDuScrip.sh
# 2) puis l'executer : ./NomDuScrip.sh

############################################################
#### ETAPE 1 Nettoyer les log de la base de données ###########
############################################################

#### Connexion a votre Base de Données Magento Mysql ####
##### mysql -h machine -u utilisateur -pMotdePase base_de_données
##  Exemples :
##  mysql -h localhost -u User161 -p35hpzq.. Base161
##  mysql -h 17.31.2.67 -u User161 -p35hpzq.. Base161
## vous pouvez tester dans un terminal, Si vous ête connecté il doit apparaitre :  Mysql>
##  Modifier ci-dessous pour mettre vos paramètre

mysql -h localhost -u User161 -p35hpzq.. Base161 < /magento/shell/Vider_table_log.mysql 
echo "si vous n'avez vu aucun message d'erreur la base est purgé :)"

#########################################################
#### ETAPE 2 Exécuter la tache Cron.sh de Magento #######
#########################################################
/var/www/vhosts/VotreSite.fr/httpdocs/DossierMagento/cron.sh

#########################################################
#### ETAPE 3 Vider la corbeille du serveur ################
#########################################################
rm -r -f /var/.Trash-0/

#########################################################
#### ETAPE 4 Vider cache et session #######################
#########################################################
rm -r  -f /var/www/vhosts/VotreSiteInternet/httpdocs/VotredossierMagento/var/cache

# Attention cette ligne va également vider les panier en cours et déconnecter les utilisateurs
rm -r  -f /var/www/vhosts/VotreSiteInternet/httpdocs/VotredossierMagento/var/session

#########################################################
#### ETAPE 5 Redémarrer les Services apache #############
#########################################################
service apache2 restart

#########################################################
#### ETAPE 6 Redémarrer les Services mysql ##############
#########################################################
service mysql restart

3) Exécuter :

  • Enregistrer le fichier dans un  dossier de votre Serveur, par exemple
     /var/vhosts/VotreSite.fr/httpdocs/VotreMAgento/shell/Script_pour_pourger_logs.sh
  • Ajouter le Droit de l’exécuter :
    chmod +x /var/MesSauvegarde/sauvegarde.sh
  • Pour l’exécuter il vous reste plus qu’a taper :
    ./var/vhosts/VotreSite.fr/httpdocs/VotreMAgento/shell/Script_pour_pourger_logs.sh

______________________________________________________

Vous n’avez plus qu’a insérer ce petit script dans un tâche Planifiée avec Cron ou Gmone-schedule


Créer une tâche Planifiée

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description “Script Magento en pleine forme”
  • Commande : Précisez votre Script ou la ligne de commande :  ./var/vhosts/VotreSite.fr/httpdocs/VotreMAgento/shell/Script_pour_pourger_logs.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine * = à 7H00 tous les jours
  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 7 * * * ./var/vhosts/VotreSite.fr/httpdocs/VotreMAgento/shell/Script_pour_pourger_logs.sh

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

___________________________________________________________________

Ou  avec crontab  (Planificateur de tâche en ligne de commande )

(sans gnome-schedule), tapez :
crontab -e
insérez : 0 7 * * * ./var/vhosts/VotreSite.fr/httpdocs/VotreMAgento/shell/Script_pour_pourger_logs.sh

Explication des instructions crontab sur wikipedia


 j’ai fait un tutoriel sur les taches Planifiées ici

_______________________________________________________

On peut aussi ajouter:

  • Sauvegarder la base de Magento
  • Compresser cette sauvegarde
  • Copier cette Sauvegarde vers un autre dossier

Voir tutoriel Créer une sauvegarde Mysql Magento en ligne de commande ici

Script sauvegarde du dossier Magento entre deux serveurs

Pour copier le dossier de Magento entre deux serveurs, automatiquement la Nuit .

il faut :

  • Installer curlftpfssur les serveurs (au moins sur celui Destination)
  • Créer un Script de copie entre les deux serveurs
  • Planifier l’exécution du script la nuit (matin très tôt +-5h)

Pour installer curlftpfssur  soit en ligne de commande dans un terminal (ssh avec putty.exe), tapez

sudo apt-get install curlftpfs

Soit sous gnome si vous acceder a gnome via un interface grahique voir FreeNX

> ubuntu > applications >Logithèque Ubuntu > curlftpfss

_______________________________________________________

voici que que nous allons mettre dans le Script

A saisir dans un éditeur de texte : enregistrez sous : /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh


#!/bin/sh
# La première ligne sert à spécifier quel shell à excéuter. (sh)
# pour executer un script il faut
# a) changer le droit devenir executable:  chmod 777 NomDuScrip.sh
# b) puis l'executer : ./NomDuScrip.sh
##################################################################

#  Création de deux dossiers temporaires sur votre serveur :  /
mkdir /var/ftpt
mkdir /var/ftptemp

# 2 Activer la connexion du serveur distant en FTP vers ce dossier /var/ftp
# Vous devez connaitre le nom du ServeurFTP, Login et Mot de passe
curlftpfs ftp://MonServeurFtp.fr/DossierDistant /var/ftp -o user=Login:MotDePasse

# 3 Purger la cache du serveur distant :
rm -Rf /MonFtp/Magento/var/cache
rm -Rf /MonFtp/Magento/var/session

# 4 Purger la cache du serveur destination :
rm -Rf /var/www/vhosts/VotreSite.fr/httpdocs/Magento/var/cache
rm -Rf /var/www/vhosts/VotreSite.fr/httpdocs/Magento/var/session

# 5 sauvegarder .htaccess et local.xml du serveur Destination
cp /var/www/vhosts/VotreSite.fr/httpdocs/Magento/app/etc/local.xml /var/ftptemp/sauvegarde_local.xml
cp /var/www/vhosts/VotreSite.fr/httpdocs/Magento/.htaccess /var/ftptemp/sauvegarde_htaccesslocal
#
# 6 Copie du dossier Magento (Serveur distance source) vers le celui-ci
# avec la commande cp -r  vous pouvez ajouter 
# -uNe pas effectuer la copie si le fichier destination existant a une
# date  de  modification  plus  récente que celle du  fichier source.
cp -r -u /var/ftp/magento /var/www/vhosts/MonSite.fr/httpdocs/
#
# 6 Remettre .htaccess et local.xml du serveur Destination
cp /var/ftptemp/sauvegarde_local.xml /var/www/vhosts/VotreSite.fr/httpdocs/Magento/app/etc/local.xml
cp /var/ftptemp/sauvegarde_htaccess /var/www/vhosts/VotreSite.fr/httpdocs/Magento/.htaccess
#
# 7 Vérifier les Droits
chmod -R 777 /var/www/vhosts/VotreSite.fr/httpdocs/Magento/
#
# 8 Désactiver le ftp /var/ftp/ (démonter)
umount /var/ftp
#
# 9 supprimer des dossiers temporaires /var/ftp et /var/ftptemp
rm -Rf /var/ftp
rm -Rf /var/ftptemp

#
#
# Terminée....

Pour Exécuter le script :

changer le droit devenir executable:

chmod 777 /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh 


Exécuter :

./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh 

_______________________________________________________

Attention : Il faut aussi copier la base de données Mysql de Magento

J’ai fait deux autres tutoriels  dont  un qui regroupe les deux en mêmes temps Base + Dossier ici : Tutoriel pour automatiser une copie total de magento entre deux serveurs

et un juste pour la Base Mysql ici : Comment créer un script de copie base mysql-entre deux serveurs magento prestashop

_______________________________________________________

Créer un Tache Planifier pour lancer ce script Automatiquement :

Créer une tâche Planifiée

Pour installer le planificateur taches gnome schedule suivre ce tutoriel.

  • Démarrez Tâche Planifiées > Applications > Outils système > Tâches Planifiées
  • Cliquez sur Nouveau
  • Cliquez sur Une tâche lancée régulièrement
  • Saisissez une Description “Ma sauvegarde”
  • Commande : Précisez votre Script ou la ligne de commande :./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Expert saisissez : Minute 0 – Heure 7 – jour * – Mois * – jour de la semaine 1 = à 7H00 tous les lundi
  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 5 * * * ./var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.___________________________________________________________________

    Ou  avec crontab  (Planificateur de tâche en ligne de commande )

    (sans gnome-schedule), tapez :
    crontab -e
    insérez :0 5 * * *
    /var/vhosts/VotreSite.fr/httpdocs/VotreMagento/shell/Script_sauvegarde_ftp.sh
  • Explication des instructions crontab sur wikipedia

     j’ai fait un tutoriel sur les taches Planifiées ici

Vous pouvez Cliquez sur  Lance la tache Sélectionner + “Exécuter” pour tester la tache.

Planifier une Sauvegarde d’un Serveur PLESK

  1. Sauvegarde vers un dossier (répertoire) du Serveur.
  2. Sauvegarde vers un dossier en FTP ( vers un autre Hébergement)

Ce que vous allez voir ici est valable aussi bien au Niveau du Serveur ou dans un domaine du Serveur :

1) Sauvegarde vers un dossier (répertoire) du Serveur ou d’un domaine (même Manip).

La manipulation est très simple, dans Plesk :

Sauvegarde Serveur: Plesk Accueil> Outils & Paramètres > Gestionnaire de sauvegardes

Sauvegarde Domaine: Plesk Accueil> Abonnements>  Votre Domaine> Sites Web & Domaines > Gestionnaire de sauvegardes

Remplir le Formulaire :

  • Activer cette tâche de sauvegarde « oui« 
  • Périodicité des sauvegardes « jour/Semaine/mois/
  • Démarrer la création de la sauvegarde à (HH:mm) *: Je conseille Tard dans la nuit, pas en même temps qu’une autre Tache Planifier
  • Nombre maximum de sauvegardes dans le répertoire : 3 devrais suffire
    c’est pour économiser l’espace disque, vous pouvez limiter le nombre de sauvegardes. Une fois cette limite atteinte, les nouvelles sauvegardes remplaceront les anciennes dans le répertoire.
  • Suspendre les domaines jusqu’à la fin de la tâche de sauvegarde : si vous avez de problème de ressource ou des échecs, Cochez cette Case.

La sauvegarde par Plesk sera sur votre serveur ici : /var/lib/psa/dumps/ + domains/  pour une sauvegarde juste d’un domaine

Note : Surveiller la taille de ce dossier, vous pourrier Saturer votre Serveur.


2) Sauvegarde vers un répertoire FTP.

Note : Il est inutile de faire un Sauvegarde vers un dossier (répertoire) du Serveur. si vous faites des sauvegardes en FTP, simplement car ce choix FAIT AUSSI la Sauvegarde vers un dossier du serveur avant transférer en FTP

Il est nécessaire d’avoir un petit hérbergement FTP ( personnel) pour procéder a ce type de sauvegarde.

a)  Dans Plesk :

Sauvegarde Serveur: Plesk Accueil> Outils & Paramètres > Gestionnaire de sauvegardes

Sauvegarde Domaine: Plesk Accueil> Abonnements>  Votre Domaine> Sites Web & Domaines > Gestionnaire de sauvegardes

Remplir le Formulaire avec les information de Votre compte FTP :

  • Nom d’hôte ou adresse IP du serveur FTP *
  • Répertoire pour le stockage des fichiers de sauvegardes
  • Nom d’utilisateur FTP *
  • Mot de passe FTP

b) Dans Plesk : Outils & Paramètres>Répertoire du serveur> Gestionnaire de sauvegardes > Paramètres de la sauvegarde planifiée

Remplir le Formulaire :

  • Activer cette tâche de sauvegarde « oui« 
  • Périodicité des sauvegardes « jour/Semaine/mois/
  • Démarrer la création de la sauvegarde à (HH:mm) *: Je conseille Tard dans la nuit, pas en même temps qu’une autre Tache Planifier
  • Nombre maximum de sauvegardes dans le répertoire : 3 devrais suffire
    c’est pour économiser l’espace disque, vous pouvez limiter le nombre de sauvegardes. Une fois cette limite atteinte, les nouvelles sauvegardes remplaceront les anciennes dans le répertoire.
  • Configuration et contenu du domaine: choisir intégralité de la configuration et du contenu
  • Suspendre les domaines jusqu’à la fin de la tâche de sauvegarde : si vous avez de problème de ressource ou des échecs, Cochez cette Case.

La sauvegarde par Plesk sera sur votre serveur ici : /var/lib/psa/dumps/ +domains/ pour une sauvegarde juste d’un domaine

Note : Surveiller la taille de ce dossier, vous pourrier Saturer votre Serveur  et l’espace disponible sur votre FTP



La sauvegarde par Plesk sera sur votre serveur

ici :

/var/lib/psa/dumps/ +domains/ pour une sauvegarde juste d'un domaine

 



Restaurer la Base MySQL avec une Sauvegarde de Magento

Restaurer avec la Sauvegarde par Magento : « Quelle Galère, dire que j’ai utilisé cette solution pendant plus d’un an » c’est Lent, Compliqué et pas fiable !

Si vous pouvez éviter,  j’ai crée un tutoriel qui explique comment restaurer en moins d’une minutes, simple et efficace : Copier Sauvegarder et Restaurer facilement une Base Mysql de Magento

Si vous n’avez pas le choix, si vous utilisez un Hébergement Mutualisé voici la procédure :


Restaurer une Sauvegarde Magento il faut :

  • Faire la sauvegarde dans Magento
  • Décompresser la sauvegarde
  • Éditer la sauvegarde
  • Supprimer Créer une Base Vierge
  • Découper la sauvegarde en plusieurs parties (éventuellement)
  • Restaurer (importer dans une nouvelle base)
  • Éditer core_config_Data (éventuellement)
  • .htaccess (éventuellement)

  1.Faire la sauvegarde dans Magento

Faire une Sauvegarde de votre Base de donnée dans magento Admin Panel>System>Outil>Sauvegarde

Puis cliquez sur gz pour récupérer cette sauvegarde

date
1195xx
BD
gz peut être décompressée avec 7-Zip

Si votre base est trop grosse, et que vous n’arrivez pas a sauvegarder, voici deux méthodes Beaucoup plus efficace mais qui voir : ce Tutoriel : Copier Sauvegarder et Restaurer facilement une Base Mysql de Magento


   .2 Décompressez La Sauvegarde

  • Vous munir d’un utilitaire de décompression comme Peazip.exe par exemple ou 7-zip.exe (vous trouvez ça dans google sur Filehippo.com ou Clubic)
  • Décompresser votre Sauvegarde

   .3 Éditer la sauvegarde

  • Avec un éditeur de texte comme Notepad ++  ou Geany par exemple ouvrez la sauvegarde.
  • Supprimer en début du fichier ce que j’ai barré (laissé le ; à la fin de chaque ligne)
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */ ;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */ ;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */ ;
/*!40101 SET NAMES utf8 */ ;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */ ;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
  • Supprimer en fin du fichier ce que j’ai barré (laissé le ; à la fin de chaque ligne)
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */ ;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */ ;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */ ;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */ ;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */ ;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */ ;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */ ;

Si votre sauvegarde est grosse pensez a compresser avant de la restaurer


.5  Supprimer / Créer une Base viège

Selon les cas:

  • Hebergement Mutualisé : Si vous êtes sur un Hebergement Mutualisé le plus simple est passer par le Management de votre compte pour supprimer la Base et la ré-créer. (si vous avez le droit a plusieurs Base MySQL, créer en une autre a coté de l’ancienne
  • Plesk : Si vous avez Plesk, (Pourquoi suivez-vous ce Tuto, car dans plesk il  y a plus simle ! voir celui-ci ) Plesk > Domaines > Gérer l’Hébergement >  Sites Web & Domaines > Base de Données > supprimer  Puis > Ajouter une nouvelle base de données.
  • phpMyAdmin : par phpMyAdmin il faut Sélectionner la Base > Cocher toutes les tables > Pour la sélection choisirSUPPRIMER   – Il faut recommencer plusieurs fois l’Opération,  ±5 fois – il n’y aura pas besoin de re-creer la base car elle existe deja, elle juste vide.

.5 Restaurer

Il existe plusieurs solutions pour restaurer votre Base MySQL Magento,

mysql -u LoginDeLaNouvelleBaseVierge -p NomDeLaBaseNouvelleBaseVierge < /CheminDeLaSauvegarde/sauvegarde.sql

Si vous ne pouvez saisir de ligne de commande, c’est que vous êtes sur un Hébergement Mutualisé, votre Hébergeur a du vous fournir un accès à phpMyAdmin pour gérer votre Base MySQL, si nous n’avez pas le minimum, il va falloir demander a votre Hébergeur quel solution il propose, ou changer d’Hébergement voir ce tuto.

  • phpMyAdmin :  > Sélectionnez la Base (elle doit être vide sans aucune table) > Importer > Parcourir > choisir votre fichier de sauvegarde > Exécuter
  • Si votre base est petite ça va passé 🙂
  • Si elle est un peu grosse, compresser-la, phpMyAdmin supporte les fichiers compressés 🙂
  • Si elle est trop grosse, seule une partie a été importé, il faut donc la découper 😦

.5 Découper en plusieurs parties à restaurer

Si elle est trop grosse, seule une partie a été importé, il faut donc la découper.

  • Avec PhphMyAdmin regardez la dernière table importée, notez son Nom et suprimez-la ( la dernière à été restaurée importé incomplète)
  • Avec un éditeur de texte comme Notepad ++  ou Geany par exemple
  • Ouvrez la sauvegarde. (la version  de la sauvegarde décompressée uniquement)
  • Laissez les Premières lignes, Puis supprimer tout jusqu’à Table que vous avez NOTEZ.
SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT;
SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS;
SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION;
SET NAMES utf8;
SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO';
SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0;

Suprimez tout....... 

         ......jusqu'à la Base de vous avez Noté

--
-- Table structure for table `Nom Table que vous avez Noté`
--
  • Sauvegardez le fichier sous « Partie_2.sql » (éventuellement compressez là)
  • phpMyAdmin :  > Sélectionnez la Base (elle doit être vide sans aucune table) > Importer > Parcourir > choisir votre fichier Partie_2.sql(ou .gz) > Exécuter
  • Recommencez au s’il faut une partie 3, Notez, supprimer, enregistrez sous, Importer, etc..

Si vous n’avez pas réussi à découper votre Base, c’est quelle trop grosse pour être ouvert par un editeur de texte. Vous n’avez pas d’autre choix que de l’importer/Restaurer pas une ligne de commande,  si votre Hebergement ne le permet pas, contactez votre Hebergeur, il peut certainement l’importer/restaurer moyenant quelques Euro, Je sais OVH propose ce type de service,  1and1  je ne crois pas. Si non c’est que votre Hébergement n’est pas adapté à Magento. Changez d’hebergement.


.7 Editer core_config_Data

il est nécessaire de modifier core_config_Data, que si vous avez restaurez ou copié votre Magento vers un dossier ou nom de domaine différents de l’original

  • Modifier avec PhpAdmin
  • Si vous utlilisez Plesk c’est ici Plesk>  Abonnements> votre site> Sites Web & Domaines>  Bases de données > Admin Web
  • Recherchez la Table :  core_config_Data
  • à la 3iem  et 4iem ligne :
web/unsecure/base_url http://VotreSite/VotreDossierMagento/
web/secure/base_url http://VotreSite/VotreDossierMagento/
  • Cliquez sur Modifier pour corriger.

Mise en Garde : il y a un bug dans  phpMyAdmin : Si vous avez modifié juste avant une autre base MySQL, votre navigateur garde en mémoire la session donc vous empêche de la modifier ! Solution : il faut juste vider l’historique de votre navigateur. Personnellement, j’utilise 5 Navigateurs (Opera, Safari, Chrome, Firefox, Explorer) , comme ça je peux modifier ou comparer plusieurs bases MySQL en même temps sans avoir d’interférence entre les deux :)


   .8 Editer .htaccess

il est nécessaire de modifier .htaccess, que si vous avez restaurez ou copié votre Magento vers un dossier différents de l’original

  • Sur votre Serveur il doit être là : /var/www/vhosts/VotreSite/httpdocs/VotreDossierMagento/
  • Ouvrir le Fichier .htaccess de votre dossier Magento avec un éditeur Geany sous linux, Notepad++ sous Windows..)
  • Rechercher dans ce fichier :  RewriteBase /VotreDossierMagento/
  • Modifiez pour mettre le nom du nouveau dossier



    .9 Editer local.xml

il est nécessaire de modifier local.xml, si vous avez restaurez ou copié vers une base Mysql différente afin d’indiquer à Magento les nouveaux identifiants :Nom de la Base, utilisateur  et Mot de Passe. (si vous ne voyez pas que quoi je parle, allez voir  le Chapitre 4.Copier la base de donner)

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Pour Mettre les informations concernant votre nouvelle Base MySQL de Magento:
  • LoginDeLABase : Le nom de l’utisateur de votre base MySQL/Magento
  • MotDePasse : Le mot de Passe de l’utilisateur
  • NomDelaBase : LE Nom de Votre nouvelle Base MySQL/Magento
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[localhost]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName  ![CDATA[admin]]  /frontName



Peut également aussi vous intéresser :


Déplacer – Copier Magento vers un autre Domaine ou Dossier

Pour Copier Votre Magento Il faut :

  1. Copier le dossier qui contient votre Magento
  2. Mettre les droit au nouveau dossier (777 / 755)
  3. Supprimer la cache /VotreMagento/var/cache
  4. Copier la base de donner
  5. Editer core_config_Data
  6. Editer .htaccess
  7. Editer /VotreMagento/app/etc/local.xml

1. Copier le dossier qui contient votre Magento

Plusieurs solutions selon les cas :

  • Copier avec fileZilla en n’oubliant pas de cochez Afficher les fichiers cachés du serveurs sans cela il va vous manquer des fichier. (Solution Lente)
  • En Ligne de Commande dans un terminal ou avec putty.exe (solution Ultra Rapide) avec la commande« cp – r Magento CopieMagento »
    cp -r /var/www/vhosts/votreSiteinternet/httpdocs/Magento  /var/www/vhost/votreSite/httpdocs/CopieDeMagento

ou bien: (c’est pareil)

cd var/www/vhosts/VotreSiteInternet/httpdocs
cp -r magento CopieDeMagento
  • En interface Graphique Copier/Collez :  si votre serveur est accessible avec FreeNx 

2. Mettre les droits au nouveau dossier Magento (777 / 755)

Plusieurs solutions selon les cas :

  • Avec filezilla c’est très long : Bouton droit de la souris sur votre dossier Magento et cochez : « Droit d’accès au fichier » > entrez 755 ou 777 et cocher « Recursion dans les sous dossiers, Appliquer à tous les sous-dossiers  et fichiers
  • Soluttion Ultra rapide ±2 secondes ! En ligne de commande dans un Terminal via interface FreeNx ou putty.exe, tapez : Chmod -R -777 /LeCheminDeVotreDossierMagmento  -Attention ne vous trompez pas vous pourriez planter votre Serveur (ne tapez jamais juste : Chmod -R 755 /)
    Chmod -R 777 var/www/vhosts/VotreSiteInternet/httpdocs/VotreMagento

Ou bien ça c’est pareil:

cd var/www/vhosts/VotreSiteInternet/httpdocs
ls
Chmod -R 777 VotreDossierMagento

Ou bien installer le fichier magento-cleanup.php

A télécharger ici : http://www.magentocommerce.com/wiki/_media/groups/227/magento-cleanup2.zip

Dans le dossier de votre magento, puis exécutez le depuis un Navigateur http://www.VotreSite.xx/votredossierMagento/magento-cleanup.php

(voir Tutoriel : changer les droits du dossier Magento 777 / 755)


3.Supprimer la cache /VotreMagento/var/cache

Indispensable ! Sans cela votre site va garder les anciens dossier, domaine et mémoire.

Plusieurs solutions selon les cas :

  • supprimer avec fileZilla en n’oubliant pas de cochez Afficher les fichiers cachés du serveurs sans cela il va vous manquer des fichier. (Solution Lente)
  • Utilisez magento-cleanup.hph

A télécharger ici : http://www.magentocommerce.com/wiki/_media/groups/227/magento-cleanup2.zip

Dans le dossier de votre magento, puis exécutez le depuis un Navigateur http://www.VotreSite.xx/votredossierMagento/magento-cleanup.php

  • En Ligne de Commande dans un terminal ou avec putty.exe (solution Ultra Rapide) avec la commande« rm – r  » Attention ne vous trompez pas vous pourriez tous supprimer sur votre serveur !
    rm -r  -f /var/www/vhosts/VotreSiteInternet/httpdocs/VotredossierMagento/var/cache

Ou bien: (c’est pareil)

cd var/www/vhosts/VotreSiteInternet/httpdocs
rm -r -f VotreMagento/var/cache

Ou bien :

  • Si votre serveur est accessible avec FreeNx
  • Sélectionnez  dans le dossier magento/var/cache et /session
  • Supprimez-les

J’ai un tutoriel sur Comment vider la cache de Magento


4. Copier la base de donner

Plusieurs solutions selon les cas :

  • Avec Pesk  Pour copier la Base sur le Même Serveur, dans le même domaine, dans Plesk il y a un bouton « Copier votre base Mysql » , Pesk>Accédez Domaines >Panneau de Contrôle de votre site > Sites Web & Domaines > Bases de données > « Selectionnez votre Base »>Cliquez Creer une Copie » (C’est pas super Rapide, mais c’est Efficace.)
  • En Ligne de Commande : Très Efficace, permet de copier d’un site a l’autre, d’un Serveur a l’autre très rapidement , suivez le tuto dédié ici
  • Avec la Sauvegarde par Magento : « Quelle Galère, dire que j’ai utilisé cette solution pendant plus d’un an » c’est Lent, Compliqué, et pas fiable ! …Suivre ce tuto ici

   5. Editer core_config_Data

il est nécessaire de modifier core_config_Data, que si vous avez restaurez ou copié votre Magento vers un dossier ou nom de domaine différents de l’original

  • Modifier avec PhpAdmin
  • Si vous utlilisez Plesk c’est ici Plesk>  Abonnements> votre site> Sites Web & Domaines>  Bases de données > Admin Web
  • Recherchez la Table :  core_config_Data
  • à la 3iem  et 4iem ligne :
web/unsecure/base_url http://VotreSite/VotreDossierMagento/
web/secure/base_url http://VotreSite/VotreDossierMagento/
  • Cliquez sur Modifier pour corriger.

Mise en Garde : il y a un bug dans  phpMyAdmin : Si vous avez modifié juste avant une autre base MySQL, votre navigateur garde en mémoire la session donc vous empêche de la modifier ! Solution : il faut juste vider l’historique de votre navigateur. Personnellement, j’utilise 5 Navigateurs (Opera, Safari, Chrome, Firefox, Explorer) , comme ça je peux modifier ou comparer plusieurs bases MySQL en même temps sans avoir d’interférence entre les deux 🙂

J’ai un tutoriel : core_config_data


   6 Editer .htaccess

il est nécessaire de modifier .htaccess, que si vous avez restaurez ou copié votre Magento vers un dossier différents de l’original

  • Sur votre Serveur il doit être là : /var/www/vhosts/VotreSite/httpdocs/VotreDossierMagento/
  • Ouvrir le Fichier .htaccess de votre dossier Magento avec un éditeur Geany sous linux, Notepad++ sous Windows..)
  • Rechercher dans ce fichier :  RewriteBase /VotreDossierMagento/
  • Modifiez pour mettre le nom du nouveau dossier

j’ai fait un Tutoriel sur : Comment Optimiser Magento .htacces , php.ini, my.cnf


    7. Editer local.xml

il est nécessaire de modifier local.xml, si vous avez restaurez ou copié vers une base Mysql différente afin d’indiquer à Magento les nouveaux identifiants :Nom de la Base, utilisateur  et Mot de Passe. (si vous ne voyez pas que quoi je parle, allez voir  le Chapitre 4.Copier la base de donner)

  1. Ce Fichier ce trouve dans votre dossier magento : magento/app/etc/local.xml
  2. Il faut éditer le fichier local.xml de magento/app/etc/local.xml avec un éditeur de texte : sous linux avec Geany, sous windows avec NotePad++
  3. Pour Mettre les informations concernant votre nouvelle Base MySQL de Magento:
  • LoginDeLABase : Le nom de l’utisateur de votre base MySQL/Magento
  • MotDePasse : Le mot de Passe de l’utilisateur
  • NomDelaBase : LE Nom de Votre nouvelle Base MySQL/Magento
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[localhost]]  /host
           username  ![CDATA[LoginDeLaBase]]  /username
            password  ![CDATA[MotDePasse]]  /password
            dbname  ![CDATA[NomDeLaBase]]  /dbname
            active 1 /active
        /connection
     /default_setup
/resources
session_save  ![CDATA[files]]  /session_save
/global
admin
    routers
        adminhtml
            args
              frontName  ![CDATA[admin]]  /frontName