File tree 2 files changed +16
-1
lines changed
2 files changed +16
-1
lines changed Original file line number Diff line number Diff line change @@ -45,9 +45,10 @@ services:
45
45
# Database Configuration (And their defaults)
46
46
# - "MYSQL_HOST=db"
47
47
# - "MYSQL_USER=misp"
48
- # - "MYSQL_PASSWORD=example" # NOTE: This should be AlphaNum with no Special Chars. Otherwise, edit config files after first run.
48
+ # - "MYSQL_PASSWORD=example" # NOTE: This should be AlphaNum with no Special Chars. Otherwise, edit config files after first run.
49
49
# - "MYSQL_DATABASE=misp"
50
50
# Optional Settings
51
+ # - "MYSQL_ROOT_PASSWORD=password" # Enable to allow fixing ONLY_FULL_GROUP_BY MySQL defaults
51
52
# - "NOREDIR=true" # Do not redirect port 80
52
53
# - "DISIPV6=true" # Disable IPV6 in nginx
53
54
# - "SECURESSL=true" # Enable higher security SSL in nginx
Original file line number Diff line number Diff line change @@ -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,6 +93,19 @@ 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
You can’t perform that action at this time.
0 commit comments