MySQL скорость вопрос

0

У меня есть две mysql db на одной машине. db1 и db2. Если db1 интенсивно используется, запрашиваются ли запросы db2 для завершения запросов db1? другими словами, mysql использует вычисления paralell для запросов в разных базах данных?

Например, большой запрос1 приходит к db2. Он вычисляет 5 секунд. И через 1 секунду приходит немного query2 для db1, он вычисляет 1 секунду. Результат запроса будет возвращен через 5 секунд. (ожидание запроса1) или возвращается через 1 сек. сразу?

Теги:
performance

3 ответа

0
Лучший ответ

Базы данных не будут конфликтовать друг с другом. Вы можете думать о них скорее как о логических группировках таблиц. Запросы в одной и той же базе данных не будут конфликтовать друг с другом, если только они не используют одни и те же таблицы. Даже тогда несколько SELECT могут происходить сразу же в тех же таблицах.

Вы действительно получаете "конфликты", когда таблица изменяется (UPDATE, DELETE, INSERT). Даже тогда таблицы InnoDB могут запускать модификацию и одновременно выбирать запросы. Таблицы MyISAM почти всегда "конфликтуют", поскольку для модификации используется блокировка таблиц.

0

2 предложения (если вам нужно много запросов)

1- будет использовать cron... 2- рассмотреть возможность перехода на MariaDB (если это возможно для вас)

Например

* * * * *   /usr/local/bin/php /home/__user_/public_html/..phpFile.php
* * * * *   /usr/local/bin/php /home/__user_/public_html/..phpFile2.php

В phpFile1 вы поместите свой запрос для db1.

В phpFile2 вы отправляете свой запрос на db2 и т.д...

Маленький нюанс заключается в том, что cron1 запустится, а cron2 не будет "ждать" для завершения cron1, таким образом cron1 AND cron2 может работать одновременно.

** также; Я сам обновился от Mysql 5.6 до MariaDB 10, и это было большой WIN в скорости;) • последнее примечание: у MariaDB есть механизм ARIA (это MyISAM, но с большей надежностью и очень быстрым...)

0

В соответствии с тем, что вы описываете, оба запроса будут выполняться параллельно.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню