Cómo instalar MySQL Server en Debian 11 Bullseye

En este artículo veremos cómo instalar MySQL Server en Debian 11 Bullseye paso a paso, de forma que puedas disfrutar fácilmente de este motor de bases de datos relacionales sobre tu servidor o VPS Debian.

Antes de instalar MySQL Server en Debian 11 Bullseye

Si quieres seguir los pasos de esta guía de instalación de MySQL Server en Debian 11 Bullseye sólo necesitas partir de los siguientes requerimientos mínimos:

  • Una máquina Debian 11 Bullseye actualizada.
  • Un usuario con privilegios de sudo.
  • Acceso a Internet.

También necesitaremos algunas herramientas procedentes de los repositorios del sistema, así que los actualizamos:

~$ sudo apt update

E instalamos dichas herramientas:

~$ sudo apt install -y gnupg wget

Con todo lo necesario ya listo, asegúrate de haber regulado correctamente la altura de tu escritorio y empezamos con el trabajo.

¡Ahorra 50,00 EUR!Superventas nº 1 FLEXISPOT EC1 Escritorio de Pie con Tablero(Arce, 100X60cm), Standing Desk, Escritorio Eléctrico Soporte Ajustable en Altura
¡Ahorra 17,95 EUR!Superventas nº 2 DlandHome Carro de Escritorio Sentado & de Pie Mesa de Escritorio móvil de Altura Ajustable para Sentarse Mesa Vertical de pie Escritorio móvil de la estación de Trabajo, Negro
¡Ahorra 53,38 EUR!Superventas nº 3 PUTORSEN 32' Convertidor de Escritorio de pie, ergonómico Altura Ajustable Sentarse Stand Up Escritorio convertidor, Bandeja Desmontable Teclado - Negro

Configuración del repositorio oficial de MySQL para Debian 11 Bullseye

Vamos a ver cómo configurar el repositorio oficial de MySQL Server para Debian 11 Bullseye ya que, debido al tipo de licencia de este software, no está incluido en los repositorios del sistema.

Visitaremos la página de descargas para APT del sitio oficial de MySQL, donde encontraremos un paquete que contiene la configuración del repositorio oficial:

como descargar mysql server para debian 11 bullseye

Siguiendo el enlace «Download» se muestra una página que nos permitiría iniciar sesión o crear nuestra cuenta de MySQL.com, pero no es necesario, ya que la descarga se encuentra en el enlace «No thanks, just start my download«.

descargar mysql server para debian 11 bullseye

Si trabajamos remotamente sobre la máquina Debian 11, podemos realizar la descarga desde consola con alguna herramienta como wget:

~$ wget https://dev.mysql.com/get/mysql-apt-config_0.8.19-1_all.deb

Una vez descargado este paquete procedemos a instalarlo:

~$ sudo dpkg -i mysql-apt-config_0.8.19-1_all.deb

Al instalarse este paquete se lanzará un pequeño configurador en modo consola que nos mostrará las características que ofrece por defecto el nuevo repositorio:

como instalar mysql server 8.0 en debian 11 bullseye

La primera opción nos muestra la versión de MySQL que se va a instalar, por defecto MySQL Server 8.0, aunque sería posible cambiarla por MySQL Cluster 8.0.

Por defecto, la segunda opción nos informa de que está activado el repositorio de herramientas y conectores, que es lo deseable, aunque podríamos desactivarlo.

Y, finalmente, la tercera opción ofrece un repositorio de software en pruebas, experimental, etc. que, con buen criterio, está desactivado inicialmente (aunque se puede activar).

Para salir del configurador seleccionaremos «Ok» y el instalador configurará el repositorio con los valores seleccionados.

Debemos actualizar la información de los repositorios para que se incluyan las nuevas listas de paquetes disponibles:

~$ sudo apt update

Cómo instalar MySQL Server en Debian 11 Bullseye

Llega el momento de instalar MySQL Server en Debian 11 desde el nuevo repositorio, siendo mysql-server el paquete que necesitamos:

~$ sudo apt install -y mysql-server

Una vez descargados este paquete y sus dependencias, durante la instalación de los mismos, se nos solicitará la contraseña del usuario administrador root de MySQL:

instalar mysql server en debian 11 bullseye

Si dejamos la contraseña en blanco se usará la autenticación por sockets de Unix, es decir, sólo el usuario root de Debian 11 o usuarios privilegiados con sudo podrán conectar como usuario root de MySQL. En cambio, si creamos una contraseña se usará el típico sistema de usuario/contraseña para acceder como root a MySQL Server. Depende de tus necesidades o gustos elegir uno u otro sistema.

Este instalador también nos advierte de la disponibilidad del nuevo plugin mejorado de autenticación, que tiene la desventaja de no ser compatible con conectores y clientes antiguos:

instalacion de mysql server en debian 11 bullseye

Si fuera necesario, se puede configurar el antiguo plugin de autenticación mysql_native_password o, algo más sencillo, crear usuarios que utilicen dicho plugin para las aplicaciones y conectores antiguos que lo requieran.

En cualquier caso, el instalador nos permite qué plugin de autenticación usar por defecto:

instalador de mysql server para debian 11 bullseye

Terminada esta pequeña configuración inicial, la instalación termina creando un nuevo servicio en Debian 11, el servicio mysql.service o simplemente mysql, que queda en ejecución y habilitado para su inicio automático.

Podemos comprobar en cualquier momento el estado de dicho servicio con el comando systemctl:

~$ systemctl status mysql

servicio mysql en debian 11 bullseye

También disponemos del cliente de consola mysql que podemos utilizar para conectar al servicio con el usuario root, si elegimos el acceso por sockets de Unix:

~$ sudo mysql

O especificando usuario y contraseña:

~$ mysql -u root -p

mysql server en debian 11 bullseye

Al establecer conexión se mostrará la versión instalada de MySQL Server.

Cómo crear tu propio usuario administrador

Es posible que necesites un usuario administrador de MySQL Server con acceso mediante contraseña para conectar al servicio desde aplicaciones, gestores, clientes gráficos, conexiones remotas, etc. dejando al usuario root con acceso únicamente local.

Esto es fácil de hacer desde el cliente mysql, en el que creamos un usuario con contraseña:

> create user chacho identified by 'XXXXXXXX';

Y a continuación aplicamos permisos sobre todas las bases de datos y modificación de permisos de otros usuarios:

> grant all privileges on *.* to chacho with grant option;

Refrescamos la tabla de permisos:

> flush privileges;

Y cerramos la conexión:

> exit

Cómo configurar MySQL Server en Debian 11 Bullseye

A la hora de configurar MySQL Server en Debian 11 es destacable reseñar que los valores por defectos son bastante seguros, ya que no existen usuarios anónimos ni base de datos de pruebas, y el usuario root no puede acceder remotamente.

Además, el juego de caracteres por defecto que emplea el servicio es UTF8MB4, lo que ofrece total compatibilidad con idiomas como el español y otros, repletos de caracteres «especiales».

En cualquier caso, si necesitamos configurar cualquier aspecto de MySQL Server, los archivos de configuración se encuentran organizados bajo la ruta /etc/mysql/, siendo mysql.cnf el archivo principal que básicamente se encarga de incluir el resto de archivos de configuración.

Realizado cualquier cambio de configuración de MySQL Server en Debian 11, será necesario reiniciar el servicio:

~$ sudo systemctl restart mysql

Este servicio no permite simplemente volver a cargar la configuración sin necesidad de reinicio (la típica opción reload de systemctl).

Acceso remoto

Por defecto MySQL Server en Debian 11 permite conexiones entrantes desde red (acceso remoto) en las que podríamos usar nuestro usuario administrador creado en pasos anteriores.

Si tenemos activado el firewall UFW en Debian 11 será necesario añadir una regla que permita acceder a MySQL Server desde red:

~$ sudo ufw allow mysql

Para probar el acceso remoto, desde otra máquina en red usamos algún cliente, como mysql de consola, especificando la dirección del servidor Debian 11 en el que corre MySQL Server y el usuario con el que queremos conectar con contraseña:

~$ mysql -h debian11.local.lan -u chacho -p

acceso remoto a mysql server en debian 11 bullseye

Desactivar el acceso remoto

En muchas ocasiones no se necesita para nada la característica de acceso remoto, así que por serguridad nunca está de más desactivarla, independientemente de la configuración del firewall. Para ello editamos el archivo mysqld.cnf:

~$ sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

Buscamos la sección mysqld:

...
[mysqld]
pid-file        = /var/run/mysqld/mysqld.pid
socket          = /var/run/mysqld/mysqld.sock
datadir         = /var/lib/mysql
log-error       = /var/log/mysql/error.log
...

Y añadimos la directiva bind-address con el valor 127.0.01:

...
[mysqld]
...
bind-address    = 127.0.0.1
...

Una vez guardados los cambios será necesario reiniciar el servicio:

~$ sudo systemctl restart mysql

Desde este momento sólo se permiten conexiones TCP/IP locales al servicio.

Conclusión

Ahora que sabes cómo instalar MySQL Server en Debian 11 Bullseye ya puedes trabajar con el motor de bases de datos relacionales más famoso y usado en todo el mundo, ya sea para tus propios desarrollos o como base para aplicaciones y plataformas de terceros.

Si tienes alguna duda, pregunta, sugerencia, etc. puedes dejar un comentario (están moderados ya que recibimos mucho SPAM, pero se revisan prácticamente a diario).

¡Apóyanos!

Si gracias a esta pequeña guía de instalación y configuración ya puedes trabajar con bases de datos en tu propia máquina y quieres agradecérnoslo, cualquier pequeña contribución ayuda al mantenimiento de este sitio y la creación de más guías y tutoriales.

Puedes ayudarnos dejando una propina a partir de 1 $ desde PayPal:

O, si te sientes especialmente agradecido, puedes invitarnos a un café:

¡Gracias!

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies