仕様が変わったので、sql_modeを設定して、5.7.4より前と同じように動くようにする。
my.cnfファイルにsql_modeを設定
- home brewで入れたmysqlのmy-xxx.cnfをコピーして、user/local/etcの下にファイルを配置する。
- user/local/etcのファイル内に、下記ののように、
ONLY_FULL_GROUP_BY
が含まれない状態でsql_modeを設定する。
sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION'
- 設定を加えたら、mysqlをリスタート
- homebrewで入れていたら
mysql.server stop
して mysql.server start
(もしくはrestart)
- 設定を加えたら、mysql を起動して、
show variables;
でsql_mode=の中に、 ONLY_FULL_GROUP_BYの設定がないことを確認。
参考にさせていただきました。
qiita.com
starzero.hatenablog.com
qiita.com
MySQLサーバの起動と停止 | OpenGroove