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

Есть ли причина использовать 64-битный MySQL (и ОС) в небольших базах данных?

У меня есть относительно небольшая и счастливая база данных MySQL 5.1, живущая на 64-битной установке FreeBSD 7.1. Из-за несовместимости с нашей программой резервного копирования и FreeBSD мне пришлось перенести базы данных на сервер Linux.

Поскольку мы запускаем Debian для всего остального, я собираюсь довольствоваться этим. Большой вопрос в том, следует ли мне использовать 32-битную или 64-битную версию. Это виртуализированная среда, поэтому оборудование не играет здесь роли.

Получу ли я какой-либо прирост (или потерю) производительности при использовании 64-битного Linux + 64-битного MySQL с небольшой выделенной памятью (скажем, 512 МБ)? Должен ли я просто использовать 32-разрядную версию до того дня, когда мне нужно будет назначить MySQL более 2 ГБ ОЗУ (PAE не помогает, 32-разрядная версия MySQL не может использовать более 2 ГБ)?

Вы уже сами ответили на вопрос.

Если вы на 100% уверены, что не превысите 2 ГБ ОЗУ в текущем жизненном цикле оборудования, вы можете остаться с 32-разрядной версией, когда придет время заменить оборудование, вам все равно придется пересмотреть свое решение.

Учитывая текущий рынок оборудования, я не вижу реальной причины не использовать 64-битную версию, это будет безопасная сторона в случае непредвиденного роста, что верно как для кеша, так и для реального размера данных. В конце концов, полная миграция займет немного больше времени, чем просто снятие коробки и добавление ОЗУ.

Недостатки могут заключаться в том, что указатели в 64-битной системе используют примерно на 30% больше памяти, но это не сильно повредит вам, если вы действительно останетесь на небольшой стороне использования памяти, но с другой стороны, если вы вырастете, вы сможете вырасти больше. быстро (по крайней мере, пока вы можете оставаться на той же аппаратной коробке)

64 бит. Если по какой-то причине вы получаете запрос, который превышает потребности базы данных 512, вы можете просто добавить дешевый баран и покончить с этим. Без переустановки и т. Д.

Запуск Mysql 5 или более поздней версии на 64-битной ОС обычно стоит того, независимо от того, к какой памяти вы обращаетесь, из-за внутреннего использования 64 целых чисел в базе данных. Если вы не пытаетесь уместить свою установку в крошечный объем оперативной памяти, почти нет причин выбирать 32-битную установку Mysql.

Я думаю, что важнее выбора 32-битной или 64-битной:

  1. Убедитесь, что вы используете LVM или какой-либо метод хранения, который позволит вам делать резервные копии ваших данных с помощью моментальных снимков. (Да, даже с MyISAM вы можете смыть с блокировкой, щелчком, освобождением)
    1. Я могу переместить активную БД из 32-битной системы в более мощную в 64-битной системе с временем простоя 0-5 минут.
    2. При такой гибкости я бы выбрал 32-битную версию. Если бы у меня его не было, я бы, вероятно, перешел на 64-битную версию в целях безопасности.
  2. Подумайте, что еще может потребоваться запустить в системе. Вы можете обнаружить, что какая-то другая программа, которую вы хотите запустить, является только 32-битной.

Вот как бы я принял решение. Я бы не стал «выбирать» архитектуру. Я бы сравнил свой случай с таким логическим деревом.