Iniciando e parando MariaDB automaticamente

Quando temos MariaDB rodando num ambiente servidor, é quase sempre desejável tê-lo iniciando automaticamente quando o servidor for ligado, que ele se mantenha rodando enquanto o servidor estiver correndo, e que seja desativado corretamente quando o servidor for desligado.

O binario atual do servidor MariaDB chama-se mysqld. Como outros binarios do MariaDB, é nomeado desta forma para preservar a compatibilidade com o MySQL.

Você tem a opção de iniciar o servidor mysql de diversas maneiras:

  1. Execute ou invoque o próprio mysqld. Um exemplo de como fazer isto é descrito em Executando MariaDB desde o diretório fonte.
  2. Use o script de inicialização mysqld_safe
  3. Use o script de inicialização mysql.server

O script mysql.server inicia mysqld mudando-se primeiramente ao diretório de instalação do MariaDB e logo chamando o mysqld_safe. Adicionando a linha de usuário apropriada ao grupo [mysqld] no seu arquivo my.cnf fará com que possa executar o servidor como esse usuário.

Se você estiver instalado o MariaDB para um local não-padrão, talvez você precise de editar o script mysql.server para fazê-lo funcionar direito.

mysql.server funciona como um script padrão do tipo SysV. Desde que você use o script com os argumentos start e stop da seguinte forma:

mysql.server start
mysql.server stop

Para configurar o MariaDB de tal forma que inicie e pare automaticamente no Linux usando o script mysql.server você precisa adicionar ele no sistema init da sua distribuição, usualmente copiando ele em /etc/init.d/ criando logo as ligações simbólicas especialmente nomeadas nos diretórios /etc/rcX.d/ apropriados (onde 'X' é um número entre 0 e 6).

Nos exemplos a seguir, seguiremos a convenção histórica de renomear o script mysql.server para 'mysql' no momento de copiá-lo em /etc/init.d/.

O primeiro passo para a maioria das distribuições do Linux é copiar o script mysql.server em /etc/init.d/ e torná-lo executável:

cd /path/to/your/mariadb-version/support-files/
cp mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql

Agora o que resta é criar as ligações simbólicas especialmente nomeadas. Em ambos, Sistemas RPM e baseados no Debian temos ferramentas que irão fazê-lo por nós. Consulte a documentação da sua distribuição se nenhum deles funciona para você e siga as instruções para gerar as ligações simbólicas ou criar elas manualmente.

Em sistemas baseados em RPM (como Fedora e CentOS), use o chkconfig:

chkconfig --add mysql
chkconfig --level 345 mysql on

Em sistemas baseados no Debian use o update-rc.d:

update-rc.d mysql defaults

No FreeBSD, o local para os scripts de inicialização é /usr/local/etc/rc.d/ e ao você copiar o script mysql.server lá, você deve renomeá-lo de tal forma que corresponda ao padrão *.sh da forma seguinte:

cd /path/to/your/mariadb/support-files/
cp mysql.server /usr/local/etc/rc.d/mysql.server.sh

Como foi dito acima, consulte a documentação da sua distribuição para mais informações de inicialização de serviços como o MariaDB na inicialização do sistema.

Veja as opções de inicialização do mysqld para mais informação das opções de configuração para o mysqld.

Comments

Comments loading...