Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Оптимизация запросов MySQL под Windows
 
 автор: DarkLord   (02.05.2006 в 14:34)   письмо автору
 
 

Как оптимально настроить MySQL под Window, т.е. чтобы запросы выполнялись максимально быстро и без глюков?
Суть в том, что под Linux тот же код выполняется в разы быстрее.
Предистория вопроса и исходники в теме:
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=14243&page=1

   
 
 автор: cheops   (02.05.2006 в 16:35)   письмо автору
 
   для: DarkLord   (02.05.2006 в 14:34)
 

Дело здесь может быть вовсе не в Windows, например, страница данного форума на локальной машине открывается дольше минуты, хотя MySQL у меня не плохо настроена, а машина не самая слабая (PIV, RAM 2 Гб, SATA-диск). Дело здесь вот в чём, на форуме постоянно много народу сидит: SQL-запросы и их результаты постоянно сидят в кэше в оперативной памяти, а на локальной машине посещаемость отсутствует и даже если выделить кэш - данные всё равно на диске остануться - поэтому если посещаемость маленькая и запросы постоянно не выполняются скорость работы с большими таблицами тоже маленькая.
Тем не менее, вы можете настроить MySQL примерно следующим образом, создайте файл my.ini в корне диска C следующего содержания
[mysqld]

# The TCP/IP Port the MySQL Server will listen on
port=3306

#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/mysql/"

#Path to the database root
datadir="C:/mysql/Data/"

log-bin
# The default character set that will be used when a new schema or table is
# created and no character set is defined
default-character-set=cp1251

key_buffer_size = 256M
max_allowed_packet = 8M
table_cache = 512 # число одновременных соединений*число открытых таблиц
sort_buffer_size = 16M  
read_buffer_size = 16M  
join_buffer_size = 1M  #
query_cache_size = 64M
query_cache_limit = 2M
myisam_sort_buffer_size = 128M
thread_cache = 8
# thread_stack = 192K - вообще лучше убрать или ставить не меньше 192К
tmp_table_size = 64M
max_connections = 200

[myisamchk]
#key_buffer = 256M
#sort_buffer_size = 256M
#read_buffer = 16M
#write_buffer = 16M

Однако, если ситуация примерно такая, как описано выше - шибко сильно скорость не возрастёт, хотя MySQL при длительных и трудоёмких вычислениях будет с удовольствием откусывать оперативную память (в основном она определяется директивой key_buffer_size = 256M к которой прибавляются другие объёмы в зависимости от выполняемой операции).

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования