По какой-то причине PHP-расширение pdo_mysql на нашем размещенном сервере не может выполнить запрос, использующий представление MySQL, с этим сообщением об ошибке.
SQLSTATE [HY000]: общая ошибка: 1615 Подготовленный оператор необходимо повторно подготовить
(Существует обсуждение Ошибка #42041 Подготовленный отчет завершается ошибкой, когда сервер MySQL находится под нагрузкой, а также многочисленные вопросы о переполнении стека.)
По какой-то причине запрос с использованием представления выполняется нормально, если мы переключимся на использование расширения nd_pdo_mysql, которое предназначено для встроенного драйвера MySQL (mysqlnd).
В чем разница между pdo_mysql и nd_pdo_mysql? Почему одно предпочтительнее другого?
Спасибо.
nd_pdo_mysql
выглядит как пользовательское подключаемое расширение, предоставляемое хостинговой платформой cPanel для выбора -в родном драйвере MySQL во время выполнения. В обычных установках PHP драйвер MySQL выбирается в во время компиляции и его нельзя изменить впоследствии, поэтомуpdo_mysql
является единственным доступным расширением и ничего не говорит о драйвере. - person Álvaro González   schedule 13.10.2017