magento性能优化系列二:db篇

magento是一个灵活的系统,但是糟糕的是他的db总是显得很庞大很臃肿。或许是因为有很多的product,你知道的,EAV模式很灵活,但代价是数据很庞大,维护很繁琐。不幸的是,这并不是唯一一个使db慢的原因,大量的log充斥着db,其实很多许久的log已经没有意义,所以适时清除log就显得尤为必要。下面给出如何清除log的方法。

Thank you for reading this post, don't forget to subscribe!

NOTE: 操作之前请确认已经对db做了完整的备份

magento维护着一些关于log的table,比如customers 浏览记录,产品的比较记录等;magento本来是有自己的方法定期清除这些log,但不幸的是,这个特性默认是没开启的,并且大多数客户也没用开启它;有3种办法能清除这些table:后台清除;通过log.PHP ,在 ../shell 目录下;通过phpMyAdmin或MySQL客户端;
以下列出相关log的table

log_customer
log_visitor
log_visitor_info
log_url
log_url_info
log_quote
report_viewed_product_index
report_compared_product_index
report_event
catalog_compare_item

 

一:后台清除
1:登入后太 System > Configuration.
2:左侧菜单 Advanced 下点击 System.

3:在"Log Cleaning"下, 改变"Enable Log Cleaning" 为 YES 并且配置Save Log 为15 days:

4:"Save Config"

二:Log.php

进入magento/shell/目录
执行php -f shell/log.php clean

-days 指定清除周期天数。

三:通过PhpMyAdmin
这是最灵活也是最高效的方法,进入后选择以下table

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

然后进行empty操作即可。

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注