MySQL을 설치한 서버가 CPU가 8개이고, RAM이 32G 입니다.
그런데 이 서버의 MySQL 설정 시 RAM을 모두 활용 하지 못하는것 같습니다.
몇몇 파라메터 값을 조금이라도 높게 설정하면 최대 메모리 초과 라는 메세지와 함께 MySQL 인스턴스가 시작 되질 않습니다.
다음은 My.ini 파일의 설정 값입니다. 확인 후 조언 좀 부탁드립니다.
[mysqld]
skip-locking
skip-name-resolve
port=3306
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"
datadir="D:/MySQL Datafiles/"
default-character-set=euckr
default-storage-engine=INNODB
sql-mode="NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections=1000
query_cache_type=2
query_cache_limit=1M
query_cache_min_res_unit=16M
query_cache_size=16M
#*** MyISAM Specific options
table_cache=6020
tmp_table_size=256M
thread_concurrency=16
thread_cache_size=64
myisam_max_sort_file_size=10M
myisam_sort_buffer_size=10M
key_buffer_size=64M
read_buffer_size=64K
read_rnd_buffer_size=64M
sort_buffer_size=64M
#*** INNODB Specific options ***
innodb_data_home_dir="D:/MySQL Datafiles/"
#skip-innodb
innodb_additional_mem_pool_size=64M
innodb_flush_log_at_trx_commit=0
innodb_log_buffer_size=8M
innodb_buffer_pool_size= 1G
innodb_log_buffer_size = 8M
innodb_log_file_size= 1024M
innodb_log_files_in_group = 3
innodb_thread_concurrency=18
innodb_file_io_threads = 8
innodb_lock_wait_timeout = 120
innodb_file_per_table
innodb_data_file_path=ibdata_t7rtms:10M:autoextend
long_query_time=1
log-queries-not-using-indexes
#log-warnings
expire_logs_days=15
net_read_timeout=300
server-id=0
show-slave-auth-info
replicate-do-db=t7rtms.%
max_allowed_packet=16M
net_buffer_length=16M
##########################
특히 위의 innodb_buffer_pool_size의 경우 물리 메모리의 50%-80%까지 지정 가능하다고 하는데 1G 이상으로 지정 시 메모리 초과 오류가 발생합니다.
어떻게 해야 할지 조언 좀 부탁드립니다. |