From 0c1c27ba85bbe6812e7d07fe05e999abf0574b33 Mon Sep 17 00:00:00 2001 From: Wido den Hollander Date: Wed, 12 Apr 2017 09:48:16 +0200 Subject: [PATCH] CLOUDSTACK-9871: Set SQL Mode in SQL Session for MySQL 5.7 compatibility MySQL 5.7 has a more strict SQL mode by default with which CloudStack is not compatible. By setting the SQL Mode to a more relaxed mode on run-time we can run without changing any SQL server settings. Admins could also apply this to the [mysqld] section of their my.cnf: sql_mode = 'STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' Signed-off-by: Wido den Hollander --- client/tomcatconf/db.properties.in | 2 +- packaging/centos7/tomcat7/db.properties | 2 +- utils/conf/db.properties | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/client/tomcatconf/db.properties.in b/client/tomcatconf/db.properties.in index 1c2b55f3b86c..ab7d7c90c168 100644 --- a/client/tomcatconf/db.properties.in +++ b/client/tomcatconf/db.properties.in @@ -39,7 +39,7 @@ db.cloud.testWhileIdle=true db.cloud.timeBetweenEvictionRunsMillis=40000 db.cloud.minEvictableIdleTimeMillis=240000 db.cloud.poolPreparedStatements=false -db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true +db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&sessionVariables=sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' # CloudStack database SSL settings db.cloud.useSSL=false diff --git a/packaging/centos7/tomcat7/db.properties b/packaging/centos7/tomcat7/db.properties index 6161f3a6e2af..94376f7286b0 100644 --- a/packaging/centos7/tomcat7/db.properties +++ b/packaging/centos7/tomcat7/db.properties @@ -39,7 +39,7 @@ db.cloud.testWhileIdle=true db.cloud.timeBetweenEvictionRunsMillis=40000 db.cloud.minEvictableIdleTimeMillis=240000 db.cloud.poolPreparedStatements=false -db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true +db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&sessionVariables=sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' # CloudStack database SSL settings db.cloud.useSSL=false diff --git a/utils/conf/db.properties b/utils/conf/db.properties index c7aeaad26421..4182811a6a60 100644 --- a/utils/conf/db.properties +++ b/utils/conf/db.properties @@ -44,7 +44,7 @@ db.cloud.testWhileIdle=true db.cloud.timeBetweenEvictionRunsMillis=40000 db.cloud.minEvictableIdleTimeMillis=240000 db.cloud.poolPreparedStatements=false -db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&prepStmtCacheSqlLimit=4096 +db.cloud.url.params=prepStmtCacheSize=517&cachePrepStmts=true&prepStmtCacheSqlLimit=4096&sessionVariables=sql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION' # usage database settings db.usage.username=cloud