Instalando Servidor LAMP no Ubuntu e Derivadas
Este artigo aborda, de maneira simples e objetiva, a instalação de um servidor LAMP (Linux, Apache, MySQL ou MariaDB, PHP, Perl ou Python) nas versões mais recentes do Ubuntu e em suas derivadas.
Parte 2: Configurando o MySQL
O MySQL foi instalado com o comando anterior, mas como podemos acessá-lo? Em versões mais antigas do Ubuntu, o MySQL solicitava uma senha já no momento da instalação. Ocorre que, em versões mais recentes, o MySQL configura a senha para o usuário root baseada no auth_socket plugin.
Vamos acessar o MySQL com o comando abaixo. Quando solicitado, informe sua senha de super usuário.
sudo mysql -u root -p
Insira os dois comandos SQL abaixo e veja que o plugin utilizado na definição da senha foi de fato o "auth_socket", como mostrado na imagem:
USE mysql;
SELECT User, Host, plugin FROM mysql.user;
Há mais de uma solução para resolver esse problema. Podemos criar um novo usuário, definirmos as permissões desejadas e acessarmos o banco de dados com ele, não alterando nada no usuário root.
Também há a opção de alterarmos a senha do usuário root. Neste artigo, utilizaremos esta opção. Como estamos em ambiente de desenvolvimento, isso não é problema. Fique à vontade para escolher a opção que mais lhe agrada.
Vamos ao comando SQL para alterar a senha do usuário root do banco de dados:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'sua_senha';
Após a alteração da senha, saia do MySQL inserindo \q e pressionando Enter. Devemos reiniciar o MySQL com os comandos abaixo:
sudo service mysql stop
$ sudo service mysql start
A imagem abaixo mostra como ficou o usuário root do banco de dados. Note que o plugin que antes era auth_socket, agora foi alterado para mysql_native_password. Se tentarmos acessar o MySQL com esse usuário, será solicitada a senha que acabamos de alterar:
Vamos acessar o MySQL com o comando abaixo. Quando solicitado, informe sua senha de super usuário.
sudo mysql -u root -p
Insira os dois comandos SQL abaixo e veja que o plugin utilizado na definição da senha foi de fato o "auth_socket", como mostrado na imagem:
USE mysql;
SELECT User, Host, plugin FROM mysql.user;

Também há a opção de alterarmos a senha do usuário root. Neste artigo, utilizaremos esta opção. Como estamos em ambiente de desenvolvimento, isso não é problema. Fique à vontade para escolher a opção que mais lhe agrada.
Vamos ao comando SQL para alterar a senha do usuário root do banco de dados:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'sua_senha';
Após a alteração da senha, saia do MySQL inserindo \q e pressionando Enter. Devemos reiniciar o MySQL com os comandos abaixo:
sudo service mysql stop
$ sudo service mysql start
A imagem abaixo mostra como ficou o usuário root do banco de dados. Note que o plugin que antes era auth_socket, agora foi alterado para mysql_native_password. Se tentarmos acessar o MySQL com esse usuário, será solicitada a senha que acabamos de alterar:
