Esse processo é opcional, mas muitos preferem utilizar o MariaDB como banco de dados, além de ser compatível com o MySQL, ele é mais robusto, escalável e seguro. Então aqui mostraremos como substituir o seu banco de dados MySQL pelo banco de dados MariaDB. Antes de executar esses passos é importante realizar o backup de todas a sua base de dado.
Os comandos abaixo foram verificados na distribuição linux Ubuntu 16.04.
1 – Antes de instalar o MariaDB, iremos consultar a versão atual, para isso será necessário ter a senha do banco de dados que está em /root/.digitalocean_password, abra o arquivo via FTP e copie a senha;
1.1 – Verifique o status do serviço:
systemctl status mysql
1.2 – Para acessar o banco de dados execute:
mysql -u root -p
1.2.1 – Em seguida insira a senha copiada apenas clicando com o botão direito do mouse e em seguida tecle Enter;
1.3 – Agora dentro do mysql digite o comando abaixo para ver a versão:
SELECT VERSION() as mysql_version;
Irá apresentar o resultado semelhante abaixo:
1.4 – Agora saía do do mysql digitando exit.
2 – Desinstale o mysql, digitando o comando abaixo:
apt-get purge mysql* apt-get autoremove apt-get autoclean
3 – Verifique se foi realmente desinstalado, consultado novamente o serviço.
systemctl status mysql
Deverá retornar o resultado semelhante abaixo:
Instalando o MariaDB
apt-get update apt-get install mariadb-server
1 – Acesse novamente o banco de dados para consultar a versão:
mysql -u root -p
A senha ainda é a mesma do inicio do tutorial, basta colar e teclar Enter.
Agora dentro do mysql digite o comando abaixo para ver a versão:
SELECT VERSION() as mysql_version;
2 – A fim de garantir que estamos trabalhando com a versão mais atual do banco de dados, iremos tentar realizar o upgrade da instalação, para isso, antes saia do mariadb, digitando exit, depois digite o comando abaixo:
mysql_upgrade
Se não houver atualizações a serem feitas, irá aparecer uma mensagem informando que já está com a versão mais recente do SGBD:
Melhorando os Limites do mysql
Provavelmente você já enfrentou problemas bizarros de conexão com banco de dados em hospedagem compartilhada. Isso ocorre porque o banco de dados tem um limite padrão para abertura de registros simultâneos, que quando ultrapassado, simplesmente para o serviço. A fim de evitar que esse problema ocorra em nossa VPS, iremos aumentar esse limite.
Em todas as modificações de arquivo, deixe uma linha em branco no final do arquivo.
1 – Consulte o limite atual:
ulimit -a
2 – Execute o comando abaixo para verificar o limite de arquivos abertos. Será necessário fornecer a senha do banco de dados.
mysql -u root -p --execute='show variables like "open_files_limit"'
3.1 – Acesse o arquivo limits.conf
nano /etc/security/limits.conf
3.2 – Adicione as linhas abaixo, logo acima do fechamento do arquivo :
mysql soft nofile 24000 mysql hard nofile 32000 # End of file
4.1 – Acesse o arquivo common-session
nano /etc/pam.d/common-session
4.2 – Adicione a linha abaixo logo no final:
session required pam_limits.so
5.1 – Acesse o arquivo my.cnf
nano /etc/mysql/my.cnf
5.2 – adicione as informações abaixo, no final do arquivo
[mysqld_safe] open_files_limit = 65536 [mysqld] open_files_limit = 65536
6 – Reinicie o mysql:
/etc/init.d/mysql restart
7 – Verifique novamente os limites. Será necessário fornecer a senha do banco de dados.
mysql -u root -p --execute='show variables like "open_files_limit"'
Reiniciando o Banco Automaticamente
Quando existe uma carga muito grande no servidor, seja por ataque, site que demanda muito processamento, por medida de segurança alguns serviços são desativados automaticamente, curiosamente o MySQL é um dos serviços a ser desativados. Embora em nossa sequencia de tutoriais já tenhamos adicionado a memória SWAP, iremos adicionar mais esse recurso para manter o seu servidor estável e livre de problemas.
1.1 – Crie um arquivo de monitoramento e permita que somente o root possa alterar e executar.
touch /root/monitor-bd chmod 700 /root/monitor-bd
1.2 – Abra o arquivo criado com o editor nano
nano /root/monitor-bd
1.3 – Adicione o conteúdo abaixo, salve e saia:
#!/bin/bash # Reinicia o MySQL em caso de desligamento # Ajuda com os comparativos de if: man 1 test UPMYSQL=$(lsof -i :3306 | grep mysql | wc -l); if [ "$UPMYSQL" -le 0 ]; then /etc/init.d/mysql restart fi
2 – Efetue o teste manualmente
/root/monitor-bd
3.1 – Adicione um agendamento no cron para verificar a cada 5 minutos
crontab -e
3.2 – Na ultima linha, adicione, depois salve e saia:
*/5 * * * * /root/monitor-bd
Esse agendamento fará executara uma verificação do status do banco de dados a cada 5 minutos.
Pronto! Seu banco de dados está preparado para trabalhar com alta performance!
Agora é a hora de instalar o seu primeiro projeto!