Como Instalar o phpMyAdmin no Ubuntu 24.04, 22.04 ou 20.04

phpMyAdmin é uma ferramenta gratuita e de código aberto para administração de bases de dados MySQL e MariaDB. É uma aplicação web escrita em PHP que permite uma gestão simplificada das bases de dados através de uma interface gráfica.

Atualizar o Ubuntu Antes da Instalação do LEMP

Para garantir um processo de instalação suave e prevenir conflitos, atualize o seu sistema com os pacotes mais recentes:

Bash
sudo apt update && sudo apt upgrade

Instalar o Stack LEMP para phpMyAdmin

Instalar a Parte Nginx do LEMP

Comece por instalar o Nginx com o comando abaixo:

Bash
sudo apt install nginx

O serviço deve ser ativado por defeito após a instalação. Verifique se está a funcionar corretamente:

Bash
systemctl status nginx

Se o servidor não estiver ativado, use o seguinte comando para ativá-lo e configurar o Nginx para iniciar automaticamente a cada reinicialização:

Bash
sudo systemctl enable nginx --now

Instalar a Parte MariaDB do LEMP

A seguir, instale o componente de base de dados MariaDB:

Bash
sudo apt install mariadb-server mariadb-client

Verifique o estado do serviço MariaDB:

Bash
systemctl status mariadb

Se o servidor não estiver ativado, utilize o seguinte comando:

Bash
sudo systemctl enable mariadb --now

Executar o Script de Segurança Pós-Instalação do MariaDB no Ubuntu

Execute o script de segurança para proteger a sua instalação do MariaDB:

Bash
sudo mysql_secure_installation

Siga as instruções do script para definir a senha do root, remover contas de utilizadores anónimos, desativar o login remoto do root e remover a base de dados de teste.

Instalar a Parte PHP do LEMP

Instale o PHP, PHP-FPM e os módulos necessários para o phpMyAdmin:

Bash
sudo apt install php-fpm php-mbstring php-bcmath php-xml php-mysql php-common php-gd php-cli php-curl php-zip php-gd

Verifique o estado do serviço PHP:

Bash
systemctl status php8.1-fpm

Ative o serviço PHP:

Bash
sudo systemctl enable php-fpm --now

Instalar o Backend do phpMyAdmin no Ubuntu

Criar um Utilizador Super Utilizador do phpMyAdmin

Crie um novo utilizador com privilégios completos:

Bash
sudo mysql -u root -p

# Digite a sua senha de root e depois pressione ENTER.

CREATE USER 'adminuser'@'localhost' IDENTIFIED BY 'SUA_SENHA_SEGURA_AQUI';
GRANT ALL PRIVILEGES ON *.* TO 'adminuser'@'localhost' WITH GRANT OPTION;
FLUSH PRIVILEGES;
exit;

Verifique se criou o novo utilizador corretamente, tentando fazer login no MariaDB com as novas credenciais:

Bash
sudo mysql -u adminuser -p

Download do phpMyAdmin 5.2.1

Faça o download do phpMyAdmin:

Bash
wget https://files.phpmyadmin.net/phpMyAdmin/5.2.1/phpMyAdmin-5.2.1-all-languages.zip

Extrair o phpMyAdmin 5.2.1 e Mover para o Diretório Correto

Extraia o ficheiro e mova-o para o diretório correto:

Bash
sudo unzip phpMyAdmin-5.2.1-all-languages.zip
sudo mv phpMyAdmin-5.2.1-all-languages /usr/share/phpmyadmin

Criar um Novo Diretório TMP para o phpMyAdmin

Crie o diretório TMP e defina as permissões apropriadas:

Bash
sudo mkdir /usr/share/phpmyadmin/tmp
sudo chown -R www-data:www-data /usr/share/phpmyadmin
sudo chmod 777 /usr/share/phpmyadmin/tmp

Configuração do Nginx para o phpMyAdmin no Ubuntu

Criar um Host Virtual do Nginx para o phpMyAdmin

Abra um novo ficheiro de configuração:

Bash
sudo nano /etc/nginx/sites-available/phpmyadmin.conf

Insira a seguinte configuração:

Nginx
server {
    listen 80;
    listen [::]:80;
    server_name pma.seudominio.com;
    root /usr/share/phpmyadmin;

    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php;
    }

    location ~ ^/(doc|sql|setup)/ {
        deny all;
    }

    location ~ \.php$ {
        fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
        include snippets/fastcgi-php.conf;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }

    location ~ /\.ht {
        deny all;
    }
}

Ativar o Host Virtual do Nginx para o phpMyAdmin

Ative o host virtual criando um link simbólico:

Bash
sudo ln -s /etc/nginx/sites-available/phpmyadmin.conf /etc/nginx/sites-enabled/

Verificar e Reiniciar o Serviço Nginx

Verifique a configuração do Nginx e reinicie o serviço:

Bash
sudo nginx -t
sudo systemctl restart nginx

Configuração do phpMyAdmin no Ubuntu

Criar o Ficheiro de Configuração do phpMyAdmin

Copie o ficheiro de configuração de exemplo e edite-o:

Bash
sudo cp /usr/share/phpmyadmin/config.sample.inc.php /usr/share/phpmyadmin/config.inc.php
sudo nano /usr/share/phpmyadmin/config.inc.php

Adicione a seguinte linha, substituindo ‘A_SUA_PASSWORD_AQUI’ por uma string secreta única:

Bash
$cfg['blowfish_secret'] = 'A_SUA_PASSWORD_AQUI';
$cfg['TempDir'] = '/usr/share/phpmyadmin/tmp';

Acesso ao phpMyAdmin

Agora pode aceder ao phpMyAdmin através do subdomínio configurado, por exemplo, pma.seudominio.com. Utilize as credenciais do superutilizador do MariaDB que criou para iniciar sessão e começar a gerir as suas bases de dados através da interface web do phpMyAdmin.

Conclusão

Seguindo estes passos, terá instalado e configurado o phpMyAdmin num servidor Ubuntu com Nginx. Este guia abrange a instalação dos componentes LEMP, a criação de um novo superutilizador do MariaDB, a instalação do phpMyAdmin e a configuração do Nginx para servir a interface do phpMyAdmin. Se tudo foi configurado corretamente, agora pode aceder e gerir as suas bases de dados através da interface web do phpMyAdmin.

Referências

Artigos Relacionados