清除Magento日志数据

Ela*_*gan 58 magento

我有一个关于清除Magento中的日志数据的问题.

我在Magento 1.4.1中有超过2.3GB的数据,现在我想优化数据库,因为由于数据的大小,它太慢了.我检查了日志信息(URL,访问者),它显示超过1.9 GB.如果我直接清除这些记录,它会影响网站中的任何功能吗?如何清除日志详细信息?通过清除这些数据,我会在我的网站上丢失或丢失任何数据吗?

Ala*_*orm 73

无需自己动手,Magento系统内置了清理日志信息.如果你去

System > Configuration > Advanced > System > Log Cleaning
Run Code Online (Sandbox Code Playgroud)

您可以将商店配置为自动清理这些日志.

  • NB这假设你已经设置了你的cron工作,对艾伦?说明如下:http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/how_to_setup_a_cron_job (6认同)
  • 这肯定假设你已经设置了cron作业. (4认同)

Man*_*amy 68

使用SSH清理Magento日志:

登录到shell(SSH)面板并使用root/shell文件夹.

在shell文件夹中执行以下命令

php -f log.php clean
Run Code Online (Sandbox Code Playgroud)

输入此命令以查看日志数据的大小

php -f log.php状态

此方法将帮助您以非常简单的方式清理日志数据.

  • 如果您需要手动执行此操作,则可以采用此方法.如果你有表格前缀(就像你应该),这是特别完美的.非常好. (3认同)

Mag*_*cho 52

尝试:

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;
Run Code Online (Sandbox Code Playgroud)

您还可以参考以下教程:http:
//www.crucialwebhost.com/kb/article/log-cache-maintenance-script/

谢谢

  • 我认为不建议手动触摸数据库.最好运行"php -f /root/to/magento/shell/log.php clean"而不是 (3认同)
  • 小心使用log_visitor - catalog_compare_item链接到它,如果启用了比较功能,则可能会出现异常.可能删除所有会话将解决此问题. (2认同)

Ran*_*dav 12

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;
Run Code Online (Sandbox Code Playgroud)


小智 6

通过 Magento 管理面板清理日志

对于不想直接弄乱 Magento 商店数据库的非技术商店所有者来说,这种方法更容易。要在 Magento 中激活日志清理选项,只需执行以下操作:

登录到您的 Magento 管理面板。转到系统 => 配置。在左侧的高级下单击系统(高级 = > 系统)。在系统下,您将看到“日志清理”选项。填写所需的“日志清理”选项值,然后单击“保存”。

通过 phpMyAdmin 清理日志

如果您对 mysql 和查询感到满意,那么此方法比默认的 Magento 日志清理工具更高效、更快捷。此方法还允许您清理任何您喜欢的内容,您甚至可以清理默认 Magento 的日志清理工具中未包含的表。

在 phpMyAdmin 中打开数据库在右侧框中,单击以下表格的框:dataflow_batch_export

dataflow_batch_import

登录_客户

日志引用

日志摘要

日志摘要类型

日志网址

log_url_info

记录访客

log_visitor_info

log_visitor_online

report_viewed_product_index

report_compared_product_index

报告事件

查看页面底部,然后单击显示“已选择”的下拉框,然后单击空。在确认屏幕上单击是,这将截断所有选定的表。

或者你可以使用脚本来运行

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;
Run Code Online (Sandbox Code Playgroud)

请记住,我们在这里清空 (Truncate) 选定的表并不会删除它们。执行此操作时要非常小心。

定期执行此操作肯定会提高您的 Magento 商店的性能和效率。您也可以使用“CRON”设置脚本以定期自动执行此操作。


And*_*ndy 5

还有一些其他表可以清除:记录在这里:https://dx3webs.com/blog/house-keeping-for-your-magento-database

希望这有助于安迪


小智 5

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`;
Run Code Online (Sandbox Code Playgroud)

我只是用它.

  • 注意log_visitor表 - catalog_compare_item表引用它.如果您的网站上有比较产品功能,则可能会出现例外情况. (4认同)