Como instalar o phpmyadmin manualmente com nginx no Ubuntu
Olá, Saraiva aqui!
Neste guia, mostrarei como instalar e configurar o phpMyAdmin com Nginx, MySQL e PHP8.1 (LEMP) no Ubuntu 20.4.
O phpMyAdmin é uma ferramenta de gerenciamento de banco de dados gratuita e de código aberto escrita em PHP. Ele fornece uma interface baseada na web para os usuários gerenciarem o banco de dados MySQL.
Etapa 1: baixe o phpMyAdmin mais recente
Primeiro baixe a versão mais recente do phpMyAdmin no site oficial. Link da última versão estável abaixo:
No momento em que escrevo este guia, a versão mais recente é a v5.2.0. Então, para baixar os arquivos, execute os seguintes comandos:
#Passo 1: Baixe o arquivo zip com o comando abaixo:
wget https://files.phpmyadmin.net/phpMyAdmin/5.2.0/phpMyAdmin-5.2.0-all-languages.zip
#Passo 2: Descompacte o arquivo com o comando unzip - se você não tem o unzip instalado, aqui estará um guia para te ajudar a instalar.
sudo unzip phpMyAdmin-5.2.0-all-languages.zip
#Passo 3: Mova a pasta do phpMyAdmin para a pasta raiz do dominio.
No meu caso, usarei seguintedominio: http://phpmyadmin. Para isso, crie um novo diretório conforme abaixo:
sudo mkdir -p /var/www/phpmyadmin/html
Agora mova o contedúdeo descompactado para o diretório criado acima:
sudo mv phpMyAdmin-5.2.0-all-languages /var/www/phpmyadmin/html/
#Passo 4: Atualize o acesso para o usuário atual no diretório para adicionar suporte para servidor web com o código abaixo:
sudo chown -R www-data:www-data /var/www/phpmyadmin/html
Etapa 2: configure o phpMyadmin
Existem algumas configurações necessárias no phpMyAdmin. Para começar, copie o arquivo de configuração de amostra e abra esse arquivo de configuração com o editor nano que é o padrão do ubuntu, mas você pode usar o editor do seu interesse:
#Passo 1: Navegue atpe o diretório do phpmyadmin desta forma:
cd /var/www/phpmyadmin/html
#Passo 2: Renomeie o arquivo de configuração de amostra com o código a seguir:
sudo mv config.sample.inc.php config.inc.php
#Passo 3: Enfim, abra esse arquivo de configuração com o código abaixo:
sudo nano config.inc.php
#Passo 4: Agora, atualize a seguinte linha para apontar para o host de banco de dados correto:
$cfg['Servers'][$i]['host'] = 'localhost'
sudo mkdir -p /var/www/phpmyadmin/html/tmp
sudo nano config.inc.php
Agora, no arquivo aberto, localize a linha $cfg['SaveDir']... copie e cole a linha de código abaixo, após a linha $cfg['SaveDir']:
$cfg['TempDir'] = '/var/www/phpmyadmin/html/tmp';
Etapa 3: Método de autenticação para usuário do MySQL 8.1
Para entrar no phpMyAdmin como seu usuário root do MySQL, você deve alterar seu método de autenticação de auth_socket para mysql_native_password se ainda não o fez. Para implementar isso, abra o prompt do MySQL do seu terminal:
sudo mysql
Ou
sudo mysql -u root -p
Agora, no shell do MySQL, execute o seguinte comando ALTER USER:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
Alternativamente, crie um novo usuário MySQL, se você preferir se conectar com um usuário phpMyAdmin MySQL dedicado em vez do usuário root, que inclusive é o que eu recomendo.
Para criar um novo usuário, abra o shell do MySQL mais uma vez e execute os seguintes comandos:
# Crie o usuário `belmitec` assim:
CREATE USER 'belmitec'@'localhost' IDENTIFIED WITH mysql_native_password BY 'suaSenha';
# Dê todas as permissões ao usuário criado com o comando abaixo, no meu caso `belmitec`.
GRANT ALL PRIVILEGES ON *.* TO 'belmitec'@'localhost' WITH GRANT OPTION;
Nesse ponto, execute FLUSH PRIVILEGES o que informa ao servidor para recarregar as tabelas de concessão e colocar suas novas alterações em vigor:
FLUSH PRIVILEGES;
Etapa 4: Crie um bloco de servidor Nginx
Para poder acessar a interface do phpMyAdmin na web, precisamos fazer um bloco de servidor Nginx. Então, crie um arquivo com este nome: phpmyadmin.conf:
sudo nano /etc/nginx/sites-available/phpmyadmin.local
Cole o código a seguir neste arquivo e não se esqueça de substituir phpmyadmin.teste pelo domínio de sua preferência e também a versão do php que no meu caso é php8.1, troque por sua versão atual.
server {
listen 80;
listen [::]:80;
server_name phpmyadmin.local;
root /var/www/phpmyadmin/html/;
index index.php index.html index.htm;
access_log /var/log/nginx/phpmyadmin_access.log;
error_log /var/log/nginx/phpmyadmin_error.log;
location / {
try_files $uri $uri/ /index.php;
}
location ~ ^/(doc|sql|setup)/ {
deny all;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php/php8.1-fpm.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
# include snippets/fastcgi-php.conf;
}
location ~ /\.ht {
deny all;
}
}
Salve e feche o arquivo. Em seguida, teste as configurações do Nginx.
sudo nginx -t
Antes de prosseguir vamos adicionar este dominio no arquivo hosts do ubuntu:
sudo nano /etc/hosts
Acrescente a linha a seguir, abaixo do último registro 127.0.0.1...
127.0.0.1 phpmyadmin.local
Agora ative o dominio com o comando abaixo:
sudo ln -s /etc/nginx/sites-available/phpmyadmin.local /etc/nginx/sites-enabled/
Se o teste for bem sucedido, recarregue o Nginx para que as alterações entrem em vigor.
sudo systemctl reload nginx
Ou
sudo systemctl restart nginx
Agora você pode acessar o phpMyAdmin via http://phpmyadmin.local. Se precisar de ajuda pra isso, me faça saber nos comentários la no canal da Belmitec no YouTube.
Conclusão
Você instalou o phpMyAdmin com sucesso e agora deve ter o phpMyAdmin configurado e preparado para usar em seu servidor Ubuntu. Espero que este guia tenha sido útil.
Vamos adiante!
Artigos relacionados
-
COMO OBTER A URL ATUAL E A URL BASE USANDO PHP + CODEIGNITER
Olá, Saraiva aqui!Neste guia breve, veremos como obter a URL atual de uma determinada página para uso diversos. Também veremos como obt...
Você achou esse artigo útil?