Files
trove/integration/scripts/files/elements/ubuntu-xenial-mysql/install.d/30-mysql
Lingxian Kong c23c1b9d0c Improve image build
- Remove network-scripts package from guest agent, otherwise image
  creation will fail with network-scripts not found.
- Improve the way to install percona-xtrabackup package on Xenial to
  avoid the failure: "write error: No space left on device"

Change-Id: I6d8de1ad0f675db9635f4762cefc26169e738bbc
2019-09-02 22:58:28 +12:00

70 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
# CONTEXT: GUEST during CONSTRUCTION as ROOT
# PURPOSE: Install controller base required packages
set -e
set -o xtrace
export DEBIAN_FRONTEND=noninteractive
apt-get --allow-unauthenticated -y install mysql-client mysql-server
# Xenial provides mysql 5.7 which requires percona-xtrabackup-24
PXB_VERSION_OVERRIDE=24
#PKGS=$(apt-cache search percona-xtrabackup-${PXB_VERSION_OVERRIDE})
#if [[ "$PKGS" == *"percona-xtrabackup-$PXB_VERSION_OVERRIDE"* ]]; then
# apt-get --allow-unauthenticated -y install percona-xtrabackup-${PXB_VERSION_OVERRIDE}
#else
# # Architecture is not supported by percona website. Compile and install it
# PXB_VERSION=${PXB_VERSION_OVERRIDE:0:1}.${PXB_VERSION_OVERRIDE:1:1}
#
# apt-get --allow-unauthenticated -y install build-essential flex bison automake autoconf \
# libtool cmake libaio-dev mysql-client libncurses-dev zlib1g-dev \
# libgcrypt11-dev libev-dev libcurl4-gnutls-dev vim-common
#
# pushd /tmp
#
# git clone https://github.com/percona/percona-xtrabackup.git
# cd percona-xtrabackup
# git checkout $PXB_VERSION
#
# mkdir /tmp/boost
# cmake -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/tmp/boost -DBUILD_CONFIG=xtrabackup_release -DWITH_MAN_PAGES=OFF && make -j4
# make install
# ln -s /usr/local/xtrabackup/bin/* /usr/bin/
#
# dpkg -P build-essential automake autoconf libtool cmake
# apt-get -y clean
#
# popd
#
# rm -rf /tmp/boost /tmp/percona-xtrabackup
#fi
# NOTE(lxkong): Refer to https://www.percona.com/doc/percona-xtrabackup/2.4/installation/apt_repo.html
wget https://repo.percona.com/apt/percona-release_latest.$(lsb_release -sc)_all.deb
dpkg -i percona-release_latest.$(lsb_release -sc)_all.deb
apt-get update
apt-get --allow-unauthenticated -y install percona-xtrabackup-${PXB_VERSION_OVERRIDE}
cat >/etc/mysql/conf.d/no_perf_schema.cnf <<_EOF_
[mysqld]
performance_schema = off
show_compatibility_56 = on
_EOF_
mv /etc/mysql/my.cnf.fallback /etc/mysql/my.cnf
chown mysql:mysql /etc/mysql/my.cnf
cat >/etc/mysql/my.cnf <<_EOF_
[mysql]
!includedir /etc/mysql/conf.d/
_EOF_
if [ -e /etc/init/mysql.conf ]; then
rm -f /etc/init/mysql.conf
fi
systemctl enable mysql