You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-08-01 06:46:55 +03:00
merge
This commit is contained in:
@ -63,10 +63,18 @@ if [ $cloud = "amazon-ec2" ] || [ $cloud = "amazon-vpc" ]; then
|
||||
if [ $module = "pm" ]; then
|
||||
if test -f $COLUMNSTORE_INSTALL_DIR/local/etc/pm1/fstab ; then
|
||||
echo "Setup fstab on Module"
|
||||
touch /etc/fstab
|
||||
rm -f /etc/fstab.columnstoreSave
|
||||
cp /etc/fstab /etc/fstab.columnstoreSave
|
||||
cat $COLUMNSTORE_INSTALL_DIR/local/etc/pm1/fstab >> /etc/fstab
|
||||
if [ $user = "root" ]; then
|
||||
touch /etc/fstab
|
||||
rm -f /etc/fstab.columnstoreSave
|
||||
cp /etc/fstab /etc/fstab.columnstoreSave
|
||||
cat $COLUMNSTORE_INSTALL_DIR/local/etc/pm1/fstab >> /etc/fstab
|
||||
else
|
||||
sudo touch /etc/fstab
|
||||
sudo chmod 666 /etc/fstab
|
||||
sudo rm -f /etc/fstab.columnstoreSave
|
||||
sudo cp /etc/fstab /etc/fstab.columnstoreSave
|
||||
sudo cat $COLUMNSTORE_INSTALL_DIR/local/etc/pm1/fstab >> /etc/fstab
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@ -85,8 +93,13 @@ if [ $module = "um" ]; then
|
||||
echo "Setup UM Volume Mount"
|
||||
device=`$COLUMNSTORE_INSTALL_DIR/bin/getConfig Installation UMVolumeDeviceName$mid`
|
||||
mkdir -p $COLUMNSTORE_INSTALL_DIR/mysql/db > /dev/null 2>&1
|
||||
mount $device $COLUMNSTORE_INSTALL_DIR/mysql/db -t ext2 -o noatime,nodiratime,noauto
|
||||
chown mysql:mysql -R $COLUMNSTORE_INSTALL_DIR/mysql > /dev/null 2>&1
|
||||
if [ $user = "root" ]; then
|
||||
mount $device $COLUMNSTORE_INSTALL_DIR/mysql/db -t ext2 -o noatime,nodiratime,noauto
|
||||
chown mysql:mysql -R $COLUMNSTORE_INSTALL_DIR/mysql > /dev/null 2>&1
|
||||
else
|
||||
sudo mount $device $COLUMNSTORE_INSTALL_DIR/mysql/db -t ext2 -o noatime,nodiratime,noauto,user
|
||||
sudo chown $user:$user -R $COLUMNSTORE_INSTALL_DIR/mysql > /dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
@ -148,18 +161,16 @@ if [ $module = "um" ] || ( [ $module = "pm" ] && [ $PMwithUM = "y" ] ) || [ $Ser
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $user == "root" ]; then
|
||||
$COLUMNSTORE_INSTALL_DIR/bin/syslogSetup.sh check > /tmp/syslogSetup-check.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
# try setup again
|
||||
$COLUMNSTORE_INSTALL_DIR/bin/syslogSetup.sh install > /tmp/syslogSetup-install.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "WARNING: syslogSetup.sh check failed: check /tmp/syslogSetup-check.log"
|
||||
exit 2
|
||||
fi
|
||||
fi
|
||||
$COLUMNSTORE_INSTALL_DIR/bin/syslogSetup.sh check > /tmp/syslogSetup-check.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
# try setup again
|
||||
$COLUMNSTORE_INSTALL_DIR/bin/syslogSetup.sh install > /tmp/syslogSetup-install.log 2>&1
|
||||
if [ $? -ne 0 ]; then
|
||||
echo "WARNING: syslogSetup.sh check failed: check /tmp/syslogSetup-check.log"
|
||||
exit 2
|
||||
fi
|
||||
fi
|
||||
|
||||
|
||||
#setup rc.local
|
||||
if [ -f /etc/rc.d ]; then
|
||||
RCFILE=/etc/rc.d/rc.local
|
||||
@ -168,9 +179,40 @@ else
|
||||
fi
|
||||
touch $RCFILE
|
||||
|
||||
echo "add deadline to rc.local"
|
||||
if [ $module = "um" ]; then
|
||||
if [ $user = "root" ]; then
|
||||
echo "for scsi_dev in \`mount | awk '/mnt\\/tmp/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
echo "done" >> $RCFILE
|
||||
else
|
||||
sudo echo "for scsi_dev in \`mount | awk '/mnt\\/tmp/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
sudo echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
sudo echo "done" >> $RCFILE
|
||||
fi
|
||||
else
|
||||
if [ $user = "root" ]; then
|
||||
echo "for scsi_dev in \`mount | awk '/mnt\\/tmp/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
echo "done" >> $RCFILE
|
||||
|
||||
echo "for scsi_dev in \`mount | awk '/columnstore\\/data/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
echo "done" >> $RCFILE
|
||||
else
|
||||
sudo echo "for scsi_dev in \`mount | awk '/mnt\\/tmp/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
sudo echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
sudo echo "done" >> $RCFILE
|
||||
|
||||
sudo echo "for scsi_dev in \`mount | awk '/columnstore\\/data/ {print $1}' | awk -F/ '{print $3}' | sed 's/[0-9]*$//'\`; do" >> $RCFILE
|
||||
sudo echo "echo deadline > /sys/block/$scsi_dev/queue/scheduler" >> $RCFILE
|
||||
sudo echo "done" >> $RCFILE
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $user != "root" ]; then
|
||||
echo "uncomment runuser in rc.local"
|
||||
sed -i -e 's/#MCS//g' /etc/rc.d/rc.local >/dev/null 2>&1
|
||||
sudo sed -i -e 's/#sudo runuser/sudo runuser/g' $RCFILE >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
echo "!!!Module Installation Successfully Completed!!!"
|
||||
|
@ -8,6 +8,10 @@ prefix=/usr/local
|
||||
installdir=$prefix/mariadb/columnstore
|
||||
rpmmode=install
|
||||
user=`whoami 2>/dev/null`
|
||||
SUDO=" "
|
||||
if [ $user != "root" ]; then
|
||||
SUDO="sudo "
|
||||
fi
|
||||
|
||||
quiet=0
|
||||
|
||||
@ -89,53 +93,53 @@ if [ -f libstdc++.so.6.0.14 ]; then
|
||||
fi
|
||||
|
||||
# softlink for libperl.sp, used by cplogger
|
||||
ln -s /usr/lib64/perl5/CORE/libperl.so /usr/lib64/libperl.so >/dev/null 2>&1
|
||||
$SUDO ln -s /usr/lib64/perl5/CORE/libperl.so /usr/lib64/libperl.so >/dev/null 2>&1
|
||||
|
||||
#setup profile files
|
||||
profileFileAlias=/etc/profile.d/columnstoreAlias.sh
|
||||
profileFileEnv=/etc/profile.d/columnstoreEnv.sh
|
||||
|
||||
if [ $installdir != "/usr/local/mariadb/columnstore" ]; then
|
||||
sed -i -e s@/usr/local/mariadb/columnstore@$installdir@g $installdir/bin/columnstoreAlias
|
||||
fi
|
||||
|
||||
if [ $user != "root" ]; then
|
||||
profileFile=$prefix/.bash_profile
|
||||
|
||||
if [ ! -f ${profileFile}_backup ]; then
|
||||
cp $profileFile ${profileFile}_backup
|
||||
fi
|
||||
|
||||
egrep -qs 'MariaDB Columnstore Non-Root Environment Variables' ${profileFile}
|
||||
sudo rm -f $profileFileEnv
|
||||
sudo rm -f $profileFileAlias
|
||||
|
||||
sudo touch $profileFileEnv
|
||||
sudo chmod 666 $profileFileEnv
|
||||
egrep -qs 'MariaDB Columnstore Non-Root' ${profileFileEnv}
|
||||
rc1=$?
|
||||
if [ $rc1 -ne 0 ]; then
|
||||
echo " " >> ${profileFile}
|
||||
echo "# MariaDB Columnstore Non-Root Environment Variables" >> ${profileFile}
|
||||
echo "export COLUMNSTORE_INSTALL_DIR=$COLUMNSTORE_INSTALL_DIR" >> ${profileFile}
|
||||
echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$COLUMNSTORE_INSTALL_DIR/lib:$COLUMNSTORE_INSTALL_DIR/mysql/lib" >> ${profileFile}
|
||||
sudo echo " " >> ${profileFileEnv}
|
||||
sudo echo "# MariaDB Columnstore Non-Root Environment Variables" >> ${profileFileEnv}
|
||||
sudo echo "export COLUMNSTORE_INSTALL_DIR=$COLUMNSTORE_INSTALL_DIR" >> ${profileFileEnv}
|
||||
sudo echo "export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$COLUMNSTORE_INSTALL_DIR/lib:$COLUMNSTORE_INSTALL_DIR/mysql/lib" >> ${profileFileEnv}
|
||||
. ${profileFileEnv}
|
||||
fi
|
||||
|
||||
egrep -qs 'MariaDB Columnstore Non-Root Alias Variables' ${profileFile}
|
||||
rc1=$?
|
||||
if [ $rc1 -ne 0 ]; then
|
||||
echo " " >> ${profileFile}
|
||||
echo "# MariaDB Columnstore Non-Root Alias Variables" >> ${profileFile}
|
||||
cat $installdir/bin/columnstoreAlias >> ${profileFile}
|
||||
fi
|
||||
|
||||
#source the file
|
||||
. ${profileFile}
|
||||
sudo /bin/cp -f $installdir/bin/columnstoreAlias $profileFileAlias
|
||||
sudo chmod 666 $profileFileAlias
|
||||
else
|
||||
/bin/cp -f $installdir/bin/columnstoreAlias /etc/profile.d/columnstoreAlias.sh
|
||||
chmod 644 /etc/profile.d/columnstoreAlias.sh >/dev/null 2>&1
|
||||
/bin/cp -f $installdir/bin/columnstoreAlias $profileFileAlias
|
||||
chmod 644 $profileFileAlias
|
||||
fi
|
||||
|
||||
cd /
|
||||
|
||||
test -d /var/log/mariadb || mkdir /var/log/mariadb >/dev/null 2>&1
|
||||
test -d /var/log/mariadb/columnstore || mkdir /var/log/mariadb/columnstore >/dev/null 2>&1
|
||||
test -d /var/log/mariadb || $SUDO mkdir /var/log/mariadb >/dev/null 2>&1
|
||||
test -d /var/log/mariadb/columnstore || $SUDO mkdir /var/log/mariadb/columnstore >/dev/null 2>&1
|
||||
|
||||
if [ $user != "root" ]; then
|
||||
$SUDO chmod -R 777 /var/log/mariadb >/dev/null 2>&1
|
||||
$SUDO chown -R $user:$user /var/log/mariadb >/dev/null 2>&1
|
||||
fi
|
||||
|
||||
test -d /var/log/mariadb/columnstore/archive || mkdir /var/log/mariadb/columnstore/archive >/dev/null 2>&1
|
||||
test -d /var/log/mariadb/columnstore/corefiles || mkdir /var/log/mariadb/columnstore/corefiles >/dev/null 2>&1
|
||||
test -d /var/log/mariadb/columnstore/trace || mkdir /var/log/mariadb/columnstore/trace >/dev/null 2>&1
|
||||
test -h /var/log/mariadb/columnstore/data && rm -f /var/log/mariadb/columnstore/data
|
||||
chmod 755 /var/log/mariadb/columnstore/corefiles > /dev/null 2>&1
|
||||
|
||||
# make sure trace dir is world-writable and sticky
|
||||
test -d $installdir/data || mkdir $installdir/data
|
||||
test -d $installdir/data1 || mkdir $installdir/data1
|
||||
@ -158,8 +162,13 @@ rm -f $installdir/data/bulk/tmpjob/* >/dev/null 2>&1
|
||||
#create columnstore temp file directory
|
||||
mkdir -p /tmp/columnstore_tmp_files >/dev/null 2>&1
|
||||
|
||||
#setup core file directory and link
|
||||
mkdir /var/log/mariadb/columnstore/corefiles > /dev/null 2>&1
|
||||
chmod 777 /var/log/mariadb/columnstore/corefiles > /dev/null 2>&1
|
||||
|
||||
#create mount directories
|
||||
mkdir /mnt/tmp > /dev/null 2>&1
|
||||
mkdir /var/log/mariadb/columnstore/data/archive > /dev/null 2>&1
|
||||
|
||||
# remove mysql archive log
|
||||
test -d $installdir/mysql/db || mkdir -p $installdir/mysql/db
|
||||
@ -168,6 +177,7 @@ rm -rf $installdir/mysql/db/columnstore_log_archive > /dev/null 2>&1
|
||||
# delete Columnstore shared memory segments
|
||||
$installdir/bin/clearShm > /dev/null 2>&1
|
||||
|
||||
systemctl=`which systemctl 2>/dev/null`
|
||||
|
||||
#check and create rc.local file if missing
|
||||
if [ -f /etc/rc.d ]; then
|
||||
@ -180,16 +190,22 @@ if [ $user = "root" ]; then
|
||||
touch $RCFILE
|
||||
chmod +x $RCFILE
|
||||
else
|
||||
printf '%s\n' '#!/bin/bash' "#" | tee -a $RCFILE > /dev/null 2>&1
|
||||
$SUDO touch $RCFILE
|
||||
$SUDO chmod 777 $RCFILE
|
||||
$SUDO printf '%s\n' '#!/bin/bash' "#" | $SUDO tee -a $RCFILE > /dev/null 2>&1
|
||||
|
||||
if [ -n "$systemctl" ]; then
|
||||
$SUDO systemctl start rc-local >/dev/null 2>&1
|
||||
$SUDO systemctl enable rc-local >/dev/null 2>&1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ $user = "root" ]; then
|
||||
#setup the columnstore service script
|
||||
rm -f /etc/init.d/columnstore >/dev/null 2>&1
|
||||
rm -f /etc/init.d/mysql-Columnstore >/dev/null 2>&1
|
||||
rm -f /etc/default/columnstore
|
||||
|
||||
systemctl=`which systemctl 2>/dev/null`
|
||||
#setup the columnstore service script
|
||||
rm -f /etc/init.d/columnstore >/dev/null 2>&1
|
||||
rm -f /etc/init.d/mysql-Columnstore >/dev/null 2>&1
|
||||
|
||||
if [ $user = "root" ]; then
|
||||
if [ -n "$systemctl" ]; then
|
||||
|
||||
chmod 644 $installdir/bin/columnstore.service
|
||||
@ -219,46 +235,30 @@ fi
|
||||
|
||||
if [ $user = "root" ]; then
|
||||
$installdir/bin/syslogSetup.sh install > /tmp/syslog_install.log 2>&1
|
||||
|
||||
#check if MariaDB Columnstore system logging was setup
|
||||
cat /tmp/syslog_install.log | grep 'No System Logging' >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
cat /tmp/syslog_install.log
|
||||
fi
|
||||
rm -f /etc/default/columnstore
|
||||
else
|
||||
sed -i -e s@/usr/local/mariadb/columnstore@$installdir@g $installdir/bin/columnstore.def
|
||||
sed -i -e s@/usr/local/mariadb/columnstore@$installdir@g $installdir/bin/columnstoreLogRotate
|
||||
|
||||
cp $installdir/bin/columnstore.def /etc/default/columnstore
|
||||
$SUDO cp $installdir/bin/columnstore.def /etc/default/columnstore
|
||||
|
||||
sed -i -e s@prefix=/home/guest@prefix=$prefix@g $installdir/bin/*
|
||||
|
||||
chown $user:$user $installdir/etc/Columnstore.xml
|
||||
|
||||
echo ""
|
||||
echo "NOTE: For non-root install, you will need to run the following command as root user to"
|
||||
echo " setup the MariaDB ColumnStore System Logging"
|
||||
echo ""
|
||||
echo " $installdir/bin/syslogSetup.sh --installdir=$installdir --user=$user install"
|
||||
echo ""
|
||||
$SUDO chmod 777 /tmp
|
||||
$installdir/bin/syslogSetup.sh --installdir=$installdir install > /tmp/syslog_install.log 2>&1
|
||||
$SUDO chown $user:$user $installdir/etc/Columnstore.xml
|
||||
$SUDO mkdir /var/lock/subsys > /dev/null 2>&1
|
||||
$SUDO chmod 777 /var/lock/subsys > /dev/null 2>&1
|
||||
$SUDO rm -f /var/lock/subsys/mysql-Columnstore
|
||||
$SUDO chmod 666 /etc/fstab
|
||||
fi
|
||||
|
||||
#determine lock file directory
|
||||
|
||||
# Lock directory for root user
|
||||
lockdir='/var/lock/subsys'
|
||||
if [ $user != "root" ];then
|
||||
# Lock directory for non-root user
|
||||
lockdir=$prefix/.lock
|
||||
#check if MariaDB Columnstore system logging was setup
|
||||
cat /tmp/syslog_install.log | grep 'No System Logging' >/dev/null 2>&1
|
||||
if [ $? -eq 0 ]; then
|
||||
cat /tmp/syslog_install.log
|
||||
fi
|
||||
|
||||
$installdir/bin/setConfig -d Installation LockFileDirectory $lockdir
|
||||
|
||||
mkdir $lockdir >/dev/null 2>&1
|
||||
|
||||
rm -f $lockdir/mysql-Columnstore
|
||||
rm -f $lockdir/columnstore
|
||||
|
||||
#backup copy of Alarm Config File
|
||||
/bin/cp -f $installdir/etc/AlarmConfig.xml $installdir/etc/AlarmConfig.xml.installSave > /dev/null 2>&1
|
||||
|
||||
@ -275,7 +275,6 @@ if [ $user = "root" ]; then
|
||||
else
|
||||
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$installdir/lib $installdir/bin/cplogger -i 19 "***** MariaDB Columnstore Installed *****"
|
||||
fi
|
||||
|
||||
#setup hadoop
|
||||
hadoop=`which hadoop 2>/dev/null`
|
||||
if [ -z "$hadoop" ]; then
|
||||
|
Reference in New Issue
Block a user