if (!defined('EVO_MAIN_INIT')) { die('Please, do not access this page directly.'); } global $Plugins, $template_action, $admin_url; $block_item_Widget = new Widget('block_item'); if (!empty($template_action)) { // Execute action inside template to display a process in real rime $block_item_Widget->title = T_('Log'); $block_item_Widget->disp_template_replaced('block_start'); // Turn off the output buffering to do the correct work of the function flush() @ini_set('output_buffering', 'off'); evo_flush(); switch ($template_action) { case 'optimize_tables': // Optimize MyISAM & InnoDB tables dbm_optimize_tables(); break; case 'check_tables': // Check ALL database tables dbm_check_tables(); break; case 'analyze_tables': // Analize ALL database tables dbm_analyze_tables(); break; case 'delete_orphan_files': // delete orphan File objects with no matching file on disk dbm_delete_orphan_files(); break; case 'delete_orphan_file_roots': // delete orphan file roots with no matching Blog or User entry in the database
* * @version $Id: _heavy_db_maintenance.job.php 9 2011-10-24 22:32:00Z fplanque $ */ if (!defined('EVO_MAIN_INIT')) { die('Please, do not access this page directly.'); } global $dbm_tables_count; load_funcs('tools/model/_dbmaintenance.funcs.php'); $simple_keys = array(0, 1, 2, 3); $failed_results = array(); // Execute query to get results of CHECK command $results = dbm_check_tables(false, false); foreach ($results as $result) { if ($result->Msg_type != 'status') { // Add different result types then 'status' to the failed resulsts array, so they can be display on the cron task view // Convert keys to simple integer values to decrease a size of the data $failed_results[] = array_combine($simple_keys, (array) $result); } } // Optimize MyISAM & InnoDB tables $results = dbm_optimize_tables(false, false); foreach ($results as $result) { if ($result->Msg_text != 'OK' && !($result->Msg_type == 'note' && $result->Msg_text == 'Table does not support optimize, doing recreate + analyze instead')) { // Save only results which are not OK and they are different notes then 'Table does not support optimize ...' because that is normal for innoDb tables // Convert keys to simple integer values to decrease a size of the data $failed_results[] = array_combine($simple_keys, (array) $result); } } $result_message = array('message' => sprintf(T_('The commands CHECK & OPTIMIZE have been executed for all %d tables.'), $dbm_tables_count), 'table_cols' => array(T_('Table'), T_('Operation'), T_('Result'), T_('Message ')), 'table_data' => $failed_results); return 1; /* ok */