Privet.
> SELECT SQL_CACHE id, program_name, categor, subcategor, subsubcategor, > subsubsubcategor, source_url, rating, short_description, long_description, > when_modifed+0, author, searched_words, size_in_kb, licence, language, > install, win95, win98, winme, winnt, win2000, winxp, wince, unix, palm, mac, > other_versions, rus_progs , MATCH (search_keywords ) AGAINST ('ÙÐßÛ xbÊÍ > ÞÊÎÍ' ) as relevance FROM programms1 WHERE MATCH (search_keywords ) AGAINST > ('+(>(ÙÐßÛ)) +(xbÊÍ) +(ÞÊÎÍ)' IN BOOLEAN MODE) ORDER BY relevance DESC LIMIT > 1000; I didn't done much research but first thing which comes to mind is that your query has two potentially problematic places. The first one is a FULLTEXT part, the second is ORDER BY clause. In my opinion the index isn't used in the ordering (please, correct me if I'm wrong). And MySQL uses a filesort algorithm. If a filesort must be done, all rows that match the query without the LIMIT clause must be selected, and most or all of them must be sorted, before it can be ascertained that the first 1000 rows have been found. Use SHOW PROCESSLIST (mysqladmin processlist, mytop) to find out in which states mysqld threads of the slow queries are spending more time. In such a way we'll find the bottleneck in the query. Michael Monashev <[EMAIL PROTECTED]> wrote: > Hello > > GP> Send to the list the output of 'SHOW VARIABLES' and 'SHOW STATUS' > GP> statements, amount of RAM, most problematic queries (use mysqldumpslow > GP> utility to find them) include tables' definitions (use SHOW CREATE > GP> TABLE). > > SHOW VARIABLES; > back_log 50 > basedir /*************/ > binlog_cache_size 32768 > bulk_insert_buffer_size 8388608 > character_set_client utf8 > character_set_connection utf8 > character_set_database cp1251 > character_set_results utf8 > character_set_server cp1251 > character_set_system utf8 > character_sets_dir /***********/share/mysql/charsets/ > collation_connection utf8_general_ci > collation_database cp1251_general_ci > collation_server cp1251_general_ci > concurrent_insert ON > connect_timeout 5 > datadir /*************/ > date_format %Y-%m-%d > datetime_format %Y-%m-%d %H:%i:%s > default_week_format 0 > delay_key_write ON > delayed_insert_limit 100 > delayed_insert_timeout 300 > delayed_queue_size 1000 > expire_logs_days 0 > flush OFF > flush_time 0 > ft_boolean_syntax + -><()~*:""&| > ft_max_word_len 84 > ft_min_word_len 4 > ft_query_expansion_limit 20 > ft_stopword_file (built-in) > group_concat_max_len 1024 > have_archive NO > have_bdb NO > have_compress YES > have_crypt YES > have_csv NO > have_example_engine NO > have_geometry YES > have_innodb NO > have_isam NO > have_ndbcluster NO > have_openssl NO > have_query_cache YES > have_raid NO > have_rtree_keys YES > have_symlink YES > init_connect > init_file > init_slave > interactive_timeout 28800 > join_buffer_size 131072 > key_buffer_size 536870912 > key_cache_age_threshold 300 > key_cache_block_size 1024 > key_cache_division_limit 100 > language /*********/share/mysql/english/ > large_files_support ON > license GPL > local_infile ON > locked_in_memory OFF > log OFF > log_bin OFF > log_error /***********/error.log > log_slave_updates OFF > log_slow_queries ON > log_update OFF > log_warnings 1 > long_query_time 10 > low_priority_updates OFF > lower_case_file_system OFF > lower_case_table_names 0 > max_allowed_packet 1047552 > max_binlog_cache_size 4294967295 > max_binlog_size 1073741824 > max_connect_errors 10 > max_connections 300 > max_delayed_threads 20 > max_error_count 64 > max_heap_table_size 16777216 > max_insert_delayed_threads 20 > max_join_size 4294967295 > max_length_for_sort_data 1024 > max_relay_log_size 0 > max_seeks_for_key 4294967295 > max_sort_length 1024 > max_tmp_tables 32 > max_user_connections 0 > max_write_lock_count 4294967295 > myisam_data_pointer_size 4 > myisam_max_extra_sort_file_size 2147483648 > myisam_max_sort_file_size 2147483647 > myisam_recover_options OFF > myisam_repair_threads 1 > myisam_sort_buffer_size 67108864 > net_buffer_length 16384 > net_read_timeout 30 > net_retry_count 1000000 > net_write_timeout 60 > Variable_name Value > new OFF > old_passwords OFF > open_files_limit 14781 > pid_file /**********/pid.file > port 3306 > preload_buffer_size 32768 > protocol_version 10 > query_alloc_block_size 8192 > query_cache_limit 1048576 > query_cache_min_res_unit 4096 > query_cache_size 16777216 > query_cache_type DEMAND > query_cache_wlock_invalidate OFF > query_prealloc_size 8192 > range_alloc_block_size 2048 > read_buffer_size 2093056 > read_only OFF > read_rnd_buffer_size 8384512 > relay_log_purge ON > rpl_recovery_rank 0 > secure_auth OFF > server_id 1 > skip_external_locking ON > skip_networking ON > skip_show_database OFF > slave_net_timeout 3600 > slow_launch_time 2 > socket /tmp/********.sock > sort_buffer_size 2097144 > sql_mode > storage_engine MyISAM > sync_binlog 0 > sync_frm ON > system_time_zone MSD > table_cache 512 > table_type MyISAM > thread_cache_size 8 > thread_stack 196608 > time_format %H:%i:%s > time_zone SYSTEM > tmp_table_size 33554432 > tmpdir > transaction_alloc_block_size 8192 > transaction_prealloc_size 4096 > tx_isolation REPEATABLE-READ > version 4.1.8-log > version_comment Source distribution > version_compile_machine i386 > version_compile_os unknown-freebsd5.2.1 > wait_timeout 28800 > > > SHOW STATUS; > Aborted_clients 195 > Aborted_connects 161 > Binlog_cache_disk_use 0 > Binlog_cache_use 0 > Bytes_received 2375361016 > Bytes_sent 1259738696 > Com_admin_commands 2162461 > Com_alter_db 0 > Com_alter_table 25 > Com_analyze 0 > Com_backup_table 0 > Com_begin 0 > Com_change_db 778 > Com_change_master 0 > Com_check 0 > Com_checksum 0 > Com_commit 0 > Com_create_db 0 > Com_create_function 0 > Com_create_index 0 > Com_create_table 17 > Com_dealloc_sql 0 > Com_delete 5199 > Com_delete_multi 0 > Com_do 0 > Com_drop_db 0 > Com_drop_function 0 > Com_drop_index 0 > Com_drop_table 34 > Com_drop_user 0 > Com_execute_sql 0 > Com_flush 0 > Com_grant 0 > Com_ha_close 0 > Com_ha_open 0 > Com_ha_read 0 > Com_help 0 > Com_insert 6940 > Com_insert_select 17 > Com_kill 173 > Com_load 0 > Com_load_master_data 0 > Com_load_master_table 0 > Com_lock_tables 0 > Com_optimize 29 > Com_preload_keys 0 > Com_prepare_sql 0 > Com_purge 0 > Com_purge_before_date 0 > Com_rename_table 0 > Com_repair 2 > Com_replace 397685 > Com_replace_select 25162 > Com_reset 0 > Com_restore_table 0 > Com_revoke 0 > Com_revoke_all 0 > Com_rollback 0 > Com_savepoint 0 > Com_select 51204493 > Com_set_option 3255677 > Com_show_binlog_events 0 > Com_show_binlogs 614 > Com_show_charsets 724 > Com_show_collations 724 > Com_show_column_types 0 > Com_show_create_db 9 > Com_show_create_table 4 > Com_show_databases 3 > Com_show_errors 0 > Com_show_fields 132 > Com_show_grants 17 > Com_show_innodb_status 0 > Com_show_keys 35 > Com_show_logs 0 > Com_show_master_status 0 > Com_show_new_master 0 > Com_show_open_tables 0 > Com_show_privileges 0 > Com_show_processlist 592 > Com_show_slave_hosts 0 > Com_show_slave_status 0 > Com_show_status 4 > Com_show_storage_engines 0 > Com_show_tables 187 > Com_show_variables 1454 > Com_show_warnings 0 > Com_slave_start 0 > Com_slave_stop 0 > Com_truncate 0 > Com_unlock_tables 0 > Com_update 6198868 > Com_update_multi 0 > Connections 36942 > Created_tmp_disk_tables 28 > Created_tmp_files 6614 > Created_tmp_tables 2450 > Delayed_errors 0 > Delayed_insert_threads 1 > Delayed_writes 289693 > Variable_name Value > Flush_commands 1 > Handler_commit 0 > Handler_delete 5145 > Handler_discover 0 > Handler_read_first 38054 > Handler_read_key 107135693 > Handler_read_next 987802812 > Handler_read_prev 17451987 > Handler_read_rnd 74706000 > Handler_read_rnd_next 15697149 > Handler_rollback 0 > Handler_update 7285852 > Handler_write 7629240 > Key_blocks_not_flushed 0 > Key_blocks_unused 209615 > Key_blocks_used 259217 > Key_read_requests 3265045094 > Key_reads 514495 > Key_write_requests 44032420 > Key_writes 28031516 > Max_used_connections 68 > Not_flushed_delayed_rows 0 > Open_files 366 > Open_streams 0 > Open_tables 329 > Opened_tables 1266 > Qcache_free_blocks 41 > Qcache_free_memory 222752 > Qcache_hits 403342 > Qcache_inserts 1142208 > Qcache_lowmem_prunes 1087690 > Qcache_not_cached 50062140 > Qcache_queries_in_cache 85 > Qcache_total_blocks 1224 > Questions 61539502 > Rpl_status NULL > Select_full_join 0 > Select_full_range_join 0 > Select_range 12402776 > Select_range_check 0 > Select_scan 122732 > Slave_open_temp_tables 0 > Slave_running OFF > Slow_launch_threads 14 > Slow_queries 8479 > Sort_merge_passes 3341 > Sort_range 1200657 > Sort_rows 102718275 > Sort_scan 4068 > Table_locks_immediate 57790378 > Table_locks_waited 72932 > Threads_cached 4 > Threads_connected 9 > Threads_created 9510 > Threads_running 1 > Uptime 721559 > > amount of RAM: > 4Gb RAM, Dual Xeon 2400, 3 x SCIS 140Gb > > most problematic queries: > SELECT SQL_CACHE id, program_name, categor, subcategor, subsubcategor, > subsubsubcategor, source_url, rating, short_description, long_description, > when_modifed+0, author, searched_words, size_in_kb, licence, language, > install, win95, win98, winme, winnt, win2000, winxp, wince, unix, palm, mac, > other_versions, rus_progs , MATCH (search_keywords ) AGAINST ('ÙÐßÛ xbÊÍ > ÞÊÎÍ' ) as relevance FROM programms1 WHERE MATCH (search_keywords ) AGAINST > ('+(>(ÙÐßÛ)) +(xbÊÍ) +(ÞÊÎÍ)' IN BOOLEAN MODE) ORDER BY relevance DESC LIMIT > 1000; > > table definition: > CREATE TABLE programms1 ( > id int(10) unsigned NOT NULL auto_increment, > categor tinyint(3) unsigned NOT NULL default '0', > subcategor tinyint(3) unsigned NOT NULL default '0', > subsubcategor tinyint(3) unsigned NOT NULL default '0', > subsubsubcategor tinyint(3) unsigned NOT NULL default '0', > program_name varchar(255) NOT NULL default '', > language tinyint(3) unsigned NOT NULL default '0', > install tinyint(3) unsigned NOT NULL default '0', > win95 tinyint(3) unsigned NOT NULL default '0', > win98 tinyint(3) unsigned NOT NULL default '0', > winme tinyint(3) unsigned NOT NULL default '0', > winnt tinyint(3) unsigned NOT NULL default '0', > win2000 tinyint(3) unsigned NOT NULL default '0', > winxp tinyint(3) unsigned NOT NULL default '0', > wince tinyint(3) unsigned NOT NULL default '0', > palm tinyint(3) unsigned NOT NULL default '0', > mac tinyint(3) unsigned NOT NULL default '0', > unix tinyint(3) unsigned NOT NULL default '0', > licence tinyint(3) unsigned NOT NULL default '0', > size_in_kb mediumint(8) unsigned NOT NULL default '0', > author varchar(255) NOT NULL default '', > short_description varchar(255) NOT NULL default '', > long_description text NOT NULL, > when_modifed timestamp NOT NULL default CURRENT_TIMESTAMP on update > CURRENT_TIMESTAMP, > rating int(11) NOT NULL default '0', > source_url varchar(255) NOT NULL default '', > searched_words varchar(255) NOT NULL default '', > letter char(1) character set cp1251 collate cp1251_bin NOT NULL default '', > other_versions tinyint(3) unsigned NOT NULL default '0', > rus_progs tinyint(3) unsigned NOT NULL default '0', > search_keywords text NOT NULL, > similar_keywords text NOT NULL, > PRIMARY KEY (id), > KEY rating (rating), > KEY source_url (source_url), > KEY when_modifed (when_modifed), > KEY is_book (categor,rating), > KEY letter (letter,program_name), > KEY author (author,rating), > KEY categor (categor,when_modifed), > KEY subcategor (subcategor,rating), > KEY subsubcategor (subsubcategor,rating), > KEY subsubsubcategor (subsubsubcategor,rating), > KEY subcategor1 (subcategor,when_modifed), > KEY subsubcategor1 (subsubcategor,when_modifed), > KEY subsubsubcategor1 (subsubsubcategor,when_modifed), > KEY categor_2 (categor,language,rating), > KEY categor_3 (categor,licence,rating), > KEY categor_4 (categor,install,rating), > KEY categor_5 (categor,win98,rating), > KEY categor_6 (categor,win2000,rating), > KEY categor_7 (categor,winxp,rating), > KEY language (language,when_modifed), > KEY licence (licence,when_modifed), > KEY install (install,when_modifed), > KEY win95 (win95,when_modifed), > KEY win98 (win98,when_modifed), > KEY winme (winme,when_modifed), > KEY winnt (winnt,when_modifed), > KEY win2000 (win2000,when_modifed), > KEY winxp (winxp,when_modifed), > KEY unix (unix,when_modifed), > KEY wince (wince,when_modifed), > KEY win98_2 (win98,rating), > KEY licence_2 (licence,rating), > KEY palm (palm,rating), > KEY win95_2 (win95,rating), > KEY mac (mac,rating), > KEY winxp_2 (winxp,rating), > KEY letter_2 (letter,rating), > KEY winme_2 (winme,rating), > KEY letter_3 (letter,language,rating), > KEY palm_2 (palm,when_modifed), > KEY language_2 (language,licence,rating), > FULLTEXT KEY search_keywords (search_keywords), > FULLTEXT KEY similar_keywords (similar_keywords) > ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 PACK_KEYS=1 CHECKSUM=1; > > > Sincerely, > Michael, > http://xoib.com/ http://3d2f.com/ > http://qaix.com/ http://ryxi.com/ > http://gyxe.com/ http://gyxu.com/ > http://xywe.com/ http://xyqe.com/ > > > > -- For technical support contracts, goto https://order.mysql.com/?ref=ensita This email is sponsored by Ensita.NET http://www.ensita.net/ __ ___ ___ ____ __ / |/ /_ __/ __/ __ \/ / Gleb Paharenko / /|_/ / // /\ \/ /_/ / /__ [EMAIL PROTECTED] /_/ /_/\_, /___/\___\_\___/ MySQL AB / Ensita.NET <___/ www.mysql.com -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]