Instalação do MySQL 5.5.40 em Servidor Linux na Nuvem

Para realizar a instalação do MySQL em ambientes Linux, é necessário preparar as dependências de compilação e bibliotecas do sistema:

yum groupinstall "Development Tools" -y && yum install cmake bison ncurses-devel perl -y

Após a instalação desses pacotes, o processo de compilação do MySQL ocorre sem problemas.

1. Preparação e configuração do CMake

cmake . \
  -DCMAKE_INSTALL_PREFIX=/opt/mysql-server \
  -DDEFAULT_CHARSET=utf8 \
  -DDEFAULT_COLLATION=utf8_general_ci \
  -DMYSQL_DATADIR=/mnt/dbvol/mysql \
  -DWITH_INNOBASE_STORAGE_ENGINE=ON \
  -DWITH_MYISAM_STORAGE_ENGINE=ON

O diretório base será /opt/mysql-server, o charset e collation padrão definidos como utf8, e os arquivos de dados serão armazenados em /mnt/dbvol/mysql, que corresponde a um volume de dados separado.

2. Compilação e instalação dos binários

make -j$(nproc) && make install

O parâmetro -j utiliza todos os núcleos de CPU disponíveis para acelerar a compilação. Embora seja possível exceutar configuração e compilação em uma única linha, separar as etapas facilita a identificação de erros na fase de configuração antes de iniciar o processo de build.

3. Configurações pós-instalação

# Criar grupo e usuário dedicados ao serviço
groupadd dbadmin
useradd -r -g dbadmin -s /sbin/nologin dbadmin

# Inicializar o diretório de dados
/opt/mysql-server/scripts/mysql_install_db \
  --basedir=/opt/mysql-server \
  --datadir=/mnt/dbvol/mysql \
  --user=dbadmin

# Ajustar permissões
chown -R dbadmin:dbadmin /opt/mysql-server
chown -R dbadmin:dbadmin /mnt/dbvol/mysql

# Copiar scripts de inicialização e configuração
cp /opt/mysql-server/support-files/mysql.server /etc/init.d/mysqld
cp /opt/mysql-server/support-files/my-medium.cnf /etc/my.cnf
chkconfig --add mysqld
chkconfig mysqld on

Os passos realizam: criação de um usuário de serviço sem acesso de login; inicialização do diretório de dados através do script mysql_install_db; atribuição de propriedade dos diretórios ao usuário de serviço; cópia do script de inicialização para o diretório de serviços do sistema; cópia do arquivo de configuração padrão; e registro do serviço para inicialização automática no boot.

4. Ajustes no arquivo de configuração (my.cnf)

Após concluir a configuração do sistema, edite o arquivo /etc/my.cnf na seção [mysqld]:

[mysqld]
skip-name-resolve
basedir = /opt/mysql-server
datadir = /mnt/dbvol/mysql
log-error = /opt/mysql-server/logs/mysql_error.log
pid-file = /opt/mysql-server/run/mysql.pid
user = dbadmin
tmpdir = /tmp

O parâmetro skip-name-resolve desativa a resolução de nomes DNS durante as conexões, melhorando o tempo de resposta. Os caminhos de basedir e datadir devem corresponder aos definidos no CMake. O log-error define o arquivo de registro de erros, e pid-file indica onde o arquivo de processo será criado. Caso os caminhos estejam incorretos, o daemon não conseguirá iniciar e reportará falha na criação do pid-file. O parâmetro user define o usuário responsável pela execução do serviço, e tmpdir especifica o diretório temporário.

5. Definição da senha de root

Por padrão, a conta root vem sem senha. Há duas formas de atribuí-la:

Opção A: Utilizando a ferramenta mysqladmin

/opt/mysql-server/bin/mysqladmin -u root password 'MinhaSenhaForte123'

Opção B: Alterando diretamente na tabela de usuários

/opt/mysql-server/bin/mysql -h 127.0.0.1 -u root

mysql> USE mysql;
mysql> UPDATE user SET Password = PASSWORD('MinhaSenhaForte123') WHERE User = 'root';
mysql> FLUSH PRIVILEGES;
mysql> EXIT;

A opção B atualiza a tabela de autenticação e aplica as alterações com FLUSH PRIVILEGES, recarregando as permissões sem necessidade de reiniciar o serviço.

Tags: MySQL CMake Linux yum Alibaba Cloud ECS

Publicado em 7-19 07:41