thread_stack параметр сервера MySQL - что это? Насколько большой это должно быть?

Пара несколько дней назад я получил следующую ошибку от базы данных MySQL:

Стопка потока превышается: необходимы 68 744 байта, используемые 196 608-байтового стека и 128 000 байтов. Используйте 'mysqld-O thread_stack =#' для определения большего стека.

Во всей документации, которую я нашел, говорится, что:

Значение по умолчанию составляет 64 КБ перед MySQL 4.0.10 и 192KB после этого. Если размер стопки потока является слишком небольшим, он ограничивает сложность SQL-операторов, которые сервер может обработать, глубина рекурсии хранимых процедур и другие использующие память действия.

Я установил переменную thread_stack на 256K, но это было просто случайное значение. На данный момент это решило проблему, но я действительно хотел бы знать, как большой должен это быть, получить некоторые значения в качестве примера или использования. Например:

  • Что может и что я не могу сделать с 96 КБ (x КБ) стопки потока?
  • Как вычислить, как большая стопка потока мне нужно?
14
задан bancer 5 November 2016 в 20:40
поделиться