web-dev-qa-db-fra.com

Effacement des données du journal Magento

J'ai une question concernant la suppression des données du journal dans Magento.

J'ai plus de 2,3 Go de données dans Magento 1.4.1 et je souhaite maintenant optimiser la base de données, car elle est trop lente en raison de la taille des données. J'ai vérifié les informations du journal (URL, Visiteurs) et il indique plus de 1,9 Go. Si je supprime directement ces enregistrements, cela affectera-t-il les fonctionnalités du site? Comment puis-je effacer les détails du journal? En effaçant ces données, vais-je perdre ou perdre des données sur mon site?

55
Elamurugan

Inutile de le faire vous-même, le système Magento intègre une fonction de nettoyage des informations du journal. Si vous allez à 

System > Configuration > Advanced > System > Log Cleaning

Vous pouvez configurer votre magasin pour nettoyer automatiquement ces journaux. 

71
Alan Storm

Nettoyage des journaux Magento avec SSH:

connectez-vous au panneau Shell (SSH) et accédez au dossier root/Shell.

exécuter la commande ci-dessous dans le dossier Shell

php -f log.php clean

entrez cette commande pour afficher la taille des données du journal

php -f log.php status

Cette méthode vous aidera à nettoyer très facilement les données du journal.

64

Essayer:

TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;

Vous pouvez également vous référer au tutoriel suivant:
http://www.crucialwebhost.com/kb/article/log-cache-maintenance-script/

Merci

50
MagePsycho
SET FOREIGN_KEY_CHECKS=0;
TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;
SET FOREIGN_KEY_CHECKS=1;
11
Umesh Kumar
TRUNCATE `log_url_info`;
TRUNCATE `log_visitor_info`;
TRUNCATE `index_event`;
TRUNCATE `log_visitor`;
TRUNCATE `log_url`;
TRUNCATE `report_event`;
TRUNCATE `dataflow_batch_import`;
TRUNCATE `dataflow_batch_export`;

Je viens de l'utiliser.

5
sjolzy

il y a quelques autres tables que vous pouvez effacer: documentées ici: https://dx3webs.com/blog/house-keeping-for-your-magento-database

espérons que cela aide Andy

5
Andy

Nettoyage des journaux via le panneau d'administration Magento

Cette méthode est plus facile pour les propriétaires de magasin non techniques qui ne veulent pas »se mêler directement à la base de données du magasin Magento. Pour activer l'option de nettoyage des journaux dans Magento, procédez comme suit:

Connectez-vous à votre tableau de bord Magento . Allez dans Système => Configuration . À gauche, sous Avancé, cliquez sur Système (Avancé => Système) . Sous le système, vous verrez l’option “Nettoyage du journal”. Remplissez les valeurs souhaitées pour l'option «Nettoyage du journal», puis cliquez sur Enregistrer.

Nettoyage des journaux via phpMyAdmin

Si vous êtes à l'aise avec mysql et les requêtes, cette méthode est plus efficace et plus rapide que l'outil de nettoyage de journaux Magento par défaut. Cette méthode vous permet également de nettoyer ce que vous voulez, vous pouvez même nettoyer des tableaux qui ne sont pas inclus dans l’outil de nettoyage de journaux par défaut de Magento.

Ouvrez la base de données dans phpMyAdminDans le cadre de droite, cochez les cases correspondant aux tableaux suivants: 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

Examinez le bas de la page, puis cliquez sur la liste déroulante indiquant «avec la sélection», puis cliquez sur vide… .. Cliquez sur Oui dans l'écran de confirmation pour tronquer toutes les tables sélectionnées.

ou vous pouvez utiliser un script pour exécuter

TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;

Gardez à l'esprit que nous sommes ici pour vider (tronquer) les tables sélectionnées ne sont pas les laisser tomber. Soyez très prudent lorsque vous faites cela.

Effectuer cette opération régulièrement améliorera définitivement les performances et l’efficacité de votre boutique Magento. Vous pouvez configurer des scripts pour le faire automatiquement à intervalles réguliers en utilisant «CRON».

3
JIGNESH

Ce script est soigné et ordonné. Configurez-le comme un travail cron et détendez-vous:

http://www.crucialwebhost.com/kb/magneto-log-and-cache-maintenance-script/

2
mr-euro

Après avoir nettoyé les journaux en utilisant l’une des méthodes décrites ci-dessus, vous pouvez également les désactiver dans votre application/etc/local.xml

...
<frontend>
<events>
 <frontend>
  <events>
    <!-- disable Mage_Log -->
    <controller_action_predispatch>
        <observers><log><type>disabled</type></log></observers>
    </controller_action_predispatch>
    <controller_action_postdispatch>
        <observers><log><type>disabled</type></log></observers>
    </controller_action_postdispatch>
    <customer_login>
      <observers>
        <log>
          <type>disabled</type>
        </log>
      </observers>
    </customer_login>
    <customer_logout>
      <observers>
        <log>
          <type>disabled</type>
        </log>
      </observers>
    </customer_logout>
    <sales_quote_save_after>
       <observers>
          <log>
              <type>disabled</type>
          </log>
        </observers>
   </sales_quote_save_after>
   <checkout_quote_destroy>
     <observers>
       <log>
         <type>disabled</type>
       </log>
     </observers>
   </checkout_quote_destroy>
</events>
</frontend>
</config>
1
diazwatson

Connectez-vous à votre panneau de commande goto phpmyadmin En utilisant SQL exécuté sous requête pour effacer les journaux

TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;
1
Universal Webtech
SET foreign_key_checks = 0;
TRUNCATE dataflow_batch_export;
TRUNCATE dataflow_batch_import;
TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_viewed_product_index;
TRUNCATE report_compared_product_index;
TRUNCATE report_event;
TRUNCATE index_event;
SET foreign_key_checks = 1;
1
Martin

Conseil supplémentaire: Si vous n’avez pas besoin de ces informations, vous pouvez changer le type de table en "trou noir" (au lieu d’InnoDB). Cela signifie que rien ne sera stocké à l'avenir et que les instructions d'insertion fonctionnent toujours correctement.

Vous pouvez également désactiver les journaux en définissant tous les événements sur désactivé:

https://Gist.github.com/tegansnyder/189f1c3ce897b4ab494d

1
Matthias Kleine

Vous pouvez vérifier le bon article ici:

http://blog.magalter.com/magento-database-size

Il contient des instructions sur la manière de vérifier la taille de la base de données, de tronquer certaines tables et de configurer le nettoyage automatique des tables.

1
freento

vous pouvez désactiver ou définir la date et l'heure du paramétrage du journal.

Système> Configuration> Avancé> Système> Nettoyage des journaux

0
Arun Tyagi

Le nettoyage des journaux Magento peut être effectué manuellement, automatiquement et pour d’autres opérations de maintenance de la base de données Magento. Les trois éléments ci-dessous sont les plus importants des techniques d'optimisation et de maintenance de la base de données Magento.

  • Nettoyage de la bûche
  • Utilisation intelligente des versions mises à jour de MySQL 
  • Paramètres de taille du pool de mémoire tampon

Pour obtenir plus d'informations http://blog.contus.com/magento-database-maintenance-and-optimization/

0
Ramesh M