Servidor MariaDB + Adminer

_images/mariadb.png

Después de instalar nuestro Servidor Web con Lighttpd y PHP, vamos a completarlo instalando el Servidor de Bases de Datos MariaDB y Adminer, como interfaz web de gestión para la manipulación de bases de datos MySQL.

MariaDB es compatible con la mayoría de las aplicaciones escritas para MySQL. A menudo se utiliza como sustituto de MySQL en sistemas operativos como Ubuntu. Es importante destacar que ofrece alta disponibilidad, rendimiento y escalabilidad, lo que la convierte en una excelente opción para aplicaciones web y de servidor.

Instalación de MariaDB

sudo apt-get update
sudo apt-get install mariadb-server -y

Este comando descargará e instalará el paquete MariaDB en su sistema Raspbian. Durante el proceso de instalación, se le pedirá que introduzca una contraseña para el usuario root de MariaDB. Asegúrese de elegir una contraseña segura y de recordarla, ya que la necesitará más adelante para iniciar sesión en la base de datos.

Una vez finalizada la instalación, el servicio MariaDB se iniciará automáticamente y se ejecutará en segundo plano. Puede comprobar si el servicio se está ejecutando correctamente, utilizando este comando:

sudo systemctl status mariadb

Cuando finalice la instalación, podemos asegurarlo ejecutando el siguiente script:

sudo mysql_secure_installation

El script le guiará a través de una serie de preguntas para configurar la seguridad de su instancia MariaDB. A continuación, le indicamos las preguntas y le damos las respuestas recomendadas:

  1. Introduzca la contraseña para root MariaDB: Introduzca la contraseña que eligió durante la instalación de MariaDB.

  2. ¿Desea cambiar the authentication socket to unix_socket? La autenticación Unix_socket en MariaDB utiliza la identidad del sistema operativo en lugar de contraseñas para autenticar a los usuarios.

  3. ¿Desea cambiar la contraseña de root para MariaDB? Si ha elegido una contraseña segura durante la instalación, puede optar por no cambiarla. En caso contrario, cambie la contraseña por una que sea segura.

  4. ¿Desea eliminar el acceso anónimo? Recomendamos encarecidamente marcar «sí « por razones de seguridad.

  5. ¿Desea desactivar el acceso remoto a la base de datos para el usuario root? Seleccione «sí» para deshabilitar el acceso remoto, ya que esto limita el acceso a la base de datos a través de la línea de comandos.

  6. ¿Desea eliminar la base de datos de prueba de MariaDB? De nuevo seleccione «sí» para eliminar la base de datos de pruebas, ya que esta base de datos no es necesaria y puede ser un riesgo para la seguridad.

  7. ¿Desea cargar estos cambios ahora? Aquí de nuevo responda «sí» para guardar los cambios y aplicarlos a su instancia de MariaDB.

Una vez asegurado MariaDB, realizamos las siguientes pruebas:

  1. Crear un nuevo usuario MariaDB y una base de datos para relacionar ambos:

    sudo mysql -uroot -p
    
    CREATE DATABASE <dbname>;
    
    CREATE USER '<username>'@'localhost' IDENTIFIED BY '<password>';
    
    GRANT ALL PRIVILEGES ON <dbname>.* TO '<username>'@'localhost';
    
    FLUSH PRIVILEGES;
    
    exit;
    
  2. Probar la conexión con el nuevo usuario:

    sudo mysql -u<username> -p
    
  3. Si todoo ha ido bien, veremos una pantalla como esta:

    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 63
    Server version: 10.11.6-MariaDB-0+deb12u1 Debian 12
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [(none)]>
    

Instalación de Adminer

_images/adminer.png

Adminer (antes phpMyAdmin) es una completa herramienta de gestión de bases de datos escrita en PHP. A diferencia de phpMyAdmin, consiste en un único archivo listo para desplegar en el servidor de destino. Adminer está disponible para MySQL, MariaDB, PostgreSQL, SQLite, MS SQL, Oracle, Elasticsearch, MongoDB y otros a través de plugin.

Sustituyendo phpMyAdmin por Adminer y obtenemmos una interfaz de usuario más ordenada, mejor compatibilidad con las funciones de MySQL, mayor rendimiento y más seguridad.

Para instalar Adminer seguimos el siguiente proceso.

  1. Creamos una carpeta en nuestro DocumentRoot:

    sudo mkdir /var/www/html/adminer
    
  2. Entramos en la carpeta y escribimos el siguiente comando para descargar el fichero PHP necesario para hacer la magia:

    cd /var/www/html/adminer
    sudo wget https://github.com/vrana/adminer/releases/download/v4.8.1/adminer-4.8.1.php
    
  3. Lo renombramos a «index.php»:

    sudo mv adminer-4.8.1.php index.php
    
  4. Ejecutamos la aplicación:

    https://www.example.com/adminer
    
  5. Este sería el aspecto, accedemos como usuario root o el que tengamos creado en mariadb y a jugar!

_images/adminer2.png