Как подстроить наш сервер MySQL?

Откровенно говоря, нет никакой причины НЕ выполнить Резервные копирования журнала транзакций на намного более частом уровне. Резервное копирование журнала транзакций ничего не ПОВРЕЖДАЕТ. (В БОЛЬШИНСТВЕ сценариев это просто собирается взять немного активности ЦП и активности диска - но это обычно почти незначительно.)

Кроме того, можно и увеличить покрытие И повысить производительность путем перемещения резервных копий файла журнала на меньшее количество производительного диска: SQL Server Magazing: Максимизируйте Производительность хранилища

Путем увеличения частоты резервных копий Вы уменьшите свое окно потенциально потерянных данных. (Технически, если катастрофические отказы SQL Server, можно иногда восстанавливать потерянные транзакции начиная с последнего резервного копирования FULL/DIFFERNTIAL, ЕСЛИ файл журнала все еще неповрежден. Но обычно, если что-то пошло не так, как надо достаточно, чтобы Вы создали резервную копию во-первых, существует ДОСТОЙНЫЙ шанс, Ваш файл журнала идется/жарится.)

Не стесняйтесь проверять следующие видео некоторое время больше фона и информации о том, что продолжается с точки зрения резервных копий, журналов и лучших практик:

Демистифицированные резервные копии SQL Server

Основы входа SQL Server

Управление SQL Server 2005/2008 Файлы журнала

Резервные лучшие практики SQL Server

8
задан 13 August 2009 в 01:08
5 ответов

Вы, вероятно, не должны рассматривать MyISAM, INNODB будет работать на Вас. MyISAM, возможно, быстрее когда дело доходит до SELECT но (например) это блокирует Вашу полную таблицу на обновлениях.

Что касается INNODB:

  • обычно, всегда рассматривайте больше RAM перед входом в sharding (размер DB = ~ RAM)
  • смотрите на следующие переменные:
    • innodb_buffer_pool_size (мы используем примерно 60-70% нашей памяти),
    • innodb_log_file_size
    • innodb_log_buffer_size
    • innodb_flush_log_at_trx_commit
    • innodb_thread_concurrency
    • innodb_flush_method=O_DIRECT
    • innodb_file_per_table
  • переключатель от innodb до xtradb (тот же API)
  • используйте сборки percona (они содержат патчи производительности от Google, и т.д.),

Большие чтения:

На ноте стороны:

  • части на 2 ГБ просто недостаточно для выполнения этого
  • далее больше я нашел, что устройство хранения данных на slicehost было довольно медленным (io, фактор),
  • в облаке это может иметь смысл к черепку ранее (причина предела RAM)
  • Я прокрутил все запросы EXPLAIN для проверки индекс действительно используется
12
ответ дан 2 December 2019 в 22:51
  • 1
    Большой ответ! Прямо сейчас наш размер базы данных 61M... поэтому, если я верю Вашему оператору DB = ~ RAM; у нас есть wayyy достаточно RAM! Я думаю, что устройство хранения данных является действительно медленным (потому что оно виртуализируется, я предполагаю). I' ll читают Ваши ссылки.Спасибо! –  Julien Genestoux 12 August 2009 в 19:29
  • 2
    (и да, я имею, прокрутил все запросы, ОБЪЯСНЯЮТ, и они все используют индексы), –  Julien Genestoux 12 August 2009 в 19:31
  • 3
    Эй Julien - прежде всего, Вы голосуете за ответы здесь.;-) Во-вторых, просто наличие RAM бесполезно если MySQL isn' t использование его. Удостоверьтесь, что Вы перепроверяете настройки, таким образом, это использует их. –  Till 12 August 2009 в 19:43
  • 4
    Да, хорошо это точно, где я нуждаюсь в своей помощи ;) Я думаю, что MySQL использует его. (и на самом деле слишком много!, потому что наш сервер, кажется, исчерпывает RAM после некоторой точки). DB является размером если 61M, каким образом это " eats" 2 ГБ ПОРШНЯ? –  Julien Genestoux 12 August 2009 в 21:09
  • 5
    Можете Вы добавлять определение таблицы для своего " worst" запрос? –  Till 12 August 2009 в 21:33

Я нашел, что MySQLTuner является очень эффективным при прошлом - это может сделать разумные предложения для изменений конфигурации на основе использования Вашего сервера. Это основано на сценарии настраивающей краткой информации, который также стоит попытки.

2
ответ дан 2 December 2019 в 22:51

Если можно заменить где пункты с определенными идентификаторами (предполагающий, что нет многих), затем, это могло ускорить те обновления.

Используя что-то как поиск сфинкса, который можно легко кластеризировать для нахождения объектов заранее, поможет. Я услышал, что это может возвратить поиски быстрее, чем mysql знает, что это имеет индексы.

http://www.sphinxsearch.com/

0
ответ дан 2 December 2019 в 22:51
  • 1
    Извините, но я don' t видят точку? We' ре, не делающее любой поиск на нашей базе данных... –  Julien Genestoux 12 August 2009 в 18:54
  • 2
    Вы:.. ГДЕ (feeds. url В (ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ, ПУСТОЙ УКАЗАТЕЛЬ)).... ГДЕ (feeds. url В (' S' ' S')).. Это могло быть более дорогим, чем нахождение целого числа id' s через сфинкса сначала и сфинкса использования можно отодвинуть загрузку в другой сервер легко с волнением по поводу установок "главный-подчиненный" и задержек журнала мусорного ведра. –  Mark L 12 August 2009 в 22:16
  • 3
    feeds.url является индексом. Первичный ключ быстрее, чем индекс? –  Julien Genestoux 13 August 2009 в 01:10
  • 4
    Если это было целое число вместо (I' m принимающий) VARCHAR (10) или что-то как этот затем да, целое число использовало бы меньше пространства, и mysql мог найти его в индексной таблице более быстрым. –  Mark L 13 August 2009 в 09:29
  • 5
    Но wouldn' t это быть действительно крайним? –  Julien Genestoux 13 August 2009 в 09:54

Ваше приложение выпускает соединения с пулом, когда это заканчивает свой материал?

1
ответ дан 2 December 2019 в 22:51
  • 1
    Нет, потому что it' s никогда делавшийся с ними на самом деле. It' s не как веб-приложение, где приложение " dies" между соединениями. –  Julien Genestoux 13 August 2009 в 09:52

Проверьте снова запросы, которые занимают так много времени. Таблицы правильно индексируются?

Также можно выполнить MySQL Tuner к точной настройке mysql настроек.

0
ответ дан 2 December 2019 в 22:51
  • 1
    Да, происхождение, когда блоки сервера, и снова, I' ve проверил все запросы: они все используют индексы. (+ самыми медленными запросами являются также Запросы на вставку... который doesn' t имеют какое-либо отношение к индексам, AFAIK), –  Julien Genestoux 12 August 2009 в 19:15

Теги

Похожие вопросы