Эврика Четверг, 16.05.2024, 02:46:20
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Форум » Техника » Компьютеры » MySQL: основы производительности
MySQL: основы производительности
RobertДата: Вторник, 16.12.2008, 14:17:00 | Сообщение # 1
Киноман
Группа: Еврика
Сообщений: 363
Награды: 0
Репутация: 1
Статус: Offline
MySQL поставляется с несколькими готовыми конфигурационными файлами для разных задач и разных серверов. К сожалению, многие этого не знают и работают с настройками по умолчанию. Это неправильно!
Готовые конфигурации

В каталоге /usr/share/doc/mysql-server-x.x.xx/ лежат следующие файлы:
my-small.cnf — для систем с малым обьемом памяти (<=64Mb), в которых MySQL используется редко.
my-medium.cnf — если памяти мало (32-64Mb) или MySQL используется совместно с другими приложениями (например Apache) и памяти около 128Mb.
my-large.cnf, my-huge.cnf — для систем с большим обьемом памяти (512Mb, 1-2Gb), где MySQL играет главную роль.
my-innodb-heavy-4G.cnf — 4Gb памяти, InnoDB, MySQL играет главную роль.

Наиболее оптимальным вариантом для VPS начального уровня будет my-medium.cnf. Перенесите следующие параметры из секции [mysqld] этого файла в /etc/my.cnf:

Quote
[mysqld]
port = 3306
socket = /var/lib/mysql/mysql.sock
skip-locking
key_buffer = 16M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M

Также можно добавить в конец /etc/my.cnf опцию ведения лог-файла ошибок:

Quote
[mysqld_safe]
err-log=/var/log/mysqld.log

Позже, как только появится возможность, обязательно изучите, что означают все эти параметры. Скорее всего, изменив их в соответствии с вашей задачей, удастся сэкономить немного ресурсов или получить ещё больший прирост в производительности.
InnoDB, BDB

Если вы не используете таблицы типа InnoDB и BDB, лучше отключить эти хранилища данных. Так вы сэкономите немного памяти. Это особенно важно, если вы владелец VPS.

Добавьте в секцию [mysqld] строки:

Quote
skip-innodb
skip-bdb
TCP или Unix Socket

Есть два варианта взаимодействия программ и скриптов с MySQL: через протокол TCP/IP (по умолчанию порт 3306) и через Unix Socket (обычно — /var/lib/mysql/mysql.sock). Во втором случае программы общаются с СУБД минуя сетевую подсистему ОС, что, по разным данным, дает прирост в производительности около 8%. Кроме того, поскольку MySQL перестает использовать порт 3306, исчезает ещё одна причина для беспокойства о безопасности сервера.

Просто укажите в секции [mysqld] параметр:

Quote
skip-networking

Взято с server-tuning.info
 
Форум » Техника » Компьютеры » MySQL: основы производительности
  • Страница 1 из 1
  • 1
Поиск:

Copyright Еврика © 2024
Бесплатный хостинг uCoz