MySQL Можете ли вы переопределить режим SQL сервера на уровне базы данных?
У нас есть один сервер MySQL 5.7, который нам нужен в нестрогом режиме, потому что это требуется некоторым устаревшим базам данных. Однако в нашем новейшем приложении мы бы хотели, чтобы база данных обеспечивала строгость (особенно NO_ZERO_DATE
). Есть ли способ переопределить конфигурации на уровне сервера на уровне базы данных?
1 ответ
Вы можете изменить режим SQL сессией с:
SET SESSION sql_mode = 'modes';
Согласно документации:
Установка переменной SESSION влияет только на текущего клиента.
Это может быть обходной путь для решения вашей проблемы. Я думаю, что нет прямого способа установить режим SQL по базе данных.
Обратите внимание также:
Важный
Режим SQL и пользовательское разбиение. Изменение режима SQL сервера после создания и вставки данных в многораздельные таблицы может вызвать серьезные изменения в поведении таких таблиц и привести к потере или повреждению данных. Настоятельно рекомендуется никогда не менять режим SQL после создания таблиц, использующих пользовательское разбиение.
Возможно, более безопасный способ - использовать два экземпляра сервера MySQL.