|
发表于 2015-4-24 04:58:35
|
显示全部楼层
magento本身会记录很多日志,这些日志长年累积会占用非常大的空间。下面是一些日志表
• ’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_event’,
• ’report_compared_product_index’,
• ’report_viewed_product_index’,
上面这些日志表基本上在我的项目开发中占用了DB的一半的空间。比如MAGENTO数据库一共4G这些表的数据就占了2G多
而很多时间这些表数据根本不会用到,所以定时清理很有必要
清除方法
一:后台清除
1:登入后太 System > Configuration.
2:左侧菜单 Advanced 下点击 System.
3:在”Log Cleaning”下, 改变”Enable Log Cleaning” 为 YES 并且配置Save Log 为15 days:
二:代码清除:
- <?php
- /**
- * Magento Maintenance Script
- *
- * @version 3.0.0
- * @author Crucial Web Hosting <sales@crucialwebhost.com>
- * @copyright Copyright (c) 2006-2013 Crucial Web Hosting, Ltd.
- * @link http://www.crucialwebhost.com Crucial Web Hosting
- */
- switch($_GET['clean']) {
- case 'log':
- clean_log_tables();
- break;
- case 'var':
- clean_var_directory();
- break;
- }
- function clean_log_tables() {
- $xml = simplexml_load_file('./app/etc/local.xml', NULL, LIBXML_NOCDATA);
-
- if(is_object($xml)) {
- $db['host'] = $xml->global->resources->default_setup->connection->host;
- $db['name'] = $xml->global->resources->default_setup->connection->dbname;
- $db['user'] = $xml->global->resources->default_setup->connection->username;
- $db['pass'] = $xml->global->resources->default_setup->connection->password;
- $db['pref'] = $xml->global->resources->db->table_prefix;
-
- $tables = array(
- 'adminnotification_inbox',
- 'aw_core_logger',
- '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',
- 'index_event',
- 'report_event',
- 'report_viewed_product_index',
- 'report_compared_product_index',
- 'catalog_compare_item',
- 'catalogindex_aggregation',
- 'catalogindex_aggregation_tag',
- 'catalogindex_aggregation_to_tag'
- );
-
- mysql_connect($db['host'], $db['user'], $db['pass']) or die(mysql_error());
- mysql_select_db($db['name']) or die(mysql_error());
-
- foreach($tables as $table) {
- @mysql_query('TRUNCATE `'.$db['pref'].$table.'`');
- }
- } else {
- exit('Unable to load local.xml file');
- }
- }
- function clean_var_directory() {
- $dirs = array(
- 'downloader/.cache/',
- 'downloader/pearlib/cache/*',
- 'downloader/pearlib/download/*',
- 'var/cache/',
- 'var/locks/',
- 'var/log/',
- 'var/report/',
- 'var/session/',
- 'var/tmp/'
- );
-
- foreach($dirs as $dir) {
- exec('rm -rf '.$dir);
- }
- }
复制代码 |
|