0
최근에 새 전용 MySQL 시스템이 있습니다. 이제는 잘 돌아가고 있지만 때로는 다음과 같은 쿼리에 의해 속도가 느려지는 경우가 있습니다. tmp 테이블에 복사 중. 무작위로 발생하는 것 같습니다.InnoDB 최적화 팁 - mysql
이 기계에는 12GB DDR3 램이 있으며 RAID10 설정에서 (4x 15k RPM SAS 드라이브) 실행됩니다.
이 기계는 각각 1에서 8GB 사이의 5 개의 데이터베이스를 호스트합니다. 읽기/쓰기 : 66 %/34 %
다음은 my.cnf 파일입니다. 누구나 성능 최적화 팁이 있다면, 나는 그것을 듣고 싶습니다.
[mysqld]
skip-name-resolve
datadir=/var/lib/mysql
#socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
old_passwords=0
max_connections = 1500
table_cache = 1024
max_allowed_packet = 16M
sort_buffer_size = 2M
thread_cache = 8
thread_concurrency = 32
query_cache_size = 0M
query_cache_type = 0
default-storage-engine = innodb
transaction_isolation = REPEATABLE-READ
tmp_table_size = 256M
long_query_time = 3
log_slow_queries = 1
innodb_additional_mem_pool_size=48M
innodb_flush_log_at_trx_commit=2
innodb_log_buffer_size=32M
innodb_buffer_pool_size=6G
innodb_autoinc_lock_mode=2
innodb_io_capacity=500
innodb_read_io_threads=16
innodb_write_io_threads=8
innodb_buffer_pool_size = 5000M
innodb_lock_wait_timeout = 300
innodb_max_dirty_pages_pct = 90
innodb_thread_concurrency =32
느린 쿼리 로그를 확인하여 느린 쿼리를 확인하십시오. innodb_buffer_pool_size가 2 번 설정되어 있습니다. MySQL이이 머신에서 실행되는 유일한 데몬이라면, 버퍼 풀을 10G로 설정하십시오 (일반적으로 사용 가능한 RAM의 80 %로 설정 됨). –
이중 항목을 지적 해 주셔서 감사합니다. 느린 쿼리 로그를 사용할 수 있지만 느린 로그가 저장된 위치를 찾을 수 없습니다. –
이것도 확인하십시오 : http://www.mysqlperformanceblog.com/2007/11/01/innodb-performance-optimization-basics/ –