MySQL em máquina virtual
1️⃣ Configurando a rede da máquina virtual
Após criarmos a nossa máquina virtual, precisamos conferir qual é o tipo de conexão usado. Precisamos escolher a opção placa em modo bridge. Agora, descubra o endereço IP da máquina virtual:
ip a
2️⃣ Instalação do SSH
Por padrão, utilizamos o terminal do Ubuntu rodando direto na máquina virtual para executar as operações. No entanto, essa abordagem é bastante limitante. Para facilitar, podemos usar o terminal do Windows para controlar a máquina virtual. No meu caso, o OpenSSH não foi instalado automaticamente.
# Máquina Linux
sudo apt install openssh-server
Conectando a máquina hospedeira à máquina virtual
No terminal do Windows, execute:
ssh nomedousuario@ipdamaquinavirtual
4️⃣ Instalando o MySQL
A partir daí, vamos instalar na máquina virtual o servidor MySQL
sudo apt install mysql-server
Para confirmar que deu tudo certo na instalação, vamos acessar o servidor MySQL:
sudo mysql -u root -p
Acessando o servidor MySQL, vamos alterar algumas propriedades da conta root
, para que ela seja acessível a partir de outros dispositivos:
SELECT user, host, authentication_string, plugin FROM mysql.user WHERE user = 'root';
UPDATE mysql.user SET host = '%' WHERE user = 'root' AND host = 'localhost';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;
Após a alteração dos privilégios, precisamos também alterar o arquivo de configuração do servidor, para que ele receba requisições externas.
# Máquina virtual
cd /etc/mysql
ls -c
Após visualizarmos a lista de arquivos, precisamos acessar a pasta mysql.conf.d
e abri-lo para edição.
cd mysql.conf.d
sudo nano mysqld.cnf
No arquivo, procuramos pela linha que contém:
bind-address = 127.0.0.1
e trocamos o valor para
bind-address = 0.0.0.0
Finalmente, reiniciamos o servidor MySQL
sudo service mysql restart
5️⃣ Conectando ao MySQL pelo Windows
No Windows, ao executarmos direto a seguinte operação, encontraremos alguns erros:
# Windows
mysql -u root -p -h 192.168.100.139
Enter password:
Liberando o firewall
sudo ufw allow 3306