Эффективная настройка MySQL

Материал из BiTel WiKi

Перейти к: навигация, поиск

Пример работающей оптимизированной конфигурации MySQL сервера с поддержкой только MyIsam таблиц.

[mysqld]
max_allowed_packet=50M
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
tmpdir = /storage/mysql-tmp
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# modified parameters
max_connections=1000
table_cache=2048
sort_buffer_size=8M
join_buffer_size=8M
thread_cache_size=40
thread_concurrency=2
query_cache_size = 64M
query_cache_limit = 2M
query_cache_type = 1
memlock
tmp_table_size = 64M
key_buffer_size = 200M
wait_timeout = 28800

# log slow queries
log-slow-queries=/var/log/slowquery.log

# myisam
read_buffer_size = 2M
read_rnd_buffer_size = 16M
bulk_insert_buffer_size = 64M
myisam_sort_buffer_size = 256M
myisam_max_sort_file_size = 10G
myisam_max_extra_sort_file_size = 10G
myisam_repair_threads = 1
myisam_recover
myisam_data_pointer_size = 6

# bdb
skip-bdb
# innodb
skip-innodb

# misc
default-character-set=cp1251
default-collation=cp1251_general_ci

[mysql.server]
user=mysql
basedir=/var/lib

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
open-files-limit=32000

[client]
default-character-set=cp1251


Иногда при этой конфигурации MySQL может выдавать ошибку типа

Can't create/write to file '/tmp/mysql-tmp/MYle0eKC' (Errcode: 13)

В этом случае необходимо

chown mysql:mysql /tmp/mysql-tmp
chmod 1777 /tmp/mysql-tmp

хотя скорее всего подойдут и просто права 777 на /tmp от рута

Личные инструменты