This blog post discusses the ramifications of STRICT mode in MySQL 5.7.
In short
By default, MySQL 5.7 is much “stricter” than older versions of MySQL. That can make your application fail. To temporarily fix this, change the
SQL_MODE
to
NO_ENGINE_SUBSTITUTION
(same as in MySQL 5.6):
mysql> set global SQL_MODE="NO_ENGINE_SUBSTITUTION";
MySQL 5.7, dates and default values
The default
SQL_MODE
in MySQL 5.7 is:
ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
That makes MySQL operate in “strict” mode for transactional tables.
“Strict mode …
[Read more]