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:
- Execute ou invoque o próprio
mysqld
. Um exemplo de como fazer isto é descrito em Executando MariaDB desde o diretório fonte. - Use o script de inicialização
mysqld_safe
- 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
.