GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come installare phpMyAdmin con Apache (LAMP) su Ubuntu 20.04

Questo tutorial ti mostrerà come installare phpMyAdmin con Apache, MariaDB, PHP7.4 (stack LAMP) su Ubuntu 20.04 LTS. phpMyAdmin è uno strumento di gestione di database basato sul Web gratuito e open source scritto in PHP. Fornisce un'interfaccia web grafica per consentire agli utenti di gestire database MySQL o MariaDB.

phpMyAdmin consente agli amministratori di:

  • sfogliare database e tabelle;
  • crea, copia, rinomina, altera e rilascia database;
  • crea, copia, rinomina, altera e rilascia tabelle;
  • eseguire la manutenzione della tabella;
  • aggiungi, modifica e rilascia campi;
  • esegui qualsiasi istruzione SQL, anche query multiple;
  • crea, modifica e rilascia indici;
  • carica file di testo nelle tabelle;
  • creare e leggere dump di tabelle o database;
  • esporta i dati nei formati SQL, CSV, XML, Word, Excel, PDF e LaTeX;
  • amministrare più server;
  • gestire utenti e privilegi MySQL;
  • verifica le impostazioni del server e le informazioni di runtime con suggerimenti di configurazione;
  • verifica l'integrità referenziale nelle tabelle MyISAM;
  • crea query complesse utilizzando Query-by-example (QBE), automaticamente
  • collegare le tabelle richieste;
  • creare grafici PDF del layout del database;
  • cerca a livello globale in un database o in un sottoinsieme di esso;
  • trasforma i dati archiviati in qualsiasi formato utilizzando una serie di funzioni predefinite, come la visualizzazione di dati BLOB come immagini o link per il download;
  • gestire tabelle InnoDB e chiavi esterne;

Prerequisiti

Per seguire questo tutorial, hai bisogno di un sistema operativo Ubuntu 20.04 in esecuzione sul tuo computer locale o su un server remoto.

Se stai cercando un VPS (Virtual Private Server), puoi creare un account su Vultr tramite il mio link di riferimento per ottenere $ 50 di credito gratuito (solo per i nuovi utenti). E se devi configurare phpMyAdmin con un nome di dominio, ti consiglio di acquistare i nomi di dominio da NameCheap perché il prezzo è basso e offrono gratuitamente la protezione della privacy di Whois.

Si presume che tu abbia già installato lo stack LAMP su Ubuntu 20.04. In caso contrario, dai un'occhiata al seguente tutorial.

  • Come installare lo stack LAMP (Apache, MariaDB, PHP7.4) su Ubuntu 20.04 LTS

Detto questo, iniziamo con l'installazione di phpMyAdmin.

Passaggio 1:scarica e installa phpMyAdmin su Ubuntu 20.04

phpMyAdmin è incluso nel repository del software Ubuntu 20.04. così possiamo installarlo facilmente con il comando qui sotto.

sudo apt update
sudo apt install phpmyadmin

Il comando precedente installerà tutte le dipendenze necessarie comprese le estensioni PHP7. Durante l'installazione, ti verrà chiesto di selezionare un server web da configurare. Premi lo space barra per selezionare apache2. (Un asterisco indica che l'elemento è selezionato). Quindi premi Tab chiave e Enter per confermare la tua scelta.

Nella schermata successiva, seleziona Yes per configurare un database per phpMyAdmin con dbconfig-common .

Quindi imposta una password per phpmyadmin utente in MariaDB/MySQL.

Una volta terminato questo passaggio, un nuovo database chiamato phpmyadmin viene creato e l'utente del database phpmyadmin dispone dei privilegi necessari per gestire questo database. Se sei curioso come me, puoi accedere a MariaDB e controllare quali privilegi phpmyadmin utente è stato concesso.

È possibile utilizzare il seguente comando per accedere al server MariaDB.

sudo mysql -u root

Quindi controlla i privilegi di phpmyadmin utente.

show grants for [email protected];

Uscita:

Come puoi vedere, utente phpmyadmin ha tutti i privilegi sul database phpmyadmin . Ora puoi uscire eseguendo:

exit;

Ora esegui il seguente comando per verificare se il /etc/apache2/conf-enabled/phpmyadmin.conf il file esiste.

file /etc/apache2/conf-enabled/phpmyadmin.conf

Se non ci sono errori nel processo di installazione, dovresti vedere il seguente output di comando.

/etc/apache2/conf-enabled/phpmyadmin.conf: symbolic link to ../conf-available/phpmyadmin.conf

Se questo file non esiste sul tuo server, è probabile che tu non abbia selezionato il server web Apache nella procedura guidata di configurazione di phpMyAdmin. Puoi risolverlo con i seguenti comandi.

sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf-available/phpmyadmin.conf

sudo a2enconf phpmyadmin

sudo systemctl reload apache2

Fase 2:Accesso a phpMyAdmin da una sottodirectory

Quando si installa phpMyAdmin, un file di configurazione viene posizionato in /etc/apache2/conf-enabled/phpmyadmin.conf , che ci consente di accedere a phpMyAdmin tramite la sottodirectory. Se hai installato altre applicazioni web come WordPress sullo stesso server Ubuntu 20.04, aggiungi semplicemente /phpmyadmin dopo il tuo nome di dominio nella barra degli indirizzi del browser.

example.com/phpmyadmin

Se phpMyAdmin è installato sul tuo computer Ubuntu locale, puoi accedere all'interfaccia web di phpMyAdmin digitando il seguente testo nella barra degli indirizzi del browser.

localhost/phpmyadmin

Se la connessione viene rifiutata o non viene completata, potrebbe essere presente un firewall che impedisce le richieste HTTP. Se stai utilizzando iptables firewall, devi eseguire i seguenti comandi per aprire le porte TCP 80 e 443.

sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT

Se stai utilizzando il firewall UFW, esegui questo comando per aprire le porte TCP 80 e 443.

sudo ufw allow 80,443/tcp

Ora puoi usare il nome utente e la password di MariaDB/MySQL per accedere a phpMyAdmin. Se non riesci ad accedere come root, vai al passaggio 5 per risolvere questo problema.

Fase 3:accedi a phpMyAdmin da un sottodominio

Se il tuo server Ubuntu 20.04 non ha un altro host virtuale Apache, potresti voler utilizzare un sottodominio per accedere all'interfaccia web di phpMyAdmin. In questo modo, puoi abilitare HTTPS per crittografare il traffico.

Innanzitutto, dobbiamo creare un host virtuale Apache per phpMyAdmin. Lo snippet di configurazione phpMyAdmin esistente può essere utilizzato come modello. Copialo in un nuovo file.

sudo cp /etc/apache2/conf-enabled/phpmyadmin.conf /etc/apache2/sites-available/phpmyadmin.conf

Quindi modifica il nuovo file con un editor di testo a riga di comando, come Nano.

sudo nano /etc/apache2/sites-available/phpmyadmin.conf

Questo file è privo di <VirtualHost> tags, quindi dobbiamo aggiungere le seguenti righe all'inizio di questo file. Sostituisci pma.example.com con il tuo sottodominio preferito per phpMyAdmin. Non dimenticare di creare un record DNS A per questo sottodominio.

<VirtualHost *:80>
    ServerName pma.example.com
    DocumentRoot /usr/share/phpmyadmin

    ErrorLog ${APACHE_LOG_DIR}/pma.error.log
    CustomLog ${APACHE_LOG_DIR}/pma.access.log combined

Aggiungi la riga seguente alla fine di questo file per chiudere <VirtualHost> tag.

</VirtualHost>

Salva e chiudi il file. (Per salvare un file nell'editor di testo Nano, premi Ctrl+O , quindi premere Invio per confermare. Per uscire, premi Ctrl+X .) Quindi abilita questo host virtuale.

sudo a2ensite phpmyadmin.conf

Ricarica il server web Apache per rendere effettiva questa modifica.

sudo systemctl reload apache2

Ora dovresti essere in grado di accedere all'interfaccia web di phpMyAdmin tramite

pma.example.com

Prima di inserire le credenziali utente nel form di login, abilitiamo HTTPS.

Fase 4:Abilita HTTPS su phpMyAdmin con Apache

Per proteggere l'interfaccia web di phpMyadmin, possiamo installare un certificato Let's Encrypt TLS gratuito. Esegui il comando seguente per installare il client Let's Encrypt (certbot) dal repository del software Ubuntu 20.04.

sudo apt install certbot python3-certbot-apache

Python3-certbot-apache è il plugin Apache per Certbot. Ora esegui il comando seguente per ottenere e installare il certificato TLS.

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --must-staple -d pma.example.com --email [email protected]

Dove:

  • –apache: Usa l'autenticatore e il programma di installazione di Apache
  • –accetto :Accetto i termini di servizio di Let's Encrypt
  • –reindirizzamento :applica HTTPS aggiungendo il reindirizzamento permanente 301.
  • –hsts :aggiungi l'intestazione Strict-Transport-Security a ogni risposta HTTP.
  • –staple-ocsp :Abilita la pinzatura OCSP.
  • –indispensabile :aggiunge l'estensione OCSP Must Staple al certificato.
  • -d flag è seguito da un elenco di nomi di dominio, separati da virgola. Puoi aggiungere fino a 100 nomi di dominio.
  • –e-mail :Email utilizzata per la registrazione e il contatto di recupero.

Ti verrà chiesto se desideri ricevere e-mail da EFF (Electronic Frontier Foundation). Dopo aver scelto S o N, il tuo certificato TLS verrà automaticamente ottenuto e configurato per te, come indicato dal messaggio sottostante.

Fase 5:Risolvi l'errore di accesso a phpMyAdmin

Se provi ad accedere a phpMyAdmin con l'account root di MariaDB, potresti visualizzare il seguente errore.

#1698 - Access denied for user 'root '@'localhost'

o

mysqli_real_connect(): (HY000/1698): Access denied for user 'root '@'localhost'

Se accedi con l'utente phpmyadmin , non vedrai l'errore precedente. Tuttavia, l'utente phpmyadmin può essere utilizzato solo per gestire il phpmyadmin Banca dati. La causa dell'errore è che per impostazione predefinita l'utente root di MariDB è autenticato tramite il plugin unix_socket, invece di usare mysql_native_password collegare. Per risolvere questo problema, possiamo creare un altro utente amministratore e concedere tutti i privilegi al nuovo utente amministratore.

Accedi al server MariaDB dalla riga di comando.

sudo mysql -u root

Crea un utente amministratore con autenticazione tramite password.

create user [email protected] identified by 'your-preferred-password';

Concedi tutti i privilegi su tutti i database.

grant all privileges on *.* to [email protected] with grant option;

Elimina i privilegi ed esci;

flush privileges;

exit;

Ora puoi accedere a phpMyAmin con admin account e gestisci tutti i database.


Ubuntu
  1. Come installare lo stack LAMP su Ubuntu 18.04

  2. Come installare e proteggere phpMyAdmin con Apache su Ubuntu 18.04

  3. Come installare PrestaShop su Ubuntu 20.04 con Apache

  4. Installa phpMyAdmin su Ubuntu 20.04 con Apache

  5. Installa phpMyAdmin su Ubuntu 22.04 con Apache

Come installare WordPress con Apache in Ubuntu 20.04

Come installare phpMyAdmin con Apache su Ubuntu 22.04 LTS

Come installare Drupal con Apache su Debian e Ubuntu

Come installare WordPress con LAMP su Ubuntu 20.04

Come installare Joomla con LAMP su Ubuntu 20.04

Come installare LAMP su Ubuntu