#!/bin/bash --posix

set -u

error()
{
        echo >&2 $*
        exit 1
}

sudo systemctl stop mysql || error "sudo systemctl stop mysql"
sudo mv -i /var/lib/mysql /var/lib/mysql-mariadb-10.0 || error "sudo mv -i /var/lib/mysql /var/lib/mysql-mariadb-10.0"
sudo mv -i /var/lib/mysql-5.7 /var/lib/mysql || error "sudo mv -i /var/lib/mysql-5.7 /var/lib/mysql"
sudo mv -i /etc/mysql/debian.cnf /etc/mysql/debian-mariadb-10.0.cnf || error "sudo mv -i /etc/mysql/debian.cnf /etc/mysql/debian-mariadb-10.0.cnf"
sudo mv -i /etc/mysql/debian.cnf-5.7 /etc/mysql/debian.cnf || error "sudo mv -i /etc/mysql/debian.cnf-5.7 /etc/mysql/debian.cnf"

# download mysql-server-5.7 package (need debian-start script)
mkdir tmp
cd tmp
apt download mysql-server-5.7 || error "apt download mysql-server-5.7"
typeset -r package_deb="mysql-server-5.7*.deb"
dpkg-deb --fsys-tarfile $package_deb | tar xvf - ./etc/mysql/debian-start || error "dpkg-deb --fsys-tarfile $package_deb | tar xvf - ./etc/mysql/debian-start"
sudo mv -i /etc/mysql/debian-start /etc/mysql/debian-start-mariadb-10.0 || error "sudo mv -i /etc/mysql/debian-start /etc/mysql/debian-start-mariadb-10.0"
sudo mv -i ./etc/mysql/debian-start /etc/mysql/debian-start || error "sudo mv -i ./etc/mysql/debian-start /etc/mysql/debian-start"

sudo ln -sf /etc/mysql/mysql.cnf /etc/alternatives/my.cnf || error "sudo ln -sf /etc/mysql/mysql.cnf /etc/alternatives/my.cnf"
sudo apt install mysql-server-5.7

exit 0

# EOF
