Instalar MySQL no Ubuntu: passo a passo na VPS
Veja como instalar o MySQL no Ubuntu: apt install, conferência do serviço, mysql_secure_installation, acesso pelo console e criação de banco e usuário para o site.
Por Redação Eleven Host · @robson.direitodigital · 28 de outubro de 2026 · 6 min de leitura

Capa da Redação Eleven Host para o guia: Instalar MySQL no Ubuntu: passo a passo na VPS Arte: Eleven Host
Instalar MySQL no Ubuntu pede dois comandos, sudo apt update e sudo apt install mysql-server. Depois, confira se o serviço está ativo, execute sudo mysql_secure_installation e crie um banco e um usuário só para o seu site.
Este guia segue a documentação do Ubuntu Server ("Install and configure a MySQL server") e a do MySQL sobre o mysql_secure_installation. Os nomes meu_banco, usuario e troque-esta-senha são exemplos. Troque pelos seus.
Antes de começar
Você precisa de um servidor Ubuntu e de um usuário que use sudo, como o de uma VPS. Os comandos abaixo foram escritos para essa situação.
Instalar um banco no mesmo servidor do site é uma escolha que mistura os dois no mesmo lugar. Se preferir separar, há a opção de banco de dados na nuvem, que aparece no fim deste guia.
Passo 1: instale o MySQL
Atualize a lista de pacotes e instale o servidor:
sudo apt update
sudo apt install mysql-server
O apt update atualiza a lista de pacotes disponíveis. O apt install baixa e instala o mysql-server. Se o terminal pedir confirmação, responda Y e aguarde o fim da instalação.
Passo 2: confira se o serviço está rodando
Pela documentação do Ubuntu, este comando mostra o estado do serviço:
sudo service mysql status
Você também pode usar sudo systemctl status mysql, que mostra a mesma informação. Confira na saída se o serviço aparece como ativo. Para ver se o MySQL está escutando, use:
sudo ss -tap | grep mysql
Se precisar reiniciar o serviço, o comando é sudo service mysql restart. Quando algo não sobe, o registro do serviço ajuda a entender o motivo:
sudo journalctl -u mysql
Passo 3: rode o mysql_secure_installation
Esse script, descrito na documentação do MySQL, faz perguntas e ajusta pontos de segurança da instalação. Execute:
sudo mysql_secure_installation
Responda às perguntas com calma. Entre as opções estão remover os usuários anônimos, remover as contas root que aceitam conexão de fora da máquina e remover o banco test. Segundo a documentação do MySQL, esse banco fica acessível por padrão a quem se conectar. Por isso, nosso conselho é removê-lo.
Remova os usuários anônimos, as contas root acessíveis de fora da máquina e o banco test.
Passo 4: entre no MySQL
Para abrir o console do MySQL, a documentação do Ubuntu indica:
sudo mysql -u root
Esse comando não pede senha. O motivo é que o usuário root do MySQL usa a autenticação auth_socket, que só deixa entrar o root do sistema, ou seja, quem usa sudo. Quando o prompt mudar para mysql>, você está dentro do console. Os comandos SQL abaixo terminam com ponto e vírgula.
Passo 5: crie um banco e um usuário para o seu site
Crie um banco para o site e um usuário com permissão só nesse banco. No console do MySQL, rode:
CREATE DATABASE meu_banco;
CREATE USER 'usuario'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'troque-esta-senha';
GRANT ALL PRIVILEGES ON meu_banco.* TO 'usuario'@'localhost';
O primeiro comando cria o banco. O segundo cria o usuário e define a senha. O 'localhost' limita a conta a conexões feitas de dentro do próprio servidor. O terceiro dá as permissões, só dentro de meu_banco. Dê só o que o app precisa: se o seu site só lê e grava dados, você pode trocar ALL PRIVILEGES por uma lista menor.
Troque troque-esta-senha por uma senha longa e só sua. Para sair do console, digite:
exit
Quer um servidor seu para rodar o banco e o site? O Plano Bronze da VPS sai a partir de R$ 17,00/mês; confira na loja o que cada plano inclui. Ver planos de VPS
Passo 6: acesso pela rede, só se precisar
Os arquivos de configuração do MySQL ficam em /etc/mysql/. O parâmetro bind-address, no arquivo /etc/mysql/mysql.conf.d/mysqld.cnf, define de onde o servidor aceita conexões. Se o seu site roda na mesma VPS, deixe como está.
Se outro servidor precisa se conectar, altere o bind-address e reinicie o serviço:
sudo systemctl restart mysql.service
Abrir o banco para a rede aumenta o que pode ser atacado. Antes disso, leia o guia Acesso remoto MySQL: como liberar com segurança e restrinja a porta com o Firewall para VPS: como proteger seu servidor. Crie o usuário com o endereço do cliente depois do @, como 'usuario'@'198.51.100.20', em vez de deixar a origem sem restrição.
Cuidados depois da instalação
A documentação do Ubuntu faz duas observações. Primeiro: faça backup antes de mexer na pasta de dados do MySQL. O guia Backup MySQL com mysqldump: como fazer e restaurar mostra como copiar e restaurar um banco. Segundo: o motor de armazenamento recomendado é o InnoDB, porque o MyISAM não tem journaling, o registro que ajuda o banco a se recuperar depois de uma falha. Ao criar tabelas, confira que elas usam InnoDB.
Anote também onde ficam as suas senhas e o nome do banco. Quando o site apresentar o erro de conexão com o banco de dados, esses dados ajudam na conferência, junto com o estado do serviço do passo 2.
Mantenha o sistema atualizado. O que foi feito neste guia não substitui o backup.
Próximos passos
Com o MySQL no ar, o caminho natural é ligar o seu site ao banco usando o meu_banco, o usuario e a senha do passo 5. Mais adiante, se as consultas ficarem demoradas, o guia MySQL lento: como achar as consultas que travam o site ajuda a investigar. Se o seu projeto prefere outro banco, a base de conhecimento também tem um guia de PostgreSQL na VPS.
Já tem um banco em outro servidor e quer trazê-lo para a VPS? Faça antes um backup com o mysqldump e, na base de conhecimento, procure o guia de importar banco de dados MySQL, que mostra o passo a passo e os erros comuns.
Checklist: MySQL instalado no Ubuntu
- Rodei
sudo apt updateesudo apt install mysql-server. - Conferi o serviço com
sudo service mysql status. - Executei
sudo mysql_secure_installatione removi anônimos, root remoto e o banco test. - Entrei com
sudo mysql -u root. - Criei um banco e um usuário só para o site, com as permissões que ele usa.
- Deixei o
bind-addresscomo estava, porque o app está na mesma VPS. - Fiz backup antes de mexer na pasta de dados.
Prefere um banco de dados na nuvem? Conheça o 11SQL, a partir de R$ 9,90/mês; confira na loja o que cada plano inclui. Conhecer o 11SQL
Perguntas frequentes
Como instalar o MySQL no Ubuntu?
Rode sudo apt update e depois sudo apt install mysql-server. Confira o serviço com sudo service mysql status.
Por que o MySQL não pede senha ao entrar com sudo mysql?
O usuário root usa a autenticação auth_socket, que só deixa entrar o root do sistema, ou seja, quem usa sudo.
O que o mysql_secure_installation faz?
Ele faz perguntas e permite remover usuários anônimos, remover contas root acessíveis de fora da máquina e remover o banco test, além de definir senha para as contas root.
Preciso mudar o bind-address?
Só se outro servidor precisa se conectar ao banco. Se o app está na mesma VPS, deixe como está. Ao mudar, reinicie o serviço com sudo systemctl restart mysql.service.
Qual motor de armazenamento devo usar?
A documentação do Ubuntu recomenda o InnoDB, porque o MyISAM não tem journaling.