database.sarang.net
UserID
Passwd
Database
DBMS
ㆍMySQL
PostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
MySQL Q&A 27946 게시물 읽기
No. 27946
update 쿼리 시간
작성자
작성일
2008-12-25 16:34
조회수
5,792

도움을 구하고자 합니다.

mysql 에서 update 쿼리하나 날리는데 시간이 무료 5초나 걸리고 있습니다.


대략 쿼리는 아래와 같습니다.


UPDATE test SET test_a=1 WHERE test_b='17028861'


update 와 insert 가 동실에 일어나는데 update가 시간이 길어지다보니 insert 는 계속 lock 이 걸립니다.


DB서버는 사용자가 웹서버에서 test 테이블 동시에 1천건정도 데이터를 인서트하고 업데이트를 반복하게 됩니다.

하루에 접속자수는 5만명입니다.


아래 시스템으로 견디기 힘든건지,, 튜닝을 하면 괜찮은지 한번 살펴봐 주시면 감사하겠습니다.


CPU : 쿼드코어 * 2 

RAM : 16GB

DISK : SAS 147 * 2 (RAID1)


참고로 CPU사용율과 메모리 사용율은 부하가 없고 한가한 정도입니다.


+---------------------------------+-------------------------------------------+

| Variable_name                   | Value                                     |

+---------------------------------+-------------------------------------------+

| auto_increment_increment        | 1                                         |

| auto_increment_offset           | 1                                         |

| autocommit                      | ON                                        |

| automatic_sp_privileges         | ON                                        |

| back_log                        | 50                                        |

| basedir                         | /usr/local/mysql/                         |

| big_tables                      | OFF                                       |

| binlog_cache_size               | 32768                                     |

| binlog_format                   | STATEMENT                                 |

| bulk_insert_buffer_size         | 8388608                                   |

| character_set_client            | latin1                                    |

| character_set_connection        | latin1                                    |

| character_set_database          | latin1                                    |

| character_set_filesystem        | binary                                    |

| character_set_results           | latin1                                    |

| character_set_server            | latin1                                    |

| character_set_system            | utf8                                      |

| character_sets_dir              | /usr/local/mysql/share/mysql/charsets/    |

| collation_connection            | latin1_swedish_ci                         |

| collation_database              | latin1_swedish_ci                         |

| collation_server                | latin1_swedish_ci                         |

| completion_type                 | 0                                         |

| concurrent_insert               | 1                                         |

| connect_timeout                 | 10                                        |

| datadir                         | /usr/local/mysql/data/                    |

| 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                                      |

| div_precision_increment         | 4                                         |

| engine_condition_pushdown       | ON                                        |

| error_count                     | 0                                         |

| event_scheduler                 | OFF                                       |

| expire_logs_days                | 0                                         |

| flush                           | OFF                                       |

| flush_time                      | 0                                         |

| foreign_key_checks              | ON                                        |

| ft_boolean_syntax               | + -><()~*:""&|                            |

| ft_max_word_len                 | 84                                        |

| ft_min_word_len                 | 4                                         |

| ft_query_expansion_limit        | 20                                        |

| ft_stopword_file                | (built-in)                                |

| general_log                     | OFF                                       |

| general_log_file                | /usr/local/mysql/data/testt_db.log      |

| group_concat_max_len            | 1024                                      |

| have_community_features         | YES                                       |

| have_compress                   | YES                                       |

| have_crypt                      | YES                                       |

| have_csv                        | YES                                       |

| have_dynamic_loading            | NO                                        |

| have_geometry                   | YES                                       |

| have_innodb                     | NO                                        |

| have_ndbcluster                 | NO                                        |

| have_openssl                    | NO                                        |

| have_partitioning               | NO                                        |

| have_query_cache                | YES                                       |

| have_rtree_keys                 | YES                                       |

| have_ssl                        | NO                                        |

| have_symlink                    | YES                                       |

| hostname                        | test_db                                |

| identity                        | 0                                         |

| init_connect                    |                                           |

| init_file                       |                                           |

| init_slave                      |                                           |

| insert_id                       | 0                                         |

| interactive_timeout             | 28800                                     |

| join_buffer_size                | 131072                                    |

| keep_files_on_create            | OFF                                       |

| key_buffer_size                 | 1073741824                                |

| key_cache_age_threshold         | 300                                       |

| key_cache_block_size            | 1024                                      |

| key_cache_division_limit        | 100                                       |

| language                        | /usr/local/mysql/share/mysql/english/     |

| large_files_support             | ON                                        |

| large_page_size                 | 0                                         |

| large_pages                     | OFF                                       |

| last_insert_id                  | 0                                         |

| lc_time_names                   | en_US                                     |

| license                         | GPL                                       |

| local_infile                    | ON                                        |

| locked_in_memory                | OFF                                       |

| log                             | OFF                                       |

| log_bin                         | OFF                                       |

| log_bin_trust_function_creators | OFF                                       |

| log_bin_trust_routine_creators  | OFF                                       |

| log_error                       | /usr/local/mysql/data/test_db.err      |

| log_output                      | FILE                                      |

| log_queries_not_using_indexes   | OFF                                       |

| log_slave_updates               | OFF                                       |

| log_slow_queries                | OFF                                       |

| log_warnings                    | 1                                         |

| long_query_time                 | 10.000000                                 |

| low_priority_updates            | OFF                                       |

| lower_case_file_system          | OFF                                       |

| lower_case_table_names          | 0                                         |

| max_allowed_packet              | 134217728                                 |

| max_binlog_cache_size           | 18446744073709551615                      |

| max_binlog_size                 | 1073741824                                |

| max_connect_errors              | 10000                                     |

| max_connections                 | 1000                                      |

| max_delayed_threads             | 20                                        |

| max_error_count                 | 64                                        |

| max_heap_table_size             | 16777216                                  |

| max_insert_delayed_threads      | 20                                        |

| max_join_size                   | 18446744073709551615                      |

| max_length_for_sort_data        | 1024                                      |

| max_prepared_stmt_count         | 16382                                     |

| max_relay_log_size              | 0                                         |

| max_seeks_for_key               | 18446744073709551615                      |

| max_sort_length                 | 1024                                      |

| max_sp_recursion_depth          | 0                                         |

| max_tmp_tables                  | 32                                        |

| max_user_connections            | 0                                         |

| max_write_lock_count            | 18446744073709551615                      |

| min_examined_row_limit          | 0                                         |

| multi_range_count               | 256                                       |

| myisam_data_pointer_size        | 6                                         |

| myisam_max_sort_file_size       | 9223372036854775807                       |

| myisam_recover_options          | OFF                                       |

| myisam_repair_threads           | 1                                         |

| myisam_sort_buffer_size         | 67108864                                  |

| myisam_stats_method             | nulls_unequal                             |

| myisam_use_mmap                 | OFF                                       |

| net_buffer_length               | 16384                                     |

| net_read_timeout                | 30                                        |

| net_retry_count                 | 10                                        |

| net_write_timeout               | 60                                        |

| new                             | OFF                                       |

| old                             | OFF                                       |

| old_alter_table                 | OFF                                       |

| old_passwords                   | OFF                                       |

| open_files_limit                | 10000                                     |

| optimizer_prune_level           | 1                                         |

| optimizer_search_depth          | 62                                        |

| pid_file                        | /usr/local/mysql/data/test_db.pid      |

| plugin_dir                      | /usr/local/mysql/lib/mysql/plugin         |

| port                            | 3306                                      |

| preload_buffer_size             | 32768                                     |

| profiling                       | OFF                                       |

| profiling_history_size          | 15                                        |

| protocol_version                | 10                                        |

| pseudo_thread_id                | 967492                                    |

| query_alloc_block_size          | 8192                                      |

| query_cache_limit               | 1048576                                   |

| query_cache_min_res_unit        | 4096                                      |

| query_cache_size                | 33554432                                  |

| query_cache_type                | ON                                        |

| query_cache_wlock_invalidate    | OFF                                       |

| query_prealloc_size             | 8192                                      |

| rand_seed1                      |                                           |

| rand_seed2                      |                                           |

| range_alloc_block_size          | 4096                                      |

| read_buffer_size                | 4194304                                   |

| read_only                       | OFF                                       |

| read_rnd_buffer_size            | 16777216                                  |

| relay_log                       |                                           |

| relay_log_index                 |                                           |

| relay_log_info_file             | relay-log.info                            |

| relay_log_purge                 | ON                                        |

| relay_log_space_limit           | 0                                         |

| report_host                     |                                           |

| report_password                 |                                           |

| report_port                     | 3306                                      |

| report_user                     |                                           |

| rpl_recovery_rank               | 0                                         |

| secure_auth                     | OFF                                       |

| secure_file_priv                |                                           |

| server_id                       | 1                                         |

| skip_external_locking           | ON                                        |

| skip_networking                 | OFF                                       |

| skip_show_database              | OFF                                       |

| slave_compressed_protocol       | OFF                                       |

| slave_exec_mode                 | STRICT                                    |

| slave_load_tmpdir               | /tmp                                      |

| slave_net_timeout               | 3600                                      |

| slave_skip_errors               | OFF                                       |

| slave_transaction_retries       | 10                                        |

| slow_launch_time                | 2                                         |

| slow_query_log                  | OFF                                       |

| slow_query_log_file             | /usr/local/mysql/data/test_db-slow.log |

| socket                          | /tmp/mysql.sock                           |

| sort_buffer_size                | 4194304                                   |

| sql_auto_is_null                | ON                                        |

| sql_big_selects                 | ON                                        |

| sql_big_tables                  | OFF                                       |

| sql_buffer_result               | OFF                                       |

| sql_log_bin                     | ON                                        |

| sql_log_off                     | OFF                                       |

| sql_log_update                  | ON                                        |

| sql_low_priority_updates        | OFF                                       |

| sql_max_join_size               | 18446744073709551615                      |

| sql_mode                        |                                           |

| sql_notes                       | ON                                        |

| sql_quote_show_create           | ON                                        |

| sql_safe_updates                | OFF                                       |

| sql_select_limit                | 18446744073709551615                      |

| sql_slave_skip_counter          |                                           |

| sql_warnings                    | OFF                                       |

| ssl_ca                          |                                           |

| ssl_capath                      |                                           |

| ssl_cert                        |                                           |

| ssl_cipher                      |                                           |

| ssl_key                         |                                           |

| storage_engine                  | MyISAM                                    |

| sync_binlog                     | 0                                         |

| sync_frm                        | ON                                        |

| system_time_zone                | KST                                       |

| table_definition_cache          | 256                                       |

| table_lock_wait_timeout         | 50                                        |

| table_open_cache                | 256                                       |

| table_type                      | MyISAM                                    |

| thread_cache_size               | 8                                         |

| thread_handling                 | one-thread-per-connection                 |

| thread_stack                    | 262144                                    |

| time_format                     | %H:%i:%s                                  |

| time_zone                       | SYSTEM                                    |

| timed_mutexes                   | OFF                                       |

| timestamp                       | 1230190510                                |

| tmp_table_size                  | 16777216                                  |

| tmpdir                          | /tmp                                      |

| transaction_alloc_block_size    | 8192                                      |

| transaction_prealloc_size       | 4096                                      |

| tx_isolation                    | REPEATABLE-READ                           |

| unique_checks                   | ON                                        |

| updatable_views_with_limit      | YES                                       |

| version                         | 5.1.30                                    |

| version_comment                 | Source distribution                       |

| version_compile_machine         | x86_64                                    |

| version_compile_os              | unknown-linux-gnu                         |

| wait_timeout                    | 28800                                     |

| warning_count                   | 0                                         |

+---------------------------------+-------------------------------------------+

이 글에 대한 댓글이 총 1건 있습니다.

시스템 사양이 넘 좋군요.. 사양 탓은 아닌 듯 합니다.

일단 test table의 description을 올려주시면 다른 분들이 답변해주시기에 좋은 정보가 되리라 생각됩니다.

 

test_b 에 index가 어떻게 구성되어 있는지 궁금하군요.

또한 update시에 발생하는 트리거의 여부도 관계가 있을 듯 합니다.

박현우(lqez)님이 2009-01-05 01:28에 작성한 댓글입니다.
[Top]
No.
제목
작성자
작성일
조회
27949년,월간 합계 쿼리를 한번으로 끝낼수 없는건가요? [1]
초보
2008-12-29
6931
27948Full Table Scans [1]
박신득
2008-12-29
5565
27947slave DB 변경에 관한 방법론에 대해서 문의드립니다.
박성원
2008-12-26
4824
27946update 쿼리 시간 [1]
2008-12-25
5792
27945update set where 1 구문 [3]
박성원
2008-12-24
5039
27944mysql 이전 질문 (5.0.21-community-nt -> 5.0.67) [1]
임시손님
2008-12-23
4472
27943query explan에 대해서 문의 드립니다. [3]
박성원
2008-12-22
4372
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.027초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다