Cómo instalar phpMyAdmin con Nginx en Ubuntu 18.04 LTS

phpMyAdmin es una herramienta de gestión de bases de datos basada en la web, gratuita y de código abierto, para MySQL. Se utiliza para realizar tareas de administración como crear, editar o eliminar bases de datos, y gestionar usuarios y permisos. Con phpMyAdmin, puedes importar datos desde CSV y SQL, y exportar datos a varios formatos como, CSV, SQL, XML y PDF.

En este tutorial, aprenderemos a instalar phpMyAdmin con Nginx en un servidor Ubuntu 18.04.

Requisitos

  • Un servidor con Ubuntu 18.04.
  • Una dirección IP estática 192.168.0.111 para tu servidor.
  • Un usuario no root con privilegios sudo.

Cómo empezar

Antes de empezar, tendrás que actualizar tu sistema con la última versión. Puedes hacerlo ejecutando el siguiente comando:

sudo apt-get update -y
 sudo apt-get upgrade -y

Una vez actualizado tu sistema, reinicia el sistema para aplicar los cambios.

Instalar el servidor LEMP

En primer lugar, tendrás que instalar Nginx, el servidor MariaDB, PHP y otros módulos PHP en tu sistema. Puedes instalarlos todos ejecutando el siguiente comando:

sudo apt-get install nginx php7.2 php7.2-common php7.2-mysql php7.2-mbstring php7.2-fpm php7.2-cgi php7.2-common php-pear php-gettext mariadb-server -y

Una vez instalados todos los paquetes, inicia el servicio de Nginx y MariaDB y habilítalos para que se inicien en el arranque con el siguiente comando:

sudo systemctl start nginx
sudo systemctl start mariadb
sudo systemctl enable nginx
sudo systemctl enable mariadb

Instalar phpMyAdmin

Por defecto, phpMyAdmin está disponible en el repositorio por defecto de Ubuntu 18.04. Puedes instalarlo con sólo ejecutar el siguiente comando:

sudo apt-get install phpmyadmin -y

Durante la instalación, el instalador te pedirá que elijas el servidor web como se muestra en la siguiente página.

Configurar phpMyAdmin

No selecciones ninguna opción, porque usaremos Nginx como servidor web. Por tanto, haz clic en el botón Aceptar. A continuación, se te pedirá que configures la base de datos como se muestra en la siguiente página:

Configuración común de la base de datos

Haz clic en el botón No. Deberías ver la siguiente página:

Contraseña de la aplicación MySQL

Ahora, proporciona una contraseña para que phpMyAdmin se registre en la base de datos y haz clic en el botón Aceptar. Se te pedirá que confirmes la contraseña de nuevo. Proporciona la misma contraseña y haz clic en el botón Aceptar para finalizar la instalación.

Configurar la base de datos

En primer lugar, accede al shell de MariaDB con el siguiente comando:

sudo mysql

A continuación, crea una nueva cuenta de usuario administrador y concede los permisos adecuados con el siguiente comando:

MariaDB [(none)]> CREATE USER 'phpadmin'@'localhost' IDENTIFIED BY 'mypassword';
MariaDB [(none)]> GRANT ALL PRIVILEGES ON *.* TO 'phpadmin'@'localhost' WITH GRANT OPTION;

Sustituye la palabra ‘mypassword’ por una contraseña segura de tu elección. Ahora, sal del shell de MariaDB con el siguiente comando:

MariaDB [(none)]>EXIT;

Configurar Nginx

A continuación, tendrás que crear un archivo de host virtual Nginx. Puedes hacerlo con el siguiente comando:

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

Añade las siguientes líneas:

server {
        listen 80 default_server;
        listen [::]:80 default_server;
        root /var/www/html;

        # Add index.php to the list if you are using PHP
        index index.php index.html index.htm index.nginx-debian.html;

        server_name 192.168.0.111;

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

Guarda y cierra el archivo. A continuación, comprueba que Nginx no tiene ningún error de sintaxis con el siguiente comando

sudo nginx -t

Si todo va bien, deberías ver la siguiente salida:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

A continuación, activa el archivo de host virtual de phpmyadmin y elimina el archivo de host virtual por defecto con el siguiente comando:

sudo rm -rf /etc/nginx/sites-enabled/default
sudo ln -s /etc/nginx/sites-available/phpmyadmin.conf /etc/nginx/sites-enabled/

A continuación, reinicia el servicio Nginx para aplicar los cambios con el siguiente comando:

sudo systemctl restart nginx

A continuación, comprueba el estado de Nginx con el siguiente comando:

sudo systemctl status nginx

Deberías ver la siguiente salida:

? nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Tue 2019-01-15 11:10:29 UTC; 2min 0s ago
     Docs: man:nginx(8)
  Process: 14871 ExecStop=/sbin/start-stop-daemon --quiet --stop --retry QUIT/5 --pidfile /run/nginx.pid (code=exited, status=0/SUCCESS)
  Process: 14885 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 14874 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 14886 (nginx)
    Tasks: 2 (limit: 1113)
   CGroup: /system.slice/nginx.service
           ??14886 nginx: master process /usr/sbin/nginx -g daemon on; master_process on;
           ??14887 nginx: worker process

Jul 15 11:10:29 ubuntu1804 systemd[1]: Stopped A high performance web server and a reverse proxy server.
Jul 15 11:10:29 ubuntu1804 systemd[1]: Starting A high performance web server and a reverse proxy server...
Jul 15 11:10:29 ubuntu1804 systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Jul 15 11:10:29 ubuntu1804 systemd[1]: Started A high performance web server and a reverse proxy server.

Accede a phpMyAdmin

Ahora que phpMyAdmin está instalado y configurado, es el momento de acceder a la interfaz web de phpMyAdmin.

Abre tu navegador web y escribe la URL http://192.168.0.111/phpmyadmin/. Serás redirigido a la siguiente página:

Acceso a PHPMyAdmin

Ahora, proporciona tu nombre de usuario y contraseña de administrador. A continuación, haz clic en el botón Ir. Deberías ver el panel de control predeterminado de phpMyAdmin en la siguiente página:

PHPMyAdmin en Ubuntu 18.04 LTS

Enhorabuena! has instalado y configurado correctamente phpMyAdmin en tu servidor Ubuntu 18.04 LTS. Ahora puedes gestionar tu base de datos MariaDB a través de la interfaz web de phpMyAdmin. No dudes en preguntarme si tienes alguna duda.

También te podría gustar...