Назад | Перейти на главную страницу

InnoDB на сервере с 2 SSD

У меня есть сервер с 2 SSD. Я запускаю установку LAMP и имею базу данных innoDB.

мои вопросы:

1) будет ли innoDB автоматически использовать оба SSD или только один? 2) значительно ли снизится производительность, если я буду использовать 2 HDD вместо 2 SSD?

Спасибо

будет ли innoDB автоматически использовать оба SSD или только один?

Нет, InnoDB (и MySQL) ничего не знает о вашей подсистеме хранения. Вам необходимо настроить устройства хранения по мере необходимости (RAID, LVM, файловые системы и т. Д.), Смонтировать хранилище в выбранном вами месте, а затем указать MySQL на его использование.

Могу ли я значительно снизить производительность, если буду использовать 2 HDD вместо 2 SSD?

Это полностью зависит от вашей рабочей нагрузки и возможностей ваших блочных устройств. Если у вас старые или дешевые твердотельные накопители, но жесткие диски Fibre Channel 15 Кбайт, то эти жесткие диски будут перемещаться по всем твердотельным накопителям.

Вращающиеся жесткие диски, как правило, лучше справляются с последовательными рабочими нагрузками, тогда как твердотельные накопители, как правило, лучше работают с произвольным вводом-выводом.

Вы можете заставить InnoDB использовать два или более отдельных устройства без использования RAId или чего-то еще, вам просто нужно указать несколько файлов в переменной innodb_data_file_path

Что-то вроде:

innodb_data_file_path = / ssd1 / ibdata1: 1024M; / ssd2 / ibdata2: 1024M; / ssd1 / ibdata3: 1024M; / ssd2 / ibdata4: 128M: авторасширение

поместит первый ГБ данных из вашей базы данных на первый SSD, затем второй на другой и т. д.

Вероятно, лучше всего использовать 'innodb_file_per_table', который создает отдельный файл innodb для каждой таблицы, тогда вы можете просто символически связать разные таблицы или базы данных с разными дисками, чтобы балансировка нагрузки, как вы думаете, даст вам лучшую производительность там, где она вам нужна. .

У этого способа есть как преимущества, так и недостатки. Лучшее решение для скорости - иметь достаточно оперативной памяти, чтобы все данные innodb также были кэшированы в памяти.