Какое-либо решение для MySQL Servers, чтобы не представлять их безразличный при выполнении больших запросов?

Я действительно выполняю несколько mysql серверов для нескольких клиентов, существует типичная проблема, которую я раньше видел. Когда я выполняю некоторый большой запрос против больших баз данных, например:

У меня есть таблица MyISAM с несколькими полнотекстовыми индексами и приблизительно 8,7 миллионами записей, если я ищу неиндексированный столбец, mysql сервис становится безразличным, пока результат не выходит (это могло занять 30 минут).

Как постараться не предоставлять mysql безразличную услугу? Например, в какой-либо ОС можно ли установить приоритет процесса гарантировать, что каждый процесс заставляет некоторые ресурсы работать, Как я делаю это в mysql?

1
задан 20 May 2019 в 09:27
3 ответа

ನಿಮ್ಮ ಸಮಸ್ಯೆಗೆ ಹಲವಾರು ಪರಿಹಾರಗಳಿವೆ. ನೀವು ಟ್ವೀಕಿಂಗ್ ಸೆಟ್ಟಿಂಗ್‌ಗಳನ್ನು ಪ್ರಯತ್ನಿಸಬಹುದು (ಮೈಸ್ಕ್ಲ್ ಹೆಚ್ಚು ರಾಮ್ ಅನ್ನು ಬಳಸಲು ಅನುಮತಿಸುತ್ತದೆ, ಅದು ಸ್ವ್ಯಾಪ್ ಆಗುವುದಿಲ್ಲ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು, ಸೂಚಿಕೆಗಳನ್ನು ಸೇರಿಸುವುದು) ಅಥವಾ ಹಾರ್ಡ್‌ವೇರ್ ಅನ್ನು ಬದಲಾಯಿಸುವುದು (ಹೆಚ್ಚು ರಾಮ್, ವೇಗದ ಡಿಸ್ಕ್ಗಳು). .

2
ответ дан 3 December 2019 в 17:39

ВЫ ДОЛЖНЫ иметь индексы для каждого столбца, участвующего в поиске. При поиске в столбце без индекса поиск выполняется с помощью "сортировки файлов", что не очень эффективно для FTS.

1
ответ дан 3 December 2019 в 17:39

Þú ættir ekki að keyra þunglestrar fyrirspurnir á meistara sérstaklega í framleiðslu. Vinsamlegast farðu í afritun eða uppsetningu MySQL klasa og beindu fyrirspurnum þínum til óskrifandi hnúta.

1
ответ дан 3 December 2019 в 17:39

Теги

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