Lancer en Cron.php ou Cron.sh de Magento et Planifier

1) En ligne de commande à Planifier:

l’interet de la ligne de commande c’est :

  • C’est très facile
  • C’est très rapide
  • Vous pouvez l’ajouter dans les taches planifiées (cron)
php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.phplog.php clean

ou bien : 

/var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh

3) Taches Planifiées avec 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 la ligne de commande :
    ./var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh
  • Expert saisissez : Minute 10 – Heure 6 – jour * – Mois * – jour de la semaine 1 = à 6H10 tous les lundi
  • Ajouter et Valider

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

________________________________

3 Bis ) 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 : 10 6 * * * ./var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/cron.sh

Explication des instructions crontab sur wikipedia

Publicités

Purger pour réduire la base MySQL de Magento et Planifier

Nettoyage des Log de Magento soit en manuel via PhpMyAdmin ou en Ligne de commande.
C’est le moyen le plus efficace de nettoyer les logs pour ceux qui travaillent plus à l’aise avec les bases de données. Il est plus rapide que le haut-dans les outils de Magento, et il vous permet de nettoyer quelques tables non incluses dans ces outils.

1) phpMyAdmin via le Panneau Plesk

Dans la droite (principale) une image, sélectionnez la case à cocher pour les tables suivantes:

dataflow_batch_export
dataflow_batch_import
log_customer
log_quote
log_summary
log_summary_type
log_url
log_url_info
log_visitor
log_visitor_info
log_visitor_online
report_viewed_product_index
report_compared_product_index
report_event
  • Au bas de la page, cliquez sur le menu déroulant qui dit « avec une sélection: » et sélectionnez « vide ».
  • Un écran de confirmation s’affichera. Cliquez sur « Oui ». Cela tronque toutes les tables sélectionnées.

Effectuer régulièrement :
Nous avons vu 2Go + bases baisse d’un quart de leur taille après le nettoyage des journaux, il est donc très important que ce genre d’entretien sont effectués régulièrement. Surtout si votre temps jusqu’au premier octet de latence commence à pousser plus grande, et vous avez mis en œuvre les tweaks de performance.

Source : http://docs.nexcess.net/magento-database-maintenance

2) En ligne de commande à Planifier:

l’interet de la ligne de commande c’est :

  • C’est très Facile
  • C’est très rapide
  • Et vous pouvez ajouter cette ligne dans les Taches Planifier a faire régulièrement (cron)
php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

3) 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 « Ma sauvegarde du Lundi »
  • Commande : Précisez votre la ligne de commande : php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean
  • Expert saisissez : Minute 0 – Heure 6 – jour * – Mois * – jour de la semaine 1 = à 6H00 tous les lundi
  • Ajouter et Valider

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

  • Ajouter et Valider
  • Voila Gnome-schedule a inséré pour vous la ligne cron
    0 6 * * * php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

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 6 * * * php -f /var/www/vhosts/VoteSiteWeb/httpdocs/VotreDossierMagento/shell/log.php clean

Explication des instructions crontab sur wikipedia

_________________________________________________________

4) Méthode plus efficace, par des instructions mySQL dans un Script

voir ce tutoriel 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

 



Modifier le Chemin du Back Office /admin/ de Magento

D’origine le chemin de l’admin de Magento (Backoffice) est :

http://www.Votresite.fr/Dossier Magento/index.php/admin/

Bien Trop Facile à trouver, donc bien trop dangereux.

Voici comment le modifier, Editer local.xml

il est nécessaire de modifier local.xml

  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. Modifier la ligne frontName  [admin]  par exemple par MonAdmin
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[IpDuNouveauServeur]]  /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[MonAdmin]] /frontName

Connectez Magento a une Base de données Mysql d’un serveur distant.

Pour une multitude de raisons, on peut a voir besoin de connecter Magento a une base de données distante.

  • si vous avez un hébergement mutualisé
  • Si votre Hébergement et trop lent
  • Pour utiliser une sauvegarde
  • Pour des test…

Il faut d’abord :

  1. Autoriser la connexion à distance MySQL du Serveur distant
  2. Avoir  copié votre Base de donnée Mysql Magento sur ce serveur
  3. Modifier le fichier de configuration Magento : local.xml

1.Autoriser la connexion à distance MySQL du Serveur distant

Ouvrir l’accès Mysql vers l’extérieur :

  • Editez le fichier : /etc/mysql/my.cnf
  • Commentez la ligne avec un # : skip-networking et Bind-address
  • Redémarrer  : Service mysql restart

J’ai fait un tutoriel ici : Explication pour Autoriser la connexion a distance MySQL


2. Avoir copié votre Base de donnée Mysql Magento sur ce serveur

j’ai fait plusieurs explication pour tranférer la base de données MySQL de Magento, selon votre cas ici :


3. Modifier le fichier de configuration Magento : local.xml

 Editer local.xml

il est nécessaire de modifier local.xml

  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 et le nouveau serveur:
  • IpDuNouveauServeur : c’est l’ip du serveur Distant Mysql
  • LoginDeLABase : Le nom de l’utilisateur de la base MySQL/Magento Distante
  • MotDePasse : Le mot de Passe de l’utilisateur de la Base distante
  • NomDelaBase : Le Nom de Base MySQL/Magento Distante
 /Magento/app/etc/local.xml 

     default_setup
            connection
                host  ![CDATA[IpDuNouveauServeur]]  /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

Important :

Vider la cache et les Sessions :  Dans le Dossier /magento/var/cache et /magento/var/session

Si non la modification du Local.xml ne sera pas pris en compte.

Copier une base MySQL entre 2 serveurs avec Plesk (Magento, Prestashop, etc…)

Que ce soit une Base Magento, Prestashop ou tout autre, c’est du MySQL.

Avez vous déjà essayez d’utiliser Plesk (à partir de la 10 ou supérieur) pour copier votre base de données MySQL

C’est très simple mais d’origine ça ne fonctionner pas !

Procédure :

1) Ouvrir l’accès Mysql vers l’extérieur :

  • Editez le fichier : /etc/mysql/my.cnf
  • Commentez la ligne avec un # : skip-networking et Bind-address
  • Redémarrer  : Service mysql restart

J’ai fait un tutoriel ici : Explication pour Autoriser la connexion a distance MySQL

2) Créer une base de donnée vierge et un utilisateur

Sur le serveur de destination (Cible).

  • Créer la base vièrge : Dans Plesk >  Accueil> Abonnements> VoreSiteWeb> Sites Web & Domaines> Bases de données > Sélectionnez > Ajouter une nouvelle Base de données

3) Copier la  base de donnée vers l’autre serveur

Sur le serveur Source (de départ):

  1. Copier la base : Dans Plesk >  Accueil> Abonnements> VoreSiteWeb> Sites Web & Domaines> Bases de données > Sélectionnez > la Base source
  2. Cliquez sur faire une copie
  3. Serveur de la base de données cible Sélectionnez :  Autres…
  4. Saisissez Nom d’hôte ou adresse IP * :  Mettre ip du serveur cible
  5. Nom d’utilisateur* mettre le nom de la base cible (la base vierge)
  6. Mot de passe* de la base cible (la base vierge)
  7. Coché : Copier vers la base de données existante :
  8. Saisissez le nom de la Base cible (la vierge)

Terminé 🙂


Pour Magento :

Pour utiliser cette copie votre Magento dans un autre dossier ou serveur, il va faloir modifier aussi, core_config_data, Local.xml, .htaccess.. j’ai fait un tuto ici.


Voici ici une autre méthode pour:

Automatiser la sauvegarde Mysql entre 2 serveurs. avec un Script :

J’ai fait un Tutoriel ici : Comment automatiser la sauvegarde Mysql entre 2 serveurs. avec un Script