Introducció
phpMyAdmin és una eina d'administració de bases de dades per a MySQL i MariaDB, escrita en llenguatge PHP. S'utilitza principalment per gestionar bases de dades a través d'una interfície web, cosa que permet fer tasques com ara crear i eliminar bases de dades, crear i eliminar taules, inserir i consultar dades, etcètera (sense necessitat d'utilitzar ordres).
Ofereix una gran quantitat d'opcions, com ara la possibilitat d'importar i exportar bases de dades, optimitzar taules, gestionar usuaris i permisos, etc. Això la converteix en una eina molt útil tant per a administradors de bases de dades com per a desenvolupadors web que utilitzen MySQL com a motor de base de dades.
En aquest article s'explicarà com instal·lar phpMyAdmin i configurar-lo utilitzant com a servidor web NGINX, i també es donarà una breu explicació de com crear un usuari per iniciar sessió a l'eina i tenir accés a totes les bases de dades. S'utilitzarà una pila LEMP prèviament configurada per a aquest escenari; per conèixer més detalls de Com instal·lar NGINX MariaDB i PHP (LEMP) fes clic a l'hiperenllaç.
Instal·lació de phpmyadmin
En les distribucions més habituals, el paquet per instal·lar phpMyAdmin està inclòs al repositori oficial i només hauràs d'utilitzar l'eina de gestió de paquets que inclou el mateix sistema operatiu.
A Debian o distribucions basades en aquest com ara Ubuntu, simplement executa el següent:
# apt install phpmyadmin -y --no-install-recommends
S'instal·larà utilitzant el gestor de paquets natiu "Advanced Package Tool".
A RHEL o distribucions basades en aquest com ara CentOS, simplement executa el següent:
# yum install phpmyadmin -y
S'instal·larà utilitzant el gestor de paquets natiu "Yellowdog Updater (Modified)".
Configuració de phpMyAdmin
Per defecte, el camí d'instal·lació de phpmyadmin és a /usr/share i pots afegir-lo amb el paràmetre location per configurar-lo a NGINX. També pots decidir si l'implementes per a un lloc concret modificant-ne el fitxer de configuració o l'afegeixes a la configuració global per accedir-hi amb l'adreça, creant un fitxer de configuració.
Per configurar-lo per a un lloc concret, simplement afegeix les línies següents al seu fitxer de configuració dins del server i pots utilitzar directament un editor per fer-ho:
# nano /etc/nginx/sites-enabled/ejemplo.conf
Hauràs d'afegir el contingut següent al fitxer, al bloc de server, dins de les seves claus:
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
Perquè es pugui accedir a phpMyAdmin utilitzant l'adreça IP del servidor, primer comprova si tens inclòs el directori conf.d a la configuració de NGINX:
# grep conf.d /etc/nginx/nginx.conf
Hauria d'aparèixer el resultat següent:
include /etc/nginx/conf.d/*.conf;
Si no apareix cap resultat, crea el directori i afegeix l'include al fitxer nginx.conf.
Posteriorment, crea el fitxer de configuració per a phpMyAdmin dins del directori i pots utilitzar directament un editor per fer-ho:
# nano /etc/nginx/conf.d/phpmyadmin.conf
Hauràs d'afegir la configuració següent al fitxer:
server {
location /phpmyadmin {
root /usr/share/;
index index.php index.html index.htm;
location ~ ^/phpmyadmin/(.+\.php)$ {
try_files $uri =404;
root /usr/share/;
fastcgi_pass unix:/run/php/php7.4-fpm.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include /etc/nginx/fastcgi_params;
}
location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {
root /usr/share/;
}
}
}
Tanmateix, recorda modificar el valor del paràmetre fastcgi_pass si cal. Per exemple, per a una altra versió de PHP, canvia'l pel sock de l'FPM de la versió corresponent:
fastcgi_pass unix:/run/php/php8.0-fpm.sock;Addicionalment, pots afegir més seguretat filtrant per adreça IP a la configuració de NGINX o fins i tot crear una redundància amb auth_basic. Tens més informació a: Com configurar una autenticació per a un directori web a NGINX.
Finalment, caldrà aplicar la configuració i simplement pots reiniciar el servei per fer-ho:
# systemctl restart nginxUn cop feta i implementada la configuració, el servidor web hauria de mostrar l'inici de sessió de phpMyAdmin afegint phpmyadmin a l'arrel al navegador web.
Crear un usuari per a phpMyAdmin
Si no tens cap usuari creat, pots executar el següent des d'un client MySQL:
CREATE USER 'admin'@'localhost' IDENTIFIED BY 'contraseña';Crearàs un usuari amb el nom "admin" i recorda modificar la contrasenya de l'exemple, posteriorment atorga permisos a l'usuari. Pots utilitzar l'ordre següent per donar-li tots els permisos a totes les bases de dades:
GRANT ALL PRIVILEGES ON *.* TO 'admin'@'localhost';Un cop creat l'usuari i amb permisos, podràs utilitzar-lo per accedir a phpMyAdmin. Tens més informació a l'article Com administrar usuaris i permisos a MySQL.
Esperem haver-te ajudat amb aquest tutorial 🙂. Recorda, si tens consultes sobre aquesta o qualsevol altra qüestió relacionada amb els teus servidors a Clouding, no dubtis a escriure a soporte@clouding.io Som al teu costat per al que necessitis!