Топ 1000 способов увеличения производительности SQL (часть 3)

myadsОбщие способы ускорения Сервера MySQL:

  1. innodb_flush_commit=0 может помочь устранить лишние задержки;
  2. Оптимизируйте оспользование типов данных, используйте последовательные типы данных;
  3. Использования процедуру ANALYSE (), чтобы помочь определить наилучший тип данных для Ваших потребностей;
  4. Если возможно используйте компрессию;
  5. сожмите статические данные text/blobs;
  6. При запросах и буферизуйте кеш если возможно (config params — http://docs.cellblue.nl/2007/03/17/easy-mysql-performance-tweaks/);
  7. используйте один из поставляемых config файлов;
  8. используйте key_buffer, кеш unix (оставляют некоторую RAM свободной), переменные связи, innodb переменные памяти;
  9. проверьте SHOW STATUS и SHOW VARIABLES (GLOBAL|SESSION в 5.0 и выше);
  10. знайте об обмене с Linux, «swappiness» (обойдите OS filecache для innodb таблиц данных, innodb_flush_method=O_DIRECT, если возможный (это — для определенной OS);
  11. Дефрагментируйте таблицы, восстановите индексы, ведите постоянное обслуживание;
  12. Если Вы используете innodb_flush_txn_commit=1, использование, поддержанный кеш аппаратных средств, запись большие обьемы RAM — лучше, это ускоряет дисковую скорость, используйте 64-битовую архитектуру;
  13. Увеличьте myisam_sort_buffer_size, чтобы оптимизировать большие вставки (это — переменная связи);
  14. Ищите память, настраивающую параметр для кэширования на вставке;
  15. Увеличьте temp размер для таблиц в окружающей среде складирования данных (поумолчанию составляет 32 МБ), таким образом это не пишет диску (также ограниченный max_heap_table_size, поулочанию 16 МБ);
  16. Управляемый в _MODE=STRICT, чтобы помочь идентифицировать предупреждения;
  17. Избыточные данные избыточны и мешают работе;

  • Валерий

    Спасибо за статью! Надеюсь, автор не против, если я использую это для своей курсовой...

Запись навигация

Top