En este tutorial, le mostraremos cómo instalar phpMyAdmin con Nginx en Debian 11. Para aquellos de ustedes que no lo sabían, phpMyAdmin es una aplicación gratuita, de código abierto y web. aplicación basada en MySQL utilizada para administrar bases de datos MySQL, cuentas de usuario y privilegios, ejecutar instrucciones SQL, importar y exportar datos en una variedad de formatos de datos y mucho más desde la interfaz web.
Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo
' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso de phpMyAdmin en Debian 11 (Bullseye).
Requisitos previos
- Un servidor que ejecute uno de los siguientes sistemas operativos:Debian 11 (Bullseye).
- Se recomienda que utilice una instalación de sistema operativo nueva para evitar posibles problemas
- Un
non-root sudo user
o acceder alroot user
. Recomendamos actuar como unnon-root sudo user
, sin embargo, puede dañar su sistema si no tiene cuidado al actuar como root.
Instalar phpMyAdmin con Nginx en Debian 11 Bullseye
Paso 1. Antes de instalar cualquier software, es importante asegurarse de que su sistema esté actualizado ejecutando el siguiente apt
comandos en la terminal:
sudo apt update sudo apt upgrade
Paso 2. Instalación de LEMP Stack.
Si no tiene un LEMP (Linux + Nginx+ MySQL/MariDB+ PHP) ya instalado en su servidor, puede seguir nuestra guía aquí.
Paso 3. Configure MySQL.
Ahora creamos una nueva cuenta de superusuario solo para phpMyAdmin:
sudo mysql -u root -p
Esto le pedirá una contraseña, así que ingrese su contraseña raíz de MariaDB y presione Enter. Una vez que haya iniciado sesión en su servidor de base de datos, debe crear una base de datos para Instalación de phpMyAdmin:
MariaDB> CREATE DATABASE app_db; MariaDB> CREATE USER 'app_user'@'localhost' IDENTIFIED BY 'your-strong-password'; MariaDB> GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'localhost' WITH GRANT OPTION; MariaDB> FLUSH PRIVILEGES; MariaDB> EXIT;
Paso 4. Instalación de phpMyAdmin en Debian 11.
De forma predeterminada, phpMyAdmin no está disponible en el repositorio de Debian 11 Bullseye, por lo que deberá descargar manualmente phpMyAdmin desde la página oficial:
wget https://files.phpmyadmin.net/phpMyAdmin/5.1.1/phpMyAdmin-5.1.1-all-languages.tar.gz
Luego, extraiga el archivo phpMyAdmin al directorio raíz de su servidor web:
tar xvf phpMyAdmin-5.1.1-all-languages.tar.gz sudo mv phpMyAdmin-5.1.1-all-languages /usr/share/phpMyAdmin
Paso 5. Configure phpMyAdmin.
Ahora copiamos el archivo de configuración de muestra de phpMyAdmin y le cambiamos el nombre de la siguiente manera:
sudo cp -pr /usr/share/phpMyAdmin/config.sample.inc.php /usr/share/phpMyAdmin/config.inc.php
Luego, edite el archivo de configuración:
sudo nano /usr/share/phpMyAdmin/config.inc.php
Generar un secreto blowfish y actualizar el secreto en el archivo de configuración:
$cfg['blowfish_secret'] = 'eDjtEzAk8N3Rk}AFY.vBW}UtYL7VPbGo'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
Además, descomente la configuración de almacenamiento de phpMyAdmin:
/** * phpMyAdmin configuration storage settings. */ /* User used to manipulate with storage */ $cfg['Servers'][$i]['controlhost'] = 'localhost'; // $cfg['Servers'][$i]['controlport'] = ''; $cfg['Servers'][$i]['controluser'] = 'pma'; $cfg['Servers'][$i]['controlpass'] = 'pmapass'; /* Storage database and tables */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma__bookmark'; $cfg['Servers'][$i]['relation'] = 'pma__relation'; $cfg['Servers'][$i]['table_info'] = 'pma__table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma__table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma__pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma__column_info'; $cfg['Servers'][$i]['history'] = 'pma__history'; $cfg['Servers'][$i]['table_uiprefs'] = 'pma__table_uiprefs'; $cfg['Servers'][$i]['tracking'] = 'pma__tracking'; $cfg['Servers'][$i]['userconfig'] = 'pma__userconfig'; $cfg['Servers'][$i]['recent'] = 'pma__recent'; $cfg['Servers'][$i]['favorite'] = 'pma__favorite'; $cfg['Servers'][$i]['users'] = 'pma__users'; $cfg['Servers'][$i]['usergroups'] = 'pma__usergroups'; $cfg['Servers'][$i]['navigationhiding'] = 'pma__navigationhiding'; $cfg['Servers'][$i]['savedsearches'] = 'pma__savedsearches'; $cfg['Servers'][$i]['central_columns'] = 'pma__central_columns'; $cfg['Servers'][$i]['designer_settings'] = 'pma__designer_settings'; $cfg['Servers'][$i]['export_templates'] = 'pma__export_templates';
Paso 6. Configure la base de datos y el usuario para phpMyAdmin.
Ahora creamos la base de datos y las tablas de almacenamiento de configuración ejecutando el siguiente comando a continuación:
sudo mysql < /usr/share/phpMyAdmin/sql/create_tables.sql -u root -p
Luego, conéctese al shell de MariaDB con el siguiente comando:
sudo mysql -u root -p
Una vez que esté conectado, otorgue todos los privilegios necesarios a la base de datos phpMyAdmin:
CREATE USER 'pma'@'localhost' IDENTIFIED BY 'pmapass'; GRANT ALL PRIVILEGES ON phpmyadmin.* TO 'pma'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES; EXIT;
Paso 7. Configure Nginx para phpMyAdmin.
Ahora creamos un archivo de configuración de host virtual Nginx para phpMyAdmin:
sudo nano /etc/nginx/conf.d/phpMyAdmin.conf
Agregue el siguiente archivo:
server { listen 80; server_name pma.your-domain.com; root /usr/share/phpMyAdmin; location / { index index.php; } ## Images and static content is treated different location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ { access_log off; expires 30d; } location ~ /\.ht { deny all; } location ~ /(libraries|setup/frames|setup/libs) { deny all; return 404; } location ~ \.php$ { include /etc/nginx/fastcgi_params; fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /usr/share/phpMyAdmin$fastcgi_script_name; } }
Guarde y cierre, luego cree un tmp
directorio para phpMyAdmin y luego cambie el permiso:
sudo mkdir /usr/share/phpMyAdmin/tmp sudo chmod 777 /usr/share/phpMyAdmin/tmp
A continuación, establezca la propiedad adecuada en el directorio phpMyAdmin:
sudo chown -R www-data:www-data /usr/share/phpMyAdmin
Finalmente, reinicie los servicios Nginx y PHP-fpm:
sudo systemctl restart nginx sudo systemctl restart php7.4-fpm
Paso 8. Acceso a la interfaz web de phpMyAdmin.
Una vez instalado correctamente, abra su navegador y navegue hasta http://your-domain.com/
y su phpMyAdmin le pedirá el usuario y la contraseña de su instalación de MySQL, puede usar root como usuario y la contraseña de MySQL root.
¡Felicitaciones! Ha instalado correctamente phpMyAdmin. Gracias por usar este tutorial para instalar la última versión de phpMyAdmin con Nginx en Debian 11 Bullseye. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial Sitio web de phpMyAdmin.