Instalação do MySQL 5.7 via Compilação e Binários

Instalação do MySQL 5.7 a partir do código-fonte no Rocky Linux 8

1. Pré-requisitos

Instale as dependências necessárias para compilar o MySQL 5.7. Isto inclui o compilador GCC, CMake e bibliotecas de desenvolvimento.

# Instalação dos pacotes de software essenciais
yum install -y gcc gcc-c++ cmake bison zlib-devel libcurl-devel libarchive ncurses-devel gnutls-devel libxml2-devel openssl-devel libevent-devel libaio-devel perl-Data-Dumper libtirpc-devel

# Nota: Para o MySQL 5.7 no Rocky 8, é necessário instalar manualmente o Boost 1.59 e o rpcsvc-proto.
# O pacote rpcsvc-proto-1.4 pode ser compilado a partir da fonte.
# Exemplo de obtenção: https://github.com/thkukuk/rpcsvc-proto/releases/download/v1.4/rpcsvc-proto-1.4.tar.gz

2. Porcesso de Compilação e Instalação

Crie um usuário de sistema dedicado e um diretório de dados com as permissões adequadas.

useradd -r -s /sbin/nologin -d /var/lib/mysql mysql
mkdir -p /var/lib/mysql
chown mysql:mysql /var/lib/mysql

Extraia o código-fonte e inicie o processo de compilação com CMake.

tar xzf mysql-5.7.33.tar.gz -C /usr/local/src/
cd /usr/local/src/mysql-5.7.33/

cmake . \
  -DCMAKE_INSTALL_PREFIX=/usr/local/mysql57 \
  -DMYSQL_DATADIR=/var/lib/mysql \
  -DSYSCONFDIR=/etc/mysql57 \
  -DMYSQL_USER=mysql \
  -DWITH_INNOBASE_STORAGE_ENGINE=1 \
  -DWITH_SSL=system \
  -DWITH_ZLIB=bundled \
  -DDEFAULT_CHARSET=utf8mb4 \
  -DDEFAULT_COLLATION=utf8mb4_general_ci \
  -DDOWNLOAD_BOOST=1 \
  -DWITH_BOOST=/usr/local/boost

make -j $(nproc)
make install

Configure a variável de ambiente PATH e inicialize o banco de dados.

echo 'export PATH=/usr/local/mysql57/bin:$PATH' > /etc/profile.d/mysql57.sh
source /etc/profile.d/mysql57.sh

mysqld --initialize-insecure --user=mysql --datadir=/var/lib/mysql

3. Configuração e Inicialização do Serviço

Crie um arquivo de serviço systemd e inicie o banco de dados.

cp /usr/local/mysql57/support-files/mysql.server /etc/init.d/mysqld57
chkconfig --add mysqld57
service mysqld57 start

Defina a senha do usuário root e teste a conexão.

mysqladmin -u root password 'senha_segura_aqui'
mysql -u root -p
show databases;
exit

Instalação do MySQL 5.7 a partir de Binários Pré-Compilados

1. Preparação do Ambiente

Baixe o pacote binário genérico e crie a estrutura de diretórios.

groupadd -r -g 306 mysql
useradd -r -g 306 -u 306 -s /sbin/nologin -d /var/lib/mysql mysql
mkdir -p /var/lib/mysql
chown mysql:mysql /var/lib/mysql

2. Instalação do Binário

Extraia o pacote, crie um link simbólico e ajuste as permissões.

tar xzf mysql-5.7.33-linux-glibc2.12-x86_64.tar.gz -C /usr/local/
cd /usr/local/
ln -s mysql-5.7.33-linux-glibc2.12-x86_64 mysql57
chown -R root:root /usr/local/mysql57

Crie um arquivo de configuração mínimo.

mkdir -p /etc/mysql57
cat > /etc/mysql57/my.cnf <<EOF
[mysqld]
user = mysql
port = 3306
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
pid-file = /var/run/mysqld/mysqld.pid
log-error = /var/log/mysql57.log
skip_name_resolve
EOF

Inicialize o banco de dados e copie o script de inicialização.

mysqld --defaults-file=/etc/mysql57/my.cnf --initialize-insecure --user=mysql
cp /usr/local/mysql57/support-files/mysql.server /etc/init.d/mysqld57
chmod +x /etc/init.d/mysqld57
service mysqld57 start

Instalação Binária do MariaDB 10.4.25

1. Preparação e Extração

Instale as dependências necessárias e prepare o diretório de dados.

yum install -y libaio numactl-libs libncurses*
useradd -r -s /sbin/nologin mysql
mkdir -p /var/lib/mysql
chown mysql:mysql /var/lib/mysql

Extraia o pacote binário e configure um link simbólico.

tar xzf mariadb-10.4.25-linux-systemd-x86_64.tar.gz -C /usr/local/
ln -s /usr/local/mariadb-10.4.25-linux-systemd-x86_64 /usr/local/mariadb
chown -R root:root /usr/local/mariadb

2. Configuração e Inicialização

Crie o arquivo de configuração e inicialize as tabelas do sistema.

cat > /etc/mysql/mariadb.cnf <<EOF
[mysqld]
datadir = /var/lib/mysql
socket = /var/lib/mysql/mysql.sock
symbolic-links = 0
skip_name_resolve

[mysqld_safe]
log_error = /var/log/mariadb.log
pid_file = /var/run/mariadb/mariadb.pid
EOF

/usr/local/mariadb/scripts/mysql_install_db --user=mysql --datadir=/var/lib/mysql

Habilite e inicie o serviço usando systemd.

cp /usr/local/mariadb/support-files/systemd/mariadb.service /usr/lib/systemd/system/
systemctl daemon-reload
systemctl enable --now mariadb.service

Verifique a instalação conectando-se ao banco de dados.

mysql
show databases;
exit

Tags: MySQL5.7 MariaDB10.4 Linux CMake binário

Publicado em 7-7 18:15