随着Magento网站访问量的增加,Magento数据库也越来越大了,甚至有几个G,直接后果:
1.影响网站和数据库性能;
2.备份/恢复数据库花费的时间增加了;
3.占用磁盘空间;
4.出现一些设置产品不显示的问题
Magento数据库迅速膨胀,主要是由于一些日志数据的剧增,可以通过Magento自身的cron定时清理日志。
另外一种又快又好的办法是执行SQL清理(请先备份下数据库,以免出错),如下:
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;
set foreign_key_checks = 0;
truncate index_process_event;
truncate index_event;
set foreign_key_checks = 1;
解决了上述问题,我们要怎么样可以避免数据库日志的增加呢?
我们可以设置magento自动清空log,方法如下:
1) 登录你的magento后台进入 System -> Configuration
2) 在左栏进入 Advanced -> System
3) 打开 Log Cleaning
4) 设置 “save log, days” 到一个数值, 这个的单位是天,我觉得几天清空一次就好了
5) 设置激活自动清空log设置
如下图为设置每天自动清空我的magento数据库log。这里清理的时间段还是比较少人访问的时候,可以节省服务器的开销,然后是可以避免前台在线客户的一些数据产生异常。
图中表示的意思,log保存时间为:7天,开启自动清理缓存:是,清理开始时间:0时,清理的频率:一周
这样就可以避免空间浪费和提高网站运行速度。