@@ -9,6 +9,7 @@ MISP_APP_CONFIG_PATH=/var/www/MISP/app/Config
9
9
[ -z " $REDIS_FQDN " ] && REDIS_FQDN=redis
10
10
[ -z " $MISP_MODULES_FQDN " ] && MISP_MODULES_FQDN=" http://misp-modules"
11
11
[ -z " $MYSQLCMD " ] && MYSQLCMD=" mysql -u $MYSQL_USER -p$MYSQL_PASSWORD -P $MYSQL_PORT -h $MYSQL_HOST -r -N $MYSQL_DATABASE "
12
+ [ -z " $MYSQLROOTCMD " ] && MYSQLROOTCMD=" mysql -u root -p$MYSQL_ROOT_PASSWORD -P $MYSQL_PORT -h $MYSQL_HOST -r -N $MYSQL_DATABASE "
12
13
13
14
ENTRYPOINT_PID_FILE=" /entrypoint_apache.install"
14
15
[ ! -f $ENTRYPOINT_PID_FILE ] && touch $ENTRYPOINT_PID_FILE
@@ -92,9 +93,24 @@ init_mysql(){
92
93
exit 1
93
94
fi
94
95
96
+ # If we're given the root password, disable the default sql_mode ONLY_FULL_GROUP_BY
97
+ # in MySQL. Required until https://github.com/MISP/MISP/issues/1894 is fixed
98
+ if [ -n " $MYSQL_ROOT_PASSWORD " ]; then
99
+ echo -n " Checking if ONLY_FULL_GROUP_BY mode is enabled..."
100
+ sql_mode=$( echo " SELECT @@sql_mode" | $MYSQLROOTCMD | grep " ONLY_FULL_GROUP_BY" )
101
+ if [ -n " $sql_mode " ]; then
102
+ echo -e " \nDisabling MySQL default ONLY_FULL_GROUP_BY"
103
+ echo " SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));" | $MYSQLROOTCMD 1> /dev/null
104
+ else
105
+ echo " OK"
106
+ fi
107
+ fi
108
+
95
109
if [ $( isDBinitDone) -eq 0 ]; then
96
110
echo " Database has already been initialized"
97
111
else
112
+ echo " Disabling MySQL default ONLY_FULL_GROUP_BY"
113
+ echo " SET GLOBAL sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));" | $MYSQLCMD 1> /dev/null
98
114
echo " Database has not been initialized, importing MySQL scheme..."
99
115
$MYSQLCMD < /var/www/MISP/INSTALL/MYSQL.sql
100
116
fi
0 commit comments