@@ -1161,10 +1161,28 @@ stack_builder() {
11611161 if [[ $3 == " mysql-client" && $( conf_read mysql-client) != " true" ]]; then
11621162 mysql_client_install
11631163 # MySQL-Client: MariaDB creates /etc/mysql folder automatically when client only, MySQL NOT!
1164- if [[ $( conf_read db-engine) == " mysql" && ! -d /etc/mysql/mysql.conf.d ]]; then
1165- mkdir -p /etc/mysql/mysql.conf.d
1166- sudo find /etc/mysql -type d -exec chmod 755 {} \;
1167- fi
1164+ # MySQL-Client: MariaDB doesn't create default CNF (sometimes) when reinstalling client alone. I don't know why!
1165+ [[ $( conf_read db-engine) == " mysql" && ! -d /etc/mysql/mysql.conf.d ]] && mkdir -p /etc/mysql/mysql.conf.d
1166+ [[ $( conf_read db-engine) != " mysql" && ! -d /etc/mysql/mariadb.conf.d ]] && mkdir -p /etc/mysql/mariadb.conf.d
1167+ [[ ! -d /etc/mysql/conf.d ]] && mkdir -p /etc/mysql/conf.d
1168+
1169+ # We need to force our own CNF
1170+ # These files are very inconcistent, especially for MySQL
1171+ # Sometimes are not created, sometimes 'mysql.conf.d' folder is not included, etc...
1172+ # Seems like it only happens with mysql-client alone, mysql-server seems to be fine!
1173+ rm -rf /etc/mysql/my.cnf
1174+ touch /etc/mysql/my.cnf
1175+ echo " [client-server]
1176+ # Port or socket location where to connect
1177+ # port = 3306
1178+ socket = /run/mysqld/mysqld.sock
1179+
1180+ # Import all .cnf files from configuration directory
1181+ !includedir /etc/mysql/conf.d/
1182+ !includedir /etc/mysql/mariadb.conf.d/" >> /etc/mysql/my.cnf
1183+
1184+ [[ $( conf_read db-engine) == " mysql" ]] && sed -i ' s/mariadb/mysql/g' /etc/mysql/my.cnf
1185+ sudo find /etc/mysql -type d -exec chmod 755 {} \;
11681186 fi
11691187
11701188 [[ $3 == " mysql" && $( conf_read mysql) != " true" ]] && mysql_client_install && mysql_install && local mysql_pass_display=" true" && mysql_optim
0 commit comments