Instalar o MySQL no Debian cria uma infraestrutura de banco de dados robusta e flexível, adequada para uma ampla gama de aplicações e serviços. O MySQL é conhecido por sua escalabilidade, confiabilidade e estabilidade. Ao configurá-lo corretamente, é possível executar operações de forma eficiente e melhorar o desempenho geral da infraestrutura de banco de dados.
Essa combinação é especialmente vantajosa para administradores de sistemas, analistas de banco de dados e empresas que necessitam de uma solução confiável para lidar com grandes volumes de dados. Além disso, a documentação abrangente do MySQL e sua comunidade ativa facilitam a solução de problemas e a otimização das operações.
Neste guia, vamos demonstrar passo a passo como instalar e configurar o MySQL no Debian.
Los repositorios predeterminados no contienen el paquete del servidor de bases de datos MySQL en Debian. Para instalarlo en un sistema Linux, siga las instrucciones que se indican a continuación. Descargaremos la versión más reciente de MySQL.
Baixe o arquivo de configuração do repositório do MySQL no formato .deb
:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
Nota: Verifique no site oficial do MySQL se esta é a versão mais recente antes de prosseguir.
Use o arquivo .deb
baixado para iniciar a instalação com o dpkg
:
sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb
Responda às solicitações do assistente de configuração. Por exemplo, selecione "MySQL Server & Cluster" e pressione Enter para continuar.
Se necessário, role para selecionar a versão desejada (por exemplo, mysql-8.4-lts
), e pressione OK para avançar.
Atualize os índices de pacotes do sistema para aplicar as informações recém-adicionadas do repositório MySQL:
sudo apt update
O gerenciador de pacotes padrão do Debian facilita a instalação do MySQL. Execute o seguinte comando para instalar:
sudo apt install mysql-server -y
Durante a instalação, será exibida uma interface para definir a senha do usuário root. Digite uma senha forte para proteger o banco de dados e pressione OK.
Depois, verifique a versão instalada com:
mysql --version
Ative o serviço do MySQL para que ele seja iniciado automaticamente junto com o sistema:
sudo systemctl enable mysql
Inicie o serviço manualmente com o comando:
sudo systemctl start mysql
Verifique o status atual do serviço:
sudo systemctl status mysql
Antes de abrir a porta 3306
para acesso externo, confira nosso tutorial sobre Como criar um túnel SSH para o MySQL – ele mostra como redirecionar conexões via SSH para evitar expor o MySQL diretamente à internet.
A senha definida anteriormente protege o usuário root no servidor. No entanto, o MySQL vem com algumas configurações padrão inseguras, como acesso remoto ao banco de teste e a existência de usuários anônimos.
Para reforçar a segurança, execute o seguinte script:
sudo mysql_secure_installation
Para ativar o módulo VALIDATE PASSWORD
e garantir políticas de senha mais rigorosas, digite Y
e pressione Enter.
Depois, você será solicitado a configurar várias opções de segurança:
Definir a senha do usuário root: Escolha uma senha forte e certifique-se de digitá-la corretamente. Em seguida, será solicitado que você defina uma política de senhas para o servidor de banco de dados. Por exemplo, digite 2
para exigir apenas senhas fortes e pressione Enter. Quando for perguntado se deseja alterar a senha root que acabou de definir, digite N
para manter ou Y
para alterá-la.
Remover usuários anônimos: É recomendável remover o acesso de usuários anônimos ao banco de dados. Para isso, digite Y
e pressione Enter quando solicitado.
Impedir o acesso remoto do root: Por questões de segurança, é melhor desativar o login remoto com o usuário root. Para evitar esse tipo de acesso, digite Y
e pressione Enter.
Excluir o banco de dados de teste: O banco de testes, usado em ambientes de desenvolvimento, pode representar um risco se permanecer ativo. Para excluí-lo, digite Y
e pressione Enter.
Atualizar as tabelas de privilégios: Isso garante que todas as alterações feitas até agora entrem em vigor imediatamente. Pressione Enter para concluir.
Use a ferramenta de linha de comando mysql para conectar-se ao servidor de banco de dados e acessar o console interativo.
Digite o seguinte comando e forneça a senha definida durante a instalação segura. Uma vez dentro do console, você pode executar comandos SQL diretamente no servidor de banco de dados.
sudo mysql -u root -p
É uma boa prática criar um banco de dados e um novo usuário para suas aplicações, ao invés de usar diretamente o root. Veja como fazer isso:
Primeiro, crie o banco. Por exemplo, use o seguinte comando para criar o banco hostmandb
:
CREATE DATABASE hostmandb;
Verifique se o banco foi criado corretamente:
SHOW DATABASES;
Crie um usuário e defina uma senha segura. Neste exemplo, criamos o usuário minhal
com a senha Qwer@1234
. Substitua por dados próprios:
CREATE USER 'minhal'@'localhost' IDENTIFIED BY 'Qwer@1234';
Dê acesso total ao banco hostmandb
para o novo usuário:
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
Aplique as mudanças:
FLUSH PRIVILEGES;
Digite:
EXIT;
Para verificar se o acesso ao banco hostmandb
está funcionando, conecte-se como o novo usuário:
sudo mysql -u minhal -p
Digite a senha do usuário quando solicitado e, para confirmar o acesso, liste os bancos:
SHOW DATABASES;
Se você precisar acessar o MySQL remotamente, será necessário configurar o servidor para permitir conexões externas. Siga os passos abaixo:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address
e altere para:bind-address = 0.0.0.0
sudo systemctl restart mysql
sudo mysql -u root -p
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
Se o seu servidor estiver com o firewall ativado, será necessário liberar a porta padrão do MySQL (3306
) para permitir conexões externas. Siga os passos abaixo:
sudo ufw allow mysql
sudo ufw enable
sudo ufw reload
Manter backups regulares é essencial para evitar a perda de dados. O MySQL fornece a ferramenta mysqldump
para facilitar a criação dessas cópias de segurança. Veja como usá-la:
Este comando usa o mysqldump
para criar um backup do banco hostmandb
em um arquivo chamado hostmandb_backup.sql
:
sudo mysqldump -u root -p hostmandb> hostmandb_backup.sql
Se quiser fazer uma cópia de segurança de todas as bases existentes, use:
sudo mysqldump -u root -p --all-databases > all_databases_backup.sql
Para restaurar o conteúdo do arquivo de backup hostmandb_backup.sql
de volta ao banco hostmandb
:
sudo mysql -u root -p hostmandb < hostmandb_backup.sql
Dependendo da carga de trabalho e dos recursos do servidor, é possível ajustar algumas configurações para garantir o desempenho máximo do MySQL. Veja como:
O buffer pool armazena em cache os dados e índices usados com frequência. Aumentar o seu tamanho pode melhorar significativamente o desempenho do banco. Abra o arquivo de configuração do MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Adicione ou edite a seguinte linha:
innodb_buffer_pool_size = 1G
Ajuste esse valor com base na quantidade de memória disponível no servidor.
O cache de consultas armazena os resultados de comandos SELECT
, acelerando as respostas para consultas repetidas.
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
No mesmo arquivo .cnf, adicione ou modifique estas linhas:
query_cache_type = 1
query_cache_size = 64M
Otimizar regularmente tabelas específicas ajuda a recuperar espaço desperdiçado e melhorar o desempenho. Exemplo com a tabela customers
do banco hostmandb
:
USE hostmandb;
OPTIMIZE TABLE customers;
Ferramentas como o MySQL Workbench e o mysqltuner
ajudam a monitorar e ajustar o banco com base nas métricas coletadas. Instale o mysqltuner
com:
sudo apt install mysqltuner
Execute a ferramenta para receber recomendações de otimização:
sudo mysqltuner
Configurar um ambiente MySQL é essencial no mundo digital atual. Ao seguir este guia passo a passo, você será capaz de instalar e conectar-se ao seu banco de dados MySQL com segurança. Essa abordagem não só fortalece a segurança como também melhora a eficiência da administração remota do banco de dados. Além disso, ela ajuda a prevenir falhas e garante a confidencialidade dos dados armazenados.
Este artigo apresentou instruções completas para a instalação do MySQL no Debian. É altamente recomendado monitorar e otimizar regularmente os servidores MySQL para garantir o desempenho ideal e alta confiabilidade.
A Hostman também oferece bancos de dados em nuvem pré-configurados e prontos para uso – incluindo opções de MySQL em nuvem – que economizam tempo e facilitam a implantação para aplicações críticas.