You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-10 01:22:48 +03:00
119 lines
3.0 KiB
Bash
Executable File
119 lines
3.0 KiB
Bash
Executable File
#!/bin/bash
|
|
#
|
|
# $Id: post-mysql-install 3661 2013-06-25 22:04:33Z dhill $
|
|
#
|
|
# Post-install steps for calpont-mysql install
|
|
|
|
# check if running systemd
|
|
running_systemd() {
|
|
if [ "$(ps --no-headers -o comm 1)" == "systemd" ]; then
|
|
echo 0
|
|
else
|
|
echo 1
|
|
fi
|
|
}
|
|
|
|
# check log for error
|
|
checkForError() {
|
|
# check for password error
|
|
grep "ERROR 1045" ${tmpdir}/mysql_install.log > ${tmpdir}/error.check
|
|
if [ `cat ${tmpdir}/error.check | wc -c` -ne 0 ]; then
|
|
echo "MySQL Password file missing or incorrect, check .my.cnf file"
|
|
rm -f ${tmpdir}/error.check
|
|
# Test we are using systemd
|
|
systemctl cat mariadb.service > /dev/null 2>&1
|
|
if [ $? -eq 0 ] && [ $(running_systemd) -eq 0 ]; then
|
|
systemctl stop mariadb.service > /dev/null 2>&1
|
|
else
|
|
pkill mysqld
|
|
fi
|
|
sleep 2
|
|
exit 2;
|
|
fi
|
|
|
|
rm -f ${tmpdir}/error.check
|
|
|
|
#---------------------------------------------------------------------------
|
|
# See if engine columnstore exist
|
|
#---------------------------------------------------------------------------
|
|
echo "checking for engine columnstore..."
|
|
mysql \
|
|
--user=root \
|
|
--execute='show engines;' \
|
|
| grep -i columnstore
|
|
|
|
#
|
|
# Add compressiontype column to SYSCOLUMN if applicable
|
|
#
|
|
if [ $? -ne 0 ]; then
|
|
echo "columnstore doesn't exist"
|
|
exit 1
|
|
fi
|
|
|
|
echo "columnstore exist"
|
|
|
|
return 0;
|
|
}
|
|
|
|
rpmmode=install
|
|
tmpdir="/tmp"
|
|
|
|
for arg in "$@"; do
|
|
if [ $(expr -- "$arg" : '--rpmmode=') -eq 10 ]; then
|
|
rpmmode="$(echo $arg | awk -F= '{print $2}')"
|
|
elif [ $(expr -- "$arg" : '--tmpdir=') -eq 9 ]; then
|
|
tmpdir="$(echo $arg | awk -F= '{print $2}')"
|
|
else
|
|
echo "ignoring unknown argument: $arg" 1>&2
|
|
fi
|
|
done
|
|
|
|
# Restart in the same way that mysqld will be started normally.
|
|
# Test we are using systemd
|
|
systemctl cat mariadb.service > /dev/null 2>&1
|
|
if [ $? -eq 0 ] && [ $(running_systemd) -eq 0 ]; then
|
|
systemctl stop mariadb.service > /dev/null 2>&1
|
|
else
|
|
pkill mysqld
|
|
fi
|
|
sleep 2
|
|
export MYSQL_OPTS="--skip-grant-tables"
|
|
# Test we are using systemd
|
|
systemctl cat mariadb.service > /dev/null 2>&1
|
|
if [ $? -eq 0 ] && [ $(running_systemd) -eq 0 ]; then
|
|
systemctl start mariadb.service
|
|
else
|
|
/usr/bin/mysqld_safe --skip-grant-tables &
|
|
fi
|
|
unset MYSQL_OPTS
|
|
|
|
sleep 5
|
|
|
|
# Install various Calpont stuff...
|
|
install_mcs_mysql.sh --tmpdir=$tmpdir
|
|
checkForError
|
|
if [ $? -ne 0 ]; then
|
|
echo "ERROR: Invalid password in .my.cnf, or Columnstore plugin install missing"
|
|
# Test we are using systemd
|
|
systemctl cat mariadb.service > /dev/null 2>&1
|
|
if [ $? -eq 0 ] && [ $(running_systemd) -eq 0 ]; then
|
|
systemctl stop mariadb.service > /dev/null 2>&1
|
|
else
|
|
pkill mysqld
|
|
fi
|
|
sleep 2
|
|
exit 2;
|
|
fi
|
|
|
|
# Test we are using systemd
|
|
systemctl cat mariadb.service > /dev/null 2>&1
|
|
if [ $? -eq 0 ] && [ $(running_systemd) -eq 0 ]; then
|
|
systemctl stop mariadb.service > /dev/null 2>&1
|
|
else
|
|
pkill mysqld
|
|
fi
|
|
|
|
|
|
exit 0
|
|
|