From 085ee2a10ecc303548dd11e45a7a47250d7066b4 Mon Sep 17 00:00:00 2001 From: Christoph Date: Sun, 31 Dec 2017 01:27:24 +0100 Subject: [PATCH] install_mysql-5.7.sh: Add support for systemd service file (Part 1) --- install_mysql-5.7.sh | 369 ++++++++++++++++++++++++++++++++++++------- 1 file changed, 310 insertions(+), 59 deletions(-) diff --git a/install_mysql-5.7.sh b/install_mysql-5.7.sh index d74ae8d..ce03253 100755 --- a/install_mysql-5.7.sh +++ b/install_mysql-5.7.sh @@ -110,6 +110,16 @@ if [ "$(id -u)" != "0" ]; then fatal Skript muss als \"root\" ausgeführt werden fi +# - OS supports systemd ? +# - +_systemd="$(which systemd)" +_systemctl="$(which systemctl)" +if [[ -z "$_systemd" ]] && [[ -z "$_systemctl" ]]; then + SYSTEMD_EXISTS=false +else + SYSTEMD_EXISTS=true +fi + DISTRIBUTION= echo "" echo -e "\033[32m--\033[m" @@ -401,19 +411,10 @@ do done -if $UPDATE_MYSQL ; then -# __SYMLINK_INITSCRIPT=nein -# __SYMLINK_INSTALL_DIR=nein -# __SYMLINK_DATA_DIR=nein -#else - __SYMLINK_INITSCRIPT=ja - __SYMLINK_INSTALL_DIR=ja - __SYMLINK_DATA_DIR=ja -fi +__SYMLINK_INITSCRIPT=ja +__SYMLINK_INSTALL_DIR=ja +__SYMLINK_DATA_DIR=ja -#clear -#echo -e "\033[21G\033[32mInstallationsscript für die Mysql Datenbank \033[m" -#echo "" echo -e "\033[32m--\033[m" echo "" echo "Symlinks:" @@ -428,11 +429,9 @@ read _SYMLINK_INITSCRIPT if [ "X$_SYMLINK_INITSCRIPT" = "X" ];then _SYMLINK_INITSCRIPT=$__SYMLINK_INITSCRIPT fi +_SYMLINK_INITSCRIPT=`echo "$_SYMLINK_INITSCRIPT" | tr '[:upper:]' '[:lower:]'` -while [ "$_SYMLINK_INITSCRIPT" != "ja" \ - -a "$_SYMLINK_INITSCRIPT" != "Ja" \ - -a "$_SYMLINK_INITSCRIPT" != "nein" \ - -a "$_SYMLINK_INITSCRIPT" != "Nein" ]; do +while [ "$_SYMLINK_INITSCRIPT" != "ja" -a "$_SYMLINK_INITSCRIPT" != "nein" ]; do echononl "Falsche Eingabe. (ja/nein): " read _SYMLINK_INITSCRIPT done @@ -450,10 +449,8 @@ if [ "X$_SYMLINK_INSTALL_DIR" = "X" ];then _SYMLINK_INSTALL_DIR=$__SYMLINK_INSTALL_DIR fi -while [ "$_SYMLINK_INSTALL_DIR" != "ja" \ - -a "$_SYMLINK_INSTALL_DIR" != "Ja" \ - -a "$_SYMLINK_INSTALL_DIR" != "nein" \ - -a "$_SYMLINK_INSTALL_DIR" != "Nein" ]; do +_SYMLINK_INSTALL_DIR="$(echo "$_SYMLINK_INSTALL_DIR" | tr '[:upper:]' '[:lower:]')" +while [ "$_SYMLINK_INSTALL_DIR" != "ja" -a "$_SYMLINK_INSTALL_DIR" != "nein" ]; do echononl "Falsche Eingabe. (ja/nein): " read _SYMLINK_INSTALL_DIR done @@ -471,10 +468,8 @@ if [ "X$_SYMLINK_DATA_DIR" = "X" ];then _SYMLINK_DATA_DIR=$__SYMLINK_DATA_DIR fi -while [ "$_SYMLINK_DATA_DIR" != "ja" \ - -a "$_SYMLINK_DATA_DIR" != "Ja" \ - -a "$_SYMLINK_DATA_DIR" != "nein" \ - -a "$_SYMLINK_DATA_DIR" != "Nein" ]; do +__SYMLINK_DATA_DIR="$(echo "$_SYMLINK_DATA_DIR" | tr '[:upper:]' '[:lower:]')" +while [ "$_SYMLINK_DATA_DIR" != "ja" -a "$_SYMLINK_DATA_DIR" != "nein" ]; do echononl "Falsche Eingabe. (ja/nein): " read _SYMLINK_DATA_DIR done @@ -506,12 +501,43 @@ while [ "X$OK" != "Xja" -a "X$OK" != "Xnein" ]; do done if [ "$OK" = "ja" ]; then SYSTEMD_EXISTS=false +fi + +if $SYSTEMD_EXISTS ; then + INSTALL_SYSTEMD_SERVICE="" + echo "" + echo -e "\033[32m--\033[m" + echo "" + echo "Wie soll der MySQL Datenbank Service getsartet werden?" + echo "" + echo "[1] SysVinit script mysql.server" + echo -e "[2] \033[37m\033[1mSystemd service mysqld.service\033[m" + echo "" + echo "" + echo "Type a number or press to choose highlighted value" + echo "" + echononl "Eingabe: " + + while [[ "$INSTALL_SYSTEMD_SERVICE" != "true" ]] && [[ "$INSTALL_SYSTEMD_SERVICE" != "false" ]]; do + + #while [[ -z "$INSTALL_SYSTEMD_SERVICE" ]];do + read OPTION + case $OPTION in + 1) INSTALL_SYSTEMD_SERVICE=false + ;; + 2) INSTALL_SYSTEMD_SERVICE=true + ;; + '') INSTALL_SYSTEMD_SERVICE=true + ;; + *) echo "" + echo -e "\tFalsche Eingabe ! [ 1 = Systemd Service ; 2 = SysVinit Script ]" + echo "" + echononl "Eingabe:" + ;; + esac + done else - if [ "X`which systemd`" = "X" ]; then - SYSTEMD_EXISTS=false - else - SYSTEMD_EXISTS=true - fi + INSTALL_SYSTEMD_SERVICE=false fi @@ -547,7 +573,12 @@ echo "Symlink Initskript........: $SYMLINK_INITSCRIPT" echo "Symlink Installationsverz.: $SYMLINK_INSTALL_DIR" echo "Symlink Datenverzeichnis..: $SYMLINK_DATA_DIR" echo "" -echo "Using systemd.............: $SYSTEMD_EXISTS" +echo "Systemd Unterstützung.....: $SYSTEMD_EXISTS" +if $INSTALL_SYSTEMD_SERVICE ; then + echo "Starmethode...............: Systemd Service" +else + echo "Starmethode...............: SysVinit Script" +fi echo "" echononl "einverstanden [ja/nein]: " read OK @@ -591,7 +622,7 @@ echo "" ## - if [ -d $logdir ]; then echononl "Verschiebe exitierendes Logverzeichnis ..." - mv ${logdir $logdir}.$_backup_date + mv ${logdir} ${logdir}.$_backup_date if [ "$?" = "0" ]; then echo_ok else @@ -641,6 +672,13 @@ echo "## - Symlink Installationsverz.: $SYMLINK_INSTALL_DIR" >> ${logdir}/main.l echo "## - Symlink Datenverzeichnis..: $SYMLINK_DATA_DIR" >> ${logdir}/main.log echo "## - " >> ${logdir}/main.log echo "" >> ${logdir}/main.log +echo "## - Systemd Unterstützung.....: $SYSTEMD_EXISTS" >> ${logdir}/main.log +if $INSTALL_SYSTEMD_SERVICE ; then + echo "## - Starmethode...............: Systemd Service" >> ${logdir}/main.log +else + echo "## - Starmethode...............: SysVinit Script" >> ${logdir}/main.log +fi +echo "" >> ${logdir}/main.log echo "" >> ${logdir}/main.log echo "UPDATE_MYSQL=$UPDATE_MYSQL" >> ${logdir}/main.log @@ -665,7 +703,8 @@ echo "" >> ${logdir}/main.log echo "SYMLINK_INITSCRIPT=$SYMLINK_INITSCRIPT" >> ${logdir}/main.log echo "SYMLINK_INSTALL_DIR=$SYMLINK_INSTALL_DIR" >> ${logdir}/main.log echo "SYMLINK_DATA_DIR=$SYMLINK_DATA_DIR" >> ${logdir}/main.log -echo "" >> ${logdir}/main.log +echo "SYSTEMD_EXISTS=$SYSTEMD_EXISTS" >> ${logdir}/main.log +echo "INSTALL_SYSTEMD_SERVICE=$INSTALL_SYSTEMD_SERVICE" >> ${logdir}/main.log _MYSQL_INITSCRIPT= @@ -675,8 +714,15 @@ elif [ -f /etc/init.d/mysql ];then _MYSQL_INITSCRIPT="mysql" fi -if [[ -z "$_MYSQL_INITSCRIPT" ]] && $UPDATE_MYSQL ; then - fatal "Kein start/stop script gefunden.." +_SYSTEMD_SERVICE_FILE= +if [[ -f "/etc/systemd/system/mysqld.service" ]]; then + _SYSTEMD_SERVICE_FILE="mysqld.service" +elif [[ -f "/etc/systemd/system/mysql.service" ]] ; then + _SYSTEMD_SERVICE_FILE="mysql.service" +fi + +if [[ -z "$_MYSQL_INITSCRIPT" ]] && [[ -z "$_SYSTEMD_SERVICE_FILE" ]] && $UPDATE_MYSQL ; then + fatal "Kein start/stop Sevice File/ Init Script gefunden.." fi echo "" @@ -685,6 +731,8 @@ echo "" ## - echononl "Backup crontab" echo "" >> ${logdir}/main.log +echo "## - Backup crontab" >> ${logdir}/main.log +echo "## - " >> ${logdir}/main.log echo "crontab -u root -l > $_CRONTAB_BAKUP_FILE" >> ${logdir}/main.log crontab -u root -l >> $_CRONTAB_BAKUP_FILE 2>> ${logdir}/main.log if [ "$?" = "0" ]; then @@ -695,6 +743,8 @@ fi echononl "Disable crontab for user root" echo "" >> ${logdir}/main.log +echo "## - Disable crontab for user root" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "crontab -r -u root" >> ${logdir}/main.log crontab -r -u root >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -709,12 +759,13 @@ fi echononl "Stop MySQL Service.." PID=$(ps aux | grep "mysqld_safe" | grep -v grep | awk '{print$2}') if [[ "X${PID}X" != "XX" ]];then + echo "" >> ${logdir}/main.log + echo "## - Stop MySQL Service" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log if $SYSTEMD_EXISTS ; then - echo "" >> ${logdir}/main.log echo "systemctl stop ${_MYSQL_INITSCRIPT}" >> ${logdir}/main.log systemctl stop ${_MYSQL_INITSCRIPT} >> ${logdir}/main.log 2>&1 else - echo "" >> ${logdir}/main.log echo "/etc/init.d/$_MYSQL_INITSCRIPT stop" >> ${logdir}/main.log /etc/init.d/$_MYSQL_INITSCRIPT stop >> ${logdir}/main.log 2>&1 fi @@ -729,6 +780,8 @@ if [[ "X${PID}X" != "XX" ]];then PID=`ps aux | grep "mysqld" | grep -v grep | awk '{print$2}'` echononl "Abbruch (kill -9) aller mysqld Prozesse.." + echo "## - Abbruch (kill -9) aller mysqld Prozesse" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "" >> ${logdir}/main.log echo "kill -9 $PID" >> ${logdir}/main.log 2>&1 kill -9 $PID @@ -751,6 +804,8 @@ if ! $UPDATE_MYSQL ; then ## - echononl "Entferne symbolische Links aus den Run Level Verzeichnissen" echo "" >> ${logdir}/main.log + echo "## - Entferne symbolische Links aus den Run Level Verzeichnissen" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "update-rc.d -f $_MYSQL_INITSCRIPT remove" >> ${logdir}/main.log update-rc.d -f $_MYSQL_INITSCRIPT remove >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -763,6 +818,8 @@ if ! $UPDATE_MYSQL ; then if [ -f "/etc/init.d/$_MYSQL_INITSCRIPT" ]; then echononl "Entferne existierendes Initskript" echo "" >> ${logdir}/main.log + echo "## - Entferne existierendes Initskript" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "rm -f /etc/init.d/$_MYSQL_INITSCRIPT" >> ${logdir}/main.log rm -f /etc/init.d/$_MYSQL_INITSCRIPT >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -774,6 +831,53 @@ if ! $UPDATE_MYSQL ; then fi fi + if [[ -n "$_SYSTEMD_SERVICE_FILE" ]]; then + + echononl "Deaktiviere Systemd Service \"$_SYSTEMD_SERVICE_FILE\".." + echo "" >> ${logdir}/main.log + echo "## - Deaktiviere Systemd Service \"$_SYSTEMD_SERVICE_FILE\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "systemctl disable \"$_SYSTEMD_SERVICE_FILE\"" >> ${logdir}/main.log + + systemctl disable "$_SYSTEMD_SERVICE_FILE" >> ${logdir}/main.log 2>&1 + if [ "$?" = "0" ]; then + echo_ok + else + echo_failed + fatal "Kann Systemd Service \"$_SYSTEMD_SERVICE_FILE\" nicht deaktivieren!" + fi + + echononl "Entferne Systemd Service \"etc/systemd/system/${_SYSTEMD_SERVICE_FILE}\".." + echo "" >> ${logdir}/main.log + echo "## - Enferne datei \"/etc/systemd/system/${_SYSTEMD_SERVICE_FILE}\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "rm \"/etc/systemd/system/${_SYSTEMD_SERVICE_FILE}\"" >> ${logdir}/main.log + + rm "/etc/systemd/system/${_SYSTEMD_SERVICE_FILE}" >> ${logdir}/main.log 2>&1 + if [ "$?" = "0" ]; then + echo_ok + else + echo_failed + fatal "Kann existierendes Initskript nicht entfernen." + fi + + echononl "Reload Systemd Daemon" + echo "" >> ${logdir}/main.log + echo "## - Reload Systemd Daemon" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "systemctl daemon-reload" >> ${logdir}/main.log + + systemctl daemon-reload >> ${logdir}/main.log 2>&1 + if [ "$?" = "0" ]; then + echo_ok + else + echo_failed + error "Kann Systemd Daemon nicht reloaden." + fi + + + fi + ## - Uninstall debian mysql packages if installed ## - if [ "$DISTRIBUTION" = "Debian" ]; then @@ -800,6 +904,13 @@ if ! $UPDATE_MYSQL ; then echononl "Update index files of the debian repositories" + echo "" >> ${logdir}/main.log + echo "## - Update index files of the debian repositories" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - See: ${logdir}/apt-install.log" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "apt-get update" >> ${logdir}/main.log + echo "apt-get update" >> ${logdir}/apt-install.log apt-get update >> ${logdir}/apt-install.log 2>&1 if [ "$?" = "0" ]; then @@ -816,6 +927,12 @@ if ! $UPDATE_MYSQL ; then echononl "Installing \"cmake\".." _cmake=`which cmake` if [ "X$_cmake" = "X" ]; then + echo "" >> ${logdir}/main.log + echo "## - Installing \"cmake\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - See: ${logdir}/apt-install.log" >> ${logdir}/main.log + echo "DEBIAN_FRONTEND=noninteractive apt-get install -q -y cmake" >> ${logdir}/main.log + echo "DEBIAN_FRONTEND=noninteractive apt-get install -q -y cmake" >> ${logdir}/apt-install.log DEBIAN_FRONTEND=noninteractive apt-get install -q -y cmake >> ${logdir}/apt-install.log 2>&1 if [ "$?" = "0" ]; then @@ -840,6 +957,12 @@ if ! $UPDATE_MYSQL ; then echononl "Installing $_debian_pkg .." if ! dpkg -l $_debian_pkg 2> /dev/null | grep -e "^ii" > /dev/null 2>&1 ; then + echo "" >> ${logdir}/main.log + echo "## - Installing $_debian_pkg" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - See: ${logdir}/apt-install.log" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "DEBIAN_FRONTEND=noninteractive apt-get install -q -y $_debian_pkg" >> ${logdir}/main.log echo "" >> ${logdir}/apt-install.log echo "DEBIAN_FRONTEND=noninteractive apt-get install -q -y $_debian_pkg" >> ${logdir}/apt-install.log @@ -865,6 +988,14 @@ if ! $UPDATE_MYSQL ; then ## - Install dependency packages for \"mysql-server\" ## - echononl "Installing dependency packages for \"mysql-server\"" + echo "" >> ${logdir}/main.log + echo "## - Installing dependency packages for \"mysql-server\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - See: ${logdir}/apt-install.log" >> ${logdir}/main.log + echo "## - " >> ${logdir}/main.log + echo "DEBIAN_FRONTEND=noninteractive apt-get -q -y build-dep mysql-server" >> ${logdir}/main.log + + echo "" >> ${logdir}/apt-install.log echo "DEBIAN_FRONTEND=noninteractive apt-get -q -y build-dep mysql-server" >> ${logdir}/apt-install.log 2>&1 DEBIAN_FRONTEND=noninteractive apt-get -q -y build-dep mysql-server >> ${logdir}/apt-install.log 2>&1 @@ -898,6 +1029,8 @@ else # if ! $UPDATE_MYSQL if [ -d $MYSQL_DATA_DIR ]; then echononl "Sichere exitierendes MySQL Datenbank-Verzeichnis ..." echo "" >> ${logdir}/main.log + echo "## - Sichere exitierendes MySQL Datenbank-Verzeichnis" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "cp -a $MYSQL_DATA_DIR ${MYSQL_DATA_DIR}.${_backup_date}" >> ${logdir}/main.log cp -a $MYSQL_DATA_DIR ${MYSQL_DATA_DIR}.$_backup_date >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -909,6 +1042,8 @@ else # if ! $UPDATE_MYSQL elif [[ -d "$MYSQL_CUR_DATA_DIR" ]] ; then echononl "Kopiere exitierendes MySQL Datenbank-Verzeichnis ..." echo "" >> ${logdir}/main.log + echo "## - Kopiere exitierendes MySQL Datenbank-Verzeichnis" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "cp -a \"$MYSQL_CUR_DATA_DIR\" \"$MYSQL_DATA_DIR\"" >> ${logdir}/main.log cp -a "$MYSQL_CUR_DATA_DIR" "$MYSQL_DATA_DIR" >> ${logdir}/main.log if [ "$?" = "0" ]; then @@ -929,7 +1064,11 @@ echononl "Adding Group \"$MYSQL_GROUP\".." if cat /etc/group | grep -e "^${MYSQL_GROUP}:" > /dev/null 2>&1 ; then echo_skipped else - groupadd -r $MYSQL_GROUP > ${logdir}/groupadd.log 2>&1 + echo "" >> ${logdir}/main.log + echo "## - Erstelle Gruppe \"$MYSQL_GROUP\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "groupadd -r $MYSQL_GROUP" >> ${logdir}/main.log + groupadd -r $MYSQL_GROUP >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok else @@ -942,7 +1081,11 @@ echononl "Adding User \"$MYSQL_USER\".." if id -u $MYSQL_USER > /dev/null 2>&1; then echo_skipped else - useradd -r -M -d /noexistent -s /bin/false -g $MYSQL_GROUP $MYSQL_USER > ${logdir}/useradd.log 2>&1 + echo "" >> ${logdir}/main.log + echo "## - Erstelle User \"$MYSQL_USER\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "useradd -r -M -d /noexistent -s /bin/false -g $MYSQL_GROUP $MYSQL_USER" >> ${logdir}/main.log + useradd -r -M -d /noexistent -s /bin/false -g $MYSQL_GROUP $MYSQL_USER >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok else @@ -954,6 +1097,8 @@ fi echononl "Erstelle Datenbank-Verzeichnis \"$MYSQL_DATA_DIR\".." echo "" >> ${logdir}/main.log +echo "## - Erstelle Datenbank-Verzeichnis \"$MYSQL_DATA_DIR\"" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "mkdir -p $MYSQL_DATA_DIR" >> ${logdir}/main.log mkdir -p $MYSQL_DATA_DIR >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -966,6 +1111,8 @@ fi echononl "Setze Besitzer \"${MYSQL_USER}:${MYSQL_GROUP}\" für Datenbank-Verzeichnis" echo "" >> ${logdir}/main.log +echo "## - Setze Besitzer \"${MYSQL_USER}:${MYSQL_GROUP}\" für Datenbank-Verzeichnis" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "chown -R ${MYSQL_USER}:${MYSQL_GROUP} ${MYSQL_DATA_DIR}" >> ${logdir}/main.log chown -R ${MYSQL_USER}:${MYSQL_GROUP} ${MYSQL_DATA_DIR} >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -977,6 +1124,8 @@ fi echononl "Setze Verzeichnisrechte \"700\" für Datenbank-Verzeichnis" echo "" >> ${logdir}/main.log +echo "## - Setze Verzeichnisrechte \"700\" für Datenbank-Verzeichnis" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "chmod 700 ${MYSQL_DATA_DIR}" >> ${logdir}/main.log chmod 700 ${MYSQL_DATA_DIR} >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -989,6 +1138,8 @@ fi echononl "Erstelle LOG Verzeichnis \"$MYSQL_LOG_DIR\".." echo "" >> ${logdir}/main.log +echo "## - Erstelle LOG Verzeichnis \"$MYSQL_LOG_DIR\"" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "mkdir -p $MYSQL_LOG_DIR" >> ${logdir}/main.log mkdir -p $MYSQL_LOG_DIR >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1003,6 +1154,8 @@ fi echononl "Setze Besitzer \"${MYSQL_USER}:${MYSQL_GROUP}\" für LOG Verzeichnis" echo "" >> ${logdir}/main.log +echo "## - Setze Besitzer \"${MYSQL_USER}:${MYSQL_GROUP}\" für LOG Verzeichnis" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "chown -R ${MYSQL_USER}:${MYSQL_GROUP} ${MYSQL_LOG_DIR}" >> ${logdir}/main.log chown -R ${MYSQL_USER}:${MYSQL_GROUP} ${MYSQL_LOG_DIR} >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1014,6 +1167,8 @@ fi echononl "Setze Verzeichnisrechte \"2750\" für LOG Verzeichnis" echo "" >> ${logdir}/main.log +echo "## - Setze Verzeichnisrechte \"2750\" für LOG Verzeichnis" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "chmod 2750 ${MYSQL_LOG_DIR}" >> ${logdir}/main.log chmod 2750 ${MYSQL_LOG_DIR} >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1027,6 +1182,8 @@ fi if [ -d "${MYSQL_SRC_DIR}" ];then echononl "Verschiebe exitierendes Sourceverzeichnis ..." echo "" >> ${logdir}/main.log + echo "## - Verschiebe exitierendes Sourceverzeichnis" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "mv ${MYSQL_SRC_DIR} ${MYSQL_SRC_DIR}.${_backup_date}" >> ${logdir}/main.log mv ${MYSQL_SRC_DIR} ${MYSQL_SRC_DIR}.$_backup_date >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1045,6 +1202,8 @@ echo "cd $MYSQL_SRC_BASE_DIR" >> ${logdir}/main.log echo echononl "Entpacke $distfile ..." echo "" >> ${logdir}/main.log +echo "## - Entpacke $distfile" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "gunzip < $distfile | tar -xf -" >> ${logdir}/main.log gunzip < $distfile | tar -xf - @@ -1062,6 +1221,8 @@ echo "cd ${MYSQL_SRC_DIR}" >> ${logdir}/main.log if [ -d ${MYSQL_INSTALL_DIR} ];then echononl "Verschiebe exitierendes Installationsverzeichnis ..." echo "" >> ${logdir}/main.log + echo "## - Verschiebe exitierendes Installationsverzeichnis" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "mv $MYSQL_INSTALL_DIR $MYSQL_INSTALL_DIR.${_backup_date}" >> ${logdir}/main.log mv $MYSQL_INSTALL_DIR $MYSQL_INSTALL_DIR.$_backup_date >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1072,6 +1233,19 @@ if [ -d ${MYSQL_INSTALL_DIR} ];then fi fi +cmake_options=" + -DCMAKE_INSTALL_PREFIX=$MYSQL_INSTALL_DIR + -DMYSQL_DATADIR=$MYSQL_DATA_DIR + . + -DINSTALL_SECURE_FILE_PRIVDIR=\"\" + -DENABLED_LOCAL_INFILE=1 + -DDOWNLOAD_BOOST=1 + -DWITH_BOOST=$MYSQL_INSTALL_DIR +" +if $INSTALL_SYSTEMD_SERVICE ; then + cmake_options="$cmake_options -DWITH_SYSTEMD=1" +fi + # - Note: # - # - Since MySQL v 5.7.16 the default 'secure_file_priv' value has changed @@ -1082,13 +1256,12 @@ fi # - echononl "Konfiguriere MySQL (cmake).." echo "" >> ${logdir}/main.log -echo "cmake -DCMAKE_INSTALL_PREFIX=$MYSQL_INSTALL_DIR -DMYSQL_DATADIR=$MYSQL_DATA_DIR . -DINSTALL_SECURE_FILE_PRIVDIR="" -DENABLED_LOCAL_INFILE=1 -DDOWNLOAD_BOOST=1 -DWITH_BOOST=$MYSQL_INSTALL_DIR" >> ${logdir}/main.log -cmake -DCMAKE_INSTALL_PREFIX=$MYSQL_INSTALL_DIR \ - -DMYSQL_DATADIR=$MYSQL_DATA_DIR . \ - -DINSTALL_SECURE_FILE_PRIVDIR=\"\" \ - -DENABLED_LOCAL_INFILE=1 \ - -DDOWNLOAD_BOOST=1 \ - -DWITH_BOOST=$MYSQL_INSTALL_DIR > ${logdir}/cmake-conf.log 2>&1 +echo "# - Konfiguriere MySQL (cmake).." >> ${logdir}/main.log +echo "# -" >> ${logdir}/main.log +echo "# - See ${logdir}/cmake-conf.log" >> ${logdir}/main.log +echo "# -" >> ${logdir}/main.log +echo "cmake $cmake_options" >> ${logdir}/main.log +cmake $cmake_options > ${logdir}/cmake-conf.log 2>&1 if [ "$?" = "0" ]; then echo_ok else @@ -1096,8 +1269,14 @@ else fatal Konfiguration fehlgeschlagen. Siehe ${logdir}/cmake-conf.log .. fi +exit 0 + echononl "Kompiliere MySQL.." echo "" >> ${logdir}/main.log +echo "## - Kompiliere MySQL" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "## - See: ${logdir}/make.log" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "make" >> ${logdir}/main.log make > ${logdir}/make.log 2>&1 if [ "$?" = "0" ]; then @@ -1109,6 +1288,10 @@ fi echononl "Installiere MySQL.." echo "" >> ${logdir}/main.log +echo "## - Installiere MySQL" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "## - See: ${logdir}/make_install.log" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "make install" >> ${logdir}/main.log make install > ${logdir}/make_install.log 2>&1 if [ "$?" = "0" ]; then @@ -1122,6 +1305,15 @@ echononl "Konfiguriere Manpages.." _done=false if [ -f /etc/manpath.config ];then if ! grep /usr/local/mysql/man /etc/manpath.config > /dev/null 2<&1 ; then + echo "## - Konfiguriere Manpages" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - Fuege folgend Zeilen am Ende der Datei \"/etc/manpath.config\" hinzu:" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - MANDATORY_MANPATH /usr/local/mysql/man /var/cache/man" >> ${logdir}/main.log + echo "## - MANPATH_MAP /usr/local/mysql/bin /usr/local/mysql/man" >> ${logdir}/main.log + echo "## - MANPATH_MAP /usr/local/mysql/bin /usr/local/mysql/man" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo >> /etc/manpath.config echo "MANDATORY_MANPATH /usr/local/mysql/man /var/cache/man" >> /etc/manpath.config echo "MANPATH_MAP /usr/local/mysql/bin /usr/local/mysql/man" >> /etc/manpath.config @@ -1131,6 +1323,14 @@ if [ -f /etc/manpath.config ];then fi elif [ -f /etc/man.conf];then if ! grep /opt/apache2/man /etc/man.conf > /dev/null 2<&1 ; then + echo "## - Konfiguriere Manpages" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - Fuege folgend Zeilen am Ende der Datei \"/etc/man.conf\" hinzu:" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "## - MANPATH /opt/mysql/man /var/cache/man" >> ${logdir}/main.log + echo "## - MANPATH_MAP /opt/mysql/bin /opt/apache2/man" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo >> /etc/man.conf echo "MANPATH /opt/mysql/man /var/cache/man" >> /etc/man.conf echo "MANPATH_MAP /opt/mysql/bin /opt/apache2/man" >> /etc/man.conf @@ -1151,6 +1351,8 @@ if $SYMLINK_INSTALL_DIR ; then echononl "Entferne vorhandenen Symlink `dirname $MYSQL_INSTALL_DIR`/mysql.." if [[ -h "$(dirname $MYSQL_INSTALL_DIR)/mysql" ]]; then echo "" >> ${logdir}/main.log + echo "## - Entferne vorhandenen Symlink `dirname $MYSQL_INSTALL_DIR`/mysql" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "rm \"$(dirname $MYSQL_INSTALL_DIR)/mysql\"" >> ${logdir}/main.log rm "$(dirname $MYSQL_INSTALL_DIR)/mysql" >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1166,6 +1368,8 @@ if $SYMLINK_INSTALL_DIR ; then echononl "Verschiebe Verzeichnis '$(dirname $MYSQL_INSTALL_DIR)/mysql' ..." if [ -d "$(dirname $MYSQL_INSTALL_DIR)/mysql" ]; then echo "" >> ${logdir}/main.log + echo "## - Verschiebe Verzeichnis '$(dirname $MYSQL_INSTALL_DIR)/mysql'" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "mv \"$(dirname $MYSQL_INSTALL_DIR)/mysql)\" \"$(dirname $MYSQL_INSTALL_DIR)/mysql.$(date +"%Y%m%d-%H%M")" \ >> ${logdir}/main.log mv "$(dirname $MYSQL_INSTALL_DIR)/mysql" "$(dirname $MYSQL_INSTALL_DIR)/mysql.$(date +"%Y%m%d-%H%M")" \ @@ -1182,6 +1386,8 @@ if $SYMLINK_INSTALL_DIR ; then echononl "Erstelle Symlink $(dirname $MYSQL_INSTALL_DIR)/mysql --> $MYSQL_INSTALL_DIR" echo "" >> ${logdir}/main.log + echo "## - Erstelle Symlink $(dirname $MYSQL_INSTALL_DIR)/mysql --> $MYSQL_INSTALL_DIR" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "ln -s \"$(basename $MYSQL_INSTALL_DIR)\" \"$(dirname $MYSQL_INSTALL_DIR)/mysql\"" >> ${logdir}/main.log ln -s "$(basename $MYSQL_INSTALL_DIR)" "$(dirname $MYSQL_INSTALL_DIR)/mysql" >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1199,6 +1405,8 @@ if $SYMLINK_DATA_DIR ; then if [ -h "$(dirname $MYSQL_DATA_DIR)/mysql" ]; then echononl "Entferne vorhandenen Symlink '$(dirname $MYSQL_DATA_DIR)/mysql'.." echo "" >> ${logdir}/main.log + echo "## - Entferne vorhandenen Symlink '$(dirname $MYSQL_DATA_DIR)/mysql'" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "rm $(dirname $MYSQL_DATA_DIR)/mysql" >> ${logdir}/main.log rm $(dirname $MYSQL_DATA_DIR)/mysql >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1212,6 +1420,8 @@ if $SYMLINK_DATA_DIR ; then if [ -d "$(dirname $MYSQL_DATA_DIR)/mysql" ]; then echononl "Verschiebe Verzeichnis '$(dirname $MYSQL_DATA_DIR)/mysql' ..." echo "" >> ${logdir}/main.log + echo "## - Verschiebe Verzeichnis '$(dirname $MYSQL_DATA_DIR)/mysql'" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "mv \"$(dirname $MYSQL_DATA_DIR)/mysql\" \"$(dirname $MYSQL_DATA_DIR)/mysql.$(date +"%Y%m%d-%H%M")" \ >> ${logdir}/main.log mv "$(dirname $MYSQL_DATA_DIR)/mysql" "$(dirname $MYSQL_DATA_DIR)/mysql.$(date +"%Y%m%d-%H%M")" \ @@ -1226,6 +1436,8 @@ if $SYMLINK_DATA_DIR ; then echononl "Erstelle Symlink `dirname $MYSQL_DATA_DIR`/mysql --> $MYSQL_DATA_DIR" echo "" >> ${logdir}/main.log + echo "## - Erstelle Symlink `dirname $MYSQL_DATA_DIR`/mysql --> $MYSQL_DATA_DIR" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "ln -s \"$(basename $MYSQL_DATA_DIR)\" \"$(dirname $MYSQL_DATA_DIR)/mysql\"" >> ${logdir}/main.log ln -s "$(basename $MYSQL_DATA_DIR)" "$(dirname $MYSQL_DATA_DIR)/mysql" >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1242,6 +1454,8 @@ if $SYMLINK_INITSCRIPT ; then if [ -h "/etc/init.d/mysql.server" ]; then echononl "Entferne vorhandenen Symlink \"/etc/init.d/mysql.server\".." echo "" >> ${logdir}/main.log + echo "## - Entferne vorhandenen Symlink \"/etc/init.d/mysql.server\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "rm /etc/init.d/mysql.server" >> ${logdir}/main.log rm /etc/init.d/mysql.server >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1255,6 +1469,8 @@ if $SYMLINK_INITSCRIPT ; then if [ -f "/etc/init.d/mysql.server" ]; then echononl "Entferne vorhandenen Datei \"/etc/init.d/mysql.server\".." echo "" >> ${logdir}/main.log + echo "## - Entferne vorhandenen Datei \"/etc/init.d/mysql.server\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "rm /etc/init.d/mysql.server" >> ${logdir}/main.log rm /etc/init.d/mysql.server >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1268,7 +1484,8 @@ if $SYMLINK_INITSCRIPT ; then echononl "Erstelle Symlink \"/etc/init.d/mysql.server\".." echo "" >> ${logdir}/main.log - echo "ln -s $MYSQL_INSTALL_DIR/support-files/mysql.server /etc/init.d/mysql.server" >> ${logdir}/main.log + echo "## - Erstelle Symlink \"/etc/init.d/mysql.server\"" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "ln -s \"$(dirname $MYSQL_INSTALL_DIR)/mysql/support-files/mysql.server\" \"/etc/init.d/mysql.server\"" >> ${logdir}/main.log ln -s "$(dirname $MYSQL_INSTALL_DIR)/mysql/support-files/mysql.server" /etc/init.d/mysql.server >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1280,6 +1497,8 @@ if $SYMLINK_INITSCRIPT ; then echononl "Setze ulimit im Startscript.." echo "" >> ${logdir}/main.log + echo "## - Setze ulimit im Startscript" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "sed -i \"1 s/\(.*\)/\1\n\nulimit -n \\\`ulimit -Hn\\\`\n/\" /etc/init.d/mysql.server" >> ${logdir}/main.log sed -i "1 s/\(.*\)/\1\n\nulimit -n \`ulimit -Hn\`\n/" $(realpath /etc/init.d/mysql.server) >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1297,6 +1516,8 @@ if [ -f /etc/profile ]; then _mysql_bin_dir="`dirname $MYSQL_INSTALL_DIR`/mysql/bin" if ! grep -e "PATH=.*$_mysql_bin_dir" /etc/profile > /dev/null 2<&1 ; then echo "" >> ${logdir}/main.log + echo "## - Füge `dirname $MYSQL_INSTALL_DIR`/mysql/bin zur PATH Variable hinzu" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "perl -i -n -p -e \"s#^([ ]*export[ ]*PATH.*$)#check_dir=\$_mysql_bin_dir\nif [ -d \\\"\\\\\\\$check_dir\\\" ];then\n PATH=\\\\\\\${check_dir}:\\\\\\\$PATH\nfi\n\n\1#\" /etc/profile" >> ${logdir}/main.log 2<&1 perl -i -n -p -e "s#^([ ]*export[ ]*PATH.*$)#check_dir=$_mysql_bin_dir\nif [ -d \"\\\$check_dir\" ];then\n PATH=\\\${check_dir}:\\\$PATH\nfi\n\n\1#" /etc/profile >> ${logdir}/main.log 2<&1 if [ "$?" = "0" ]; then @@ -1319,6 +1540,13 @@ fi echo echononl "Erstelle Konfigurationsdatei /etc/ld.so.conf.d/mysql.conf.." +echo "" >> ${logdir}/main.log +echo "## - Erstelle Konfigurationsdatei /etc/ld.so.conf.d/mysql.conf" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "cat << EOF >/etc/ld.so.conf.d/mysql.conf +`dirname $MYSQL_INSTALL_DIR`/mysql/lib +EOF" >> ${logdir}/main.log + cat << EOF >/etc/ld.so.conf.d/mysql.conf `dirname $MYSQL_INSTALL_DIR`/mysql/lib EOF @@ -1331,6 +1559,8 @@ fi echononl "Erstelle symbolische Links auf Libraries (ldconfig).." echo "" >> ${logdir}/main.log +echo "## - Erstelle symbolische Links auf Libraries (ldconfig)" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "ldconfig" >> ${logdir}/main.log ldconfig >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1345,6 +1575,8 @@ echononl "Richte MySQL Systemtabellen ein.." if ! $UPDATE_MYSQL ; then cd $MYSQL_INSTALL_DIR echo "" >> ${logdir}/main.log + echo "## - Richte MySQL Systemtabellen ein" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log echo "./bin/mysqld --initialize-insecure \ " >> ${logdir}/main.log echo " --user=$MYSQL_USER \ " >> ${logdir}/main.log echo " --basedir=$MYSQL_INSTALL_DIR \ " >> ${logdir}/main.log @@ -1371,16 +1603,22 @@ fi echononl "Create directory \"mysql-files\".." cd $MYSQL_INSTALL_DIR echo "" >> ${logdir}/main.log -echo "mkdir mysql-files" >> ${logdir}/main.log -mkdir mysql-files >> ${logdir}/main.log 2>&1 +echo "## - Create directory \"mysql-files\"" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "cd $MYSQL_INSTALL_DIR" >> ${logdir}/main.log +echo "mkdir ${MYSQL_INSTALL_DIR}/mysql-files" >> ${logdir}/main.log +mkdir ${MYSQL_INSTALL_DIR}/mysql-files >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok else echo_failed fi -echononl "Change rights (770) to directory \"mysql-files\".." -echo "chmod 770 mysql-files" >> ${logdir}/main.log +echononl "Change permissions (770) to directory \"mysql-files\".." +echo "" >> ${logdir}/main.log +echo "## - Change permissions (770) to directory \"mysql-files\"" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "chmod 770 ${MYSQL_INSTALL_DIR}/mysql-files" >> ${logdir}/main.log chmod 770 ${MYSQL_INSTALL_DIR}/mysql-files >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok @@ -1388,8 +1626,11 @@ else echo_failed fi -echononl "Change owner ($MYSQL_USER) of directory \"mysql-files\".." -echo "chown $MYSQL_USER mysql-files" >> ${logdir}/main.log +echononl "Change owner ($MYSQL_USER) of directory 'mysql-files'.." +echo "" >> ${logdir}/main.log +echo "## - Change owner ($MYSQL_USER) of directory 'mysql-files'" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "chown $MYSQL_USER ${MYSQL_INSTALL_DIR}/mysql-files" >> ${logdir}/main.log chown $MYSQL_USER ${MYSQL_INSTALL_DIR}/mysql-files >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok @@ -1398,17 +1639,23 @@ else fi echononl "Generate MySQL SSL Certificate and RSA Key.." +echo "" >> ${logdir}/main.log +echo "## - Generate MySQL SSL Certificate and RSA Key" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log +echo "cd $MYSQL_INSTALL_DIR" >> ${logdir}/main.log cd $MYSQL_INSTALL_DIR -echo "bin/mysql_ssl_rsa_setup --datadir=$MYSQL_DATA_DIR .." >> ${logdir}/main.log -bin/mysql_ssl_rsa_setup --datadir=$MYSQL_DATA_DIR >> ${logdir}/main.log 2>&1 +echo "${MYSQL_INSTALL_DIR}/bin/mysql_ssl_rsa_setup --datadir=$MYSQL_DATA_DIR .." >> ${logdir}/main.log +${MYSQL_INSTALL_DIR}/bin/mysql_ssl_rsa_setup --datadir=$MYSQL_DATA_DIR >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then echo_ok else echo_failed fi -echononl "Setze Besitzer/Gruppe für das Datenbankverzeichnis.." +echononl "Setze Besitzer/Gruppe für das Datenbankverzeichnis.." echo "" >> ${logdir}/main.log +echo "## - Setze Besitzer/Gruppe für das Datenbankverzeichnis" >> ${logdir}/main.log +echo "## -" >> ${logdir}/main.log echo "chown -R ${MYSQL_USER}:$MYSQL_GROUP $MYSQL_DATA_DIR" >> ${logdir}/main.log chown -R ${MYSQL_USER}:$MYSQL_GROUP $MYSQL_DATA_DIR >> ${logdir}/main.log 2>&1 if [ "$?" = "0" ]; then @@ -1419,10 +1666,12 @@ else fi -echononl "Sichere Konfigurationsdatei.." +echononl "Sichere Konfigurationsdatei 'my.cnf'.." if [ -f ${MYSQL_INSTALL_DIR}/my.cnf ]; then echo "" >> ${logdir}/main.log - echo "${MYSQL_INSTALL_DIR}/my.cnf ${MYSQL_INSTALL_DIR}" >> ${logdir}/main.log + echo "## - Sichere Konfigurationsdatei 'my.cnf'" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "mv ${MYSQL_INSTALL_DIR}/my.cnf ${MYSQL_INSTALL_DIR}/my.cnf.ORIG" >> ${logdir}/main.log mv ${MYSQL_INSTALL_DIR}/my.cnf ${MYSQL_INSTALL_DIR}/my.cnf.ORIG if [ "$?" = "0" ]; then echo_ok @@ -1437,9 +1686,11 @@ fi _new_cnf_needed=false if $UPDATE_MYSQL ; then echononl "Copy 'my.cnf from old installation to the new one.." - echo "" >> ${logdir}/main.log - echo "cp -a \"$(realpath ${MYSQL_CUR_INSTALL_DIR}/my.cnf)\" \"${MYSQL_INSTALL_DIR}/my.cnf\"" >> ${logdir}/main.log if [[ -f "${MYSQL_CUR_INSTALL_DIR}/my.cnf" ]] ; then + echo "" >> ${logdir}/main.log + echo "## - Copy 'my.cnf from old installation to the new one" >> ${logdir}/main.log + echo "## -" >> ${logdir}/main.log + echo "cp -a \"$(realpath ${MYSQL_CUR_INSTALL_DIR}/my.cnf)\" \"${MYSQL_INSTALL_DIR}/my.cnf\"" >> ${logdir}/main.log cp -a "$(realpath ${MYSQL_CUR_INSTALL_DIR}/my.cnf)" "${MYSQL_INSTALL_DIR}/my.cnf" >> ${logdir}/main.log if [ "$?" = "0" ]; then echo_ok