diff --git a/.gitlab/scripts/install_db.sh b/.gitlab/scripts/install_db.sh index f095f1ef0cd7401f647f1a364743915c64214713..4befdcca3c887363f625ed49b2a5c643e8d001fa 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 5e3446668a9c8ae7c141c984cd00b9d29caedd62..c5607a4d4a6481802a487a0a53baf2ce3a24c7e1 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