phpMyAdmin è uno strumento di amministrazione open source basato sul Web per la gestione dei server MySQL e MariaDB. È uno degli strumenti di amministrazione di database più popolari utilizzati dalle società di hosting e dagli amministratori di sistema per eseguire attività di database come la creazione, l'eliminazione, l'interrogazione di tabelle, colonne, relazioni, indici, utenti, autorizzazioni, ecc.
phpMyAdmin è un'applicazione web portatile scritta in PHP. È rilasciato sotto GNU GPL v2.
In questo post vedremo come installare phpMyAdmin con Apache su CentOS 8 / RHEL 8.
Prerequisiti
Installa il server MySQL/MariaDB
Prima di installare phpMyAdmin, devi avere un'istanza del database (MySQL o MariaDB) in esecuzione sul tuo sistema per la connessione. Potrebbe essere un'istanza di database autonoma o installata come parte dello stack LAMP.
Database autonomo
LEGGI: Come installare MariaDB su CentOS 8 / RHEL 8
LEGGI: Come installare MySQL 8.0 su CentOS 8 / RHEL 8
Installa PHP, il pacchetto di supporto MySQL per PHP e altri pacchetti PHP sul tuo sistema per consentire a phpMyAdmin di connettersi al database.
dnf install -y wget php php-pdo php-pecl-zip php-json php-common php-fpm php-mbstring php-cli php-mysqlnd php-xml tar
Pila LAMPADA
LEGGI: Come installare lo stack LAMP su CentOS 8 / RHEL 8
Installa sotto i pacchetti PHP per phpMyAdmin per connettersi con il database.
dnf install -y php-json php-mbstring
Installa phpMyAdmin
Il pacchetto phpMyAdmin non è ancora disponibile nel repository del sistema operativo per CentOS 8 / RHEL 8. Quindi, dobbiamo scaricarlo dal sito Web ufficiale.
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.tar.gz
Installa phpMyAdmin usando il seguente comando.
tar -zxvf phpMyAdmin-5.1.1-all-languages.tar.gz
Sposta la configurazione di phpMyAdmin nella posizione desiderata.
mv phpMyAdmin-5.1.1-all-languages /usr/share/phpMyAdmin
Configura phpMyAdmin
Copia il file di configurazione di esempio.
cp -pr /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
Modifica il file di configurazione e aggiungi un segreto Blowfish.
vi /usr/share/phpMyAdmin/config.inc.php
Genera il segreto del pesce palla e inseriscilo nella riga sottostante.
$cfg['blowfish_secret'] = 'bo95yavJ;V,1PzSlxyFwtyMJ}WmG98-6'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Importa create_tables.sql per creare nuove tabelle per phpMyAdmin.
mysql < /usr/share/phpMyAdmin/sql/create_tables.sql -u root -p
Crea un alias nel server web Apache in modo che sia possibile accedere a phpMyAdmin con http://your-ip-add-dress/phpmyadmin.
vi /etc/httpd/conf.d/phpMyAdmin.conf
Copia e incolla il contenuto seguente nel file sopra.
Alias /phpMyAdmin /usr/share/phpMyAdmin Alias /phpmyadmin /usr/share/phpMyAdmin <Directory /usr/share/phpMyAdmin/> AddDefaultCharset UTF-8 <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory> <Directory /usr/share/phpMyAdmin/setup/> <IfModule mod_authz_core.c> # Apache 2.4 <RequireAny> Require all granted </RequireAny> </IfModule> <IfModule !mod_authz_core.c> # Apache 2.2 Order Deny,Allow Deny from All Allow from 127.0.0.1 Allow from ::1 </IfModule> </Directory>
Crea una directory tmp per phpMyAdmin e cambia l'autorizzazione.
mkdir /usr/share/phpMyAdmin/tmp chmod 777 /usr/share/phpMyAdmin/tmp
Imposta la proprietà di phpMyAdmin come mostrato di seguito.
chown -R apache:apache /usr/share/phpMyAdmin
Riavvia il servizio.
systemctl restart httpd
SELinux
Crea criteri SELinux per il corretto funzionamento di phpMyAdmin.
yum install -y policycoreutils-python-utils semanage fcontext -a -t httpd_sys_rw_content_t '/usr/share/phpMyAdmin/' semanage fcontext -a -t httpd_sys_rw_content_t "/usr/share/phpMyAdmin/tmp(/.*)?" restorecon -Rv '/usr/share/phpMyAdmin/'
Firewall
Crea una regola firewall per consentire le richieste HTTP da reti esterne.
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Note importanti
Leggi le note importanti prima di accedere a phpMyAdmin con utenti root o regolari del database.
MySQL 8.x
MySQL 8.0 installato dal repository MySQL Dev Community utilizza un meccanismo caching_sha2_password per l'autenticazione, che impedisce alle applicazioni legacy di accedere ai database, incluso phpMyAdmin, in questo momento. In parole povere, non accederai a phpMyAdmin a meno che non disabilitiamo questo nuovo meccanismo di password.
Puoi disabilitare globalmente il nuovo meccanismo della password inserendo default-authentication-plugin=mysql_native_password in /etc/my.cnf (gli utenti creati dopo questa modifica avranno il meccanismo di autenticazione mysql_native_password), oppure puoi ripristinare la vecchia autenticazione nativa (mysql_native_password) per singoli utenti (Es:root) eseguendo ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '
Accedi a phpMyAdmin
Ora accedi a phpMyAdmin dal browser, l'URL sarà:
http://localhost/phpMyAdminO
http://il-tuo-indirizzo-ip/phpMyAdminAccedi con il root (amministratore del database) o qualsiasi utente del database.
Otterrai la pagina del database in cui puoi eseguire tutte le attività del database.
Conclusione
Spero che tu abbia imparato come installare phpMyAdmin con Apache CentOS 8 / RHEL 8 per gestire il database MariaDB e MySQL. Oltre a questo, puoi dare un'occhiata a come proteggere la tua installazione di phpMyAdmin.