Percona Installation

Prerequisites

yum install libaio-devel cmake ncurses-devel

Installation
Download the latest version of the software:

cd /extra/src
wget http://www.percona.com/redir/downloads/Percona-Server-5.5/LATEST/source/Percona-Server-5.5.32-rel31.0.tar.gz
tar zxf Percona-Server-5.5.32-rel31.0.tar.gz
cd Percona-Server-5.5.32-rel31.0

Configure it:

cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_CONFIG=mysql_release -DFEATURE_SET=community -DWITH_EMBEDDED_SERVER=OFF

If it makes without any errors, build and install:

make
make install

Copy the default preferences file:

cp support-files/my-medium.cnf /etc/my.cnf

Because we compiled and installed as root, we need to change the ownership on the installed files so that the mysql user can access them:

cd /usr/local/mysql
chown -R mysql .
chgrp -R mysql .

Create the MySQL data directory and initialize the user tables. In order to get this to run with 5.1.29-rc, I had to edit /etc/my.cnf and comment out the skip-federated line.

/usr/local/mysql/scripts/mysql_install_db --user=mysql

While most of the installation can be owned by root, the data directory must be owned by the mysql user:

chown -R root .
mkdir var
chown -R mysql var

To test out the installation, start up the MySQL server:

bin/mysqld_safe --user=mysql &

Post Install Configuration
Use the provided script to assign a password to the root account as well as removing anonymous access and the test database:

/usr/local/mysql/bin/mysql_secure_installation

Stop the MySQL daemon:

killall mysqld

Automatic startup
We're going to use daemontools.
If you haven't already, install daemontools.

Create a directory for the MySQL service:

mkdir -m 1755 /var/service/mysql
cd /var/service/mysql

Create the /var/service/mysql/run script, making sure to change the servername:

#!/bin/sh
exec 2>&1
exec \
/usr/local/bin/setuidgid mysql \
/usr/local/mysql/bin/mysqld \
--basedir=/usr/local/mysql \
--user=mysql \
--port=3306 \
--socket=/tmp/mysql.sock

Make the script executable:

chmod 755 run

Our log script comes from John Simpson's:

mkdir -m 755 log
cd log
wget http://qmail.jms1.net/scripts/service-any-log-run
mv service-any-log-run run
chmod 755 run

Finally, add the service to daemontools by creating the symbolic link in /service

ln -s /var/service/mysql /service/mysql

Confirm that the service is running:

svstat /service/mysql /service/mysql/log

Resources
How to install Percona Server with XtraDB on FreeBSD

Recent Updates

  • 3 months 3 weeks ago
  • 3 months 3 weeks ago
  • 3 months 3 weeks ago
    php 8.x
  • 3 months 3 weeks ago
    10.6.7
  • 3 months 4 weeks ago
    Drop Centos 5/6 stuff