Untitled
unknown
plain_text
3 years ago
3.4 kB
8
Indexable
#!/bin/bash
echo ==========================================
echo MySQL Server - Installation - v.8.0.32
echo ==========================================
fromVers="7_0_1"
toVers="7_1_0"
mainPath="/home/pi/"
boxBackupsDir="Cash360_IMS_Backup/"
backupDir="Cash360_IMS_${fromVers}_Backup"
errorLog="Error_${fromVers}_to_${toVers}.log"
correctVer='8.0.32'
oldVer=$(mysql -V)
patter="[1-9]\.[0-9]+\.[0-9]+"
mkdir -p "${mainPath}${boxBackupsDir}${backupDir}"
if [[ $oldVer =~ $patter ]]; then
oldVer=${BASH_REMATCH[0]}
fi
#echo "$oldVer"
#echo "$correctVer"
if [ "$oldVer" == "$correctVer" ]; then
echo ==========================================
echo The correct version of MySQL is already installed!
else
echo ==========================================
if mysql -V &> /dev/null
then
echo MySql version "$oldVer" needs to be replaced by MySql 8.0.32
echo Dumping all databases to DatabaseDump.sql
mysqldump -u root -pocs*360 --databases --routines --triggers cashoffice_ims > "${mainPath}${boxBackupsDir}${backupDir}/cashoffice_ims_dum_${fromVers}.sql" 2>> "${mainPath}${boxBackupsDir}${errorLog}"
echo Creating DatabaseDump.sql field
echo Uninstall Mysql
service mysql stop
DEBIAN_FRONTEND=noninteractive apt-get -y --force-yes remove --purge -qq mysql-server-5.7 mysql-client-5.7 mysql-common mysql-server-core-5.7 mysql-client-core-5.7
rm -rf /etc/mysql /var/lib/mysql /var/log/mysql
rm /etc/apt/sources.list.d/mysql.list
apt-get update
echo Finish uninstall Mysql
fi
export DEBIAN_FRONTEND="noninteractive"
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-preview select Disabled'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-server select mysql-8.0'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-tools select Enabled'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-product select Ok'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-connector-python select none'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-utilities select mysql-utilities'
debconf-set-selections <<< 'mysql-apt-config mysql-apt-config/select-workbench select none'
debconf-set-selections <<< "mysql-server mysql-server/root_password password ocs*360"
debconf-set-selections <<< "mysql-server mysql-server/root_password_again password ocs*360"
debconf-set-selections <<< 'mysql-community-server mysql-community-server/root-pass password ocs*360'
debconf-set-selections <<< 'mysql-community-server mysql-community-server/re-root-pass password ocs*360'
wget https://dev.mysql.com/get/mysql-apt-config_0.8.19-1_all.deb
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
dpkg -i mysql-apt-config_0.8.19-1_all.deb
apt-get update
apt install -y -f mysql-client=8.0.32* mysql-community-server=8.0.32* mysql-server=8.0.32*
echo Installed MySql 8.0
if mysql -V &> /dev/null
then
echo 'Please wait backed up data loading...'
mysql -uroot -pocs*360 < ${mainPath}${boxBackupsDir}${backupDir}/cashoffice_ims_dum_${fromVers}.sql
fi
if mysql -V &> /dev/null
then
echo MySQL8.0.32 Installation Completed!
else
echo Installation Fail. Check Logs
fi
fi
echo ==========================================
read -rep $"Press any key to continue..." -n1 -s
Editor is loading...