MySQL Forums
Forum List  »  MySQL Administrator

Query taking 99% CPU usage for only fetching 623 rows
Posted by: Maron Vomr@
Date: January 19, 2009 09:51PM

Dear all,
I have a database with 300 tables and for some times facing some performance issues regarding the queries.

Whenever users tries to fetch a report which actually finally fetches aroudn 700 rows out of 1 lacs rows gives the CPU to rise 99.9% and stays there for the time of the whole report run.

below are the table structure which is it actually queries for data

CREATE TABLE `request_detail` (
`id` int(11) NOT NULL auto_increment,
`ticket_no` varchar(20) NOT NULL default '',
`re_ticket_no` varchar(20) NOT NULL default '',
`req_date` datetime NOT NULL default '0000-00-00 00:00:00',
`expected_date` datetime NOT NULL default '0000-00-00 00:00:00',
`action_date` datetime NOT NULL default '0000-00-00 00:00:00',
`remarks` text NOT NULL,
`status` varchar(50) NOT NULL default 'Pending',
`reopen_status` tinyint(4) NOT NULL default '0',
`assign_to` varchar(50) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=103440 DEFAULT CHARSET=latin1

One more thing what the the AUTO_INCREMENT=103440 means beside ENGINE?

I am using server version: 4.1.22-standard on a 32 bit server.

mysql> show status;
+----------------------------+-------------+
| Variable_name | Value |
+----------------------------+-------------+
| Aborted_clients | 109231 |
| Aborted_connects | 55329 |
| Binlog_cache_disk_use | 0 |
| Binlog_cache_use | 0 |
| Bytes_received | 2758435647 |
| Bytes_sent | 972852577 |
| Com_admin_commands | 3483332 |
| Com_alter_db | 0 |
| Com_alter_table | 1 |
| Com_analyze | 2 |
| Com_backup_table | 0 |
| Com_begin | 0 |
| Com_change_db | 294885517 |
| Com_change_master | 0 |
| Com_check | 1 |
| Com_checksum | 0 |
| Com_commit | 0 |
| Com_create_db | 1 |
| Com_create_function | 0 |
| Com_create_index | 0 |
| Com_create_table | 25 |
| Com_dealloc_sql | 0 |
| Com_delete | 3578184 |
| Com_delete_multi | 0 |
| Com_do | 0 |
| Com_drop_db | 0 |
| Com_drop_function | 0 |
| Com_drop_index | 0 |
| Com_drop_table | 0 |
| Com_drop_user | 0 |
| Com_execute_sql | 0 |
| Com_flush | 5 |
| Com_grant | 0 |
| Com_ha_close | 0 |
| Com_ha_open | 0 |
| Com_ha_read | 0 |
| Com_help | 0 |
| Com_insert | 5250093 |
| Com_insert_select | 3613 |
| Com_kill | 0 |
| Com_load | 0 |
| Com_load_master_data | 0 |
| Com_load_master_table | 0 |
| Com_lock_tables | 379 |
| Com_optimize | 1 |
| Com_preload_keys | 0 |
| Com_prepare_sql | 0 |
| Com_purge | 0 |
| Com_purge_before_date | 0 |
| Com_rename_table | 0 |
| Com_repair | 0 |
| Com_replace | 13436 |
| Com_replace_select | 0 |
| Com_reset | 0 |
| Com_restore_table | 0 |
| Com_revoke | 0 |
| Com_revoke_all | 0 |
| Com_rollback | 0 |
| Com_savepoint | 0 |
| Com_select | 974280849 |
| Com_set_option | 33628 |
| Com_show_binlog_events | 0 |
| Com_show_binlogs | 0 |
| Com_show_charsets | 0 |
| Com_show_collations | 0 |
| Com_show_column_types | 0 |
| Com_show_create_db | 0 |
| Com_show_create_table | 33258 |
| Com_show_databases | 74 |
| Com_show_errors | 0 |
| Com_show_fields | 46731 |
| Com_show_grants | 0 |
| Com_show_innodb_status | 0 |
| Com_show_keys | 0 |
| Com_show_logs | 0 |
| Com_show_master_status | 0 |
| Com_show_ndb_status | 0 |
| Com_show_new_master | 0 |
| Com_show_open_tables | 1 |
| Com_show_privileges | 0 |
| Com_show_processlist | 823 |
| Com_show_slave_hosts | 0 |
| Com_show_slave_status | 0 |
| Com_show_status | 797 |
| Com_show_storage_engines | 0 |
| Com_show_tables | 33782 |
| Com_show_variables | 15 |
| Com_show_warnings | 0 |
| Com_slave_start | 0 |
| Com_slave_stop | 0 |
| Com_stmt_close | 0 |
| Com_stmt_execute | 0 |
| Com_stmt_prepare | 0 |
| Com_stmt_reset | 0 |
| Com_stmt_send_long_data | 0 |
| Com_truncate | 2343 |
| Com_unlock_tables | 379 |
| Com_update | 27277092 |
| Com_update_multi | 2 |
| Connections | 13268855 |
| Created_tmp_disk_tables | 445379 |
| Created_tmp_files | 930 |
| Created_tmp_tables | 2075918 |
| Delayed_errors | 0 |
| Delayed_insert_threads | 0 |
| Delayed_writes | 0 |
| Flush_commands | 1 |
| Handler_commit | 0 |
| Handler_delete | 774470 |
| Handler_discover | 0 |
| Handler_read_first | 31896861 |
| Handler_read_key | 2401490761 |
| Handler_read_next | 2650544974 |
| Handler_read_prev | 3974802986 |
| Handler_read_rnd | 1268129591 |
| Handler_read_rnd_next | 2571601548 |
| Handler_rollback | 0 |
| Handler_update | 48208426 |
| Handler_write | 660600146 |
| Key_blocks_not_flushed | 0 |
| Key_blocks_unused | 3618 |
| Key_blocks_used | 7248 |
| Key_read_requests | 18050355512 |
| Key_reads | 590038314 |
| Key_write_requests | 33805259 |
| Key_writes | 24775788 |
| Max_used_connections | 301 |
| Not_flushed_delayed_rows | 0 |
| Open_files | 120 |
| Open_streams | 0 |
| Open_tables | 64 |
| Opened_tables | 4815669 |
| Qcache_free_blocks | 0 |
| Qcache_free_memory | 0 |
| Qcache_hits | 0 |
| Qcache_inserts | 0 |
| Qcache_lowmem_prunes | 0 |
| Qcache_not_cached | 0 |
| Qcache_queries_in_cache | 0 |
| Qcache_total_blocks | 0 |
| Questions | 1318725562 |
| Rpl_status | NULL |
| Select_full_join | 267371 |
| Select_full_range_join | 0 |
| Select_range | 940972 |
| Select_range_check | 0 |
| Select_scan | 52136070 |
| Slave_open_temp_tables | 0 |
| Slave_retried_transactions | 0 |
| Slave_running | OFF |
| Slow_launch_threads | 1 |
| Slow_queries | 1853 |
| Sort_merge_passes | 463 |
| Sort_range | 290391821 |
| Sort_rows | 1523293431 |
| Sort_scan | 12269146 |
| Table_locks_immediate | 1014600558 |
| Table_locks_waited | 188849 |
| Threads_cached | 0 |
| Threads_connected | 35 |
| Threads_created | 13268854 |
| Threads_running | 2 |

Thanks in advance.

Options: ReplyQuote


Subject
Written By
Posted
Query taking 99% CPU usage for only fetching 623 rows
January 19, 2009 09:51PM


Sorry, you can't reply to this topic. It has been closed.

Content reproduced on this site is the property of the respective copyright holders. It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party.