From 80ede55a25e60f366aa0ff05dc9ae1043c56f271 Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Thu, 25 Apr 2024 19:32:01 +0000
Subject: [PATCH] set default character set on command line not on server, re
 #3988

Merge request studip/studip!2923
---
 .gitlab/scripts/install_db.sh | 24 +++++++++++++++++-------
 docker/studip/my.cnf          |  1 -
 2 files changed, 17 insertions(+), 8 deletions(-)

diff --git a/.gitlab/scripts/install_db.sh b/.gitlab/scripts/install_db.sh
index f095f1ef0cd..4befdcca3c8 100644
--- a/.gitlab/scripts/install_db.sh
+++ b/.gitlab/scripts/install_db.sh
@@ -1,26 +1,36 @@
 #!/bin/bash
 set -e
 
+importSQLFile() {
+    mysql --default-character-set=utf8mb4\
+        -u $MYSQL_USER\
+        -h $MYSQL_HOST\
+        -p$MYSQL_PASSWORD\
+        $MYSQL_DATABASE\
+        < $1
+
+}
+
 if [ $(mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE -e "show tables;" --batch | wc -l) -eq 0 ]; then
 
     # Setup mysql database
     echo "INSTALL DB"
-    mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip.sql
+    importSQLFile ./db/studip.sql
     echo "INSTALL DEFAULT DATA"
-    mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_default_data.sql
-    mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_resources_default_data.sql
+    importSQLFile ./db/studip_default_data.sql
+    importSQLFile ./db/studip_resources_default_data.sql
 
     echo "INSTALL ROOTUSER"
-    mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_root_user.sql
+    importSQLFile ./db/studip_root_user.sql
 
     # Check if demodata is required
     if [ ! -z $DEMO_DATA ]; then
         echo "INSTALL DEMODATA"
-        mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_demo_data.sql
+        importSQLFile ./db/studip_demo_data.sql
         echo "INSTALL MVV_DEMODATA"
-        mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_mvv_demo_data.sql
+        importSQLFile ./db/studip_mvv_demo_data.sql
         echo "INSTALL RESOURCES-DEMODATA"
-        mysql -u $MYSQL_USER -h $MYSQL_HOST -p$MYSQL_PASSWORD $MYSQL_DATABASE < ./db/studip_resources_demo_data.sql
+        importSQLFile ./db/studip_resources_demo_data.sql
     fi
 
     echo "INSTALLATION FINISHED"
diff --git a/docker/studip/my.cnf b/docker/studip/my.cnf
index 5e3446668a9..c5607a4d4a6 100644
--- a/docker/studip/my.cnf
+++ b/docker/studip/my.cnf
@@ -5,7 +5,6 @@ default-character-set = utf8mb4
 default-character-set = utf8mb4
 
 [mysqld]
-init_connect='SET NAMES UTF8MB4'
 character-set-server = utf8mb4
 collation-server = utf8mb4_unicode_ci
 
-- 
GitLab