Instalar MySQL en Debian permite establecer una infraestructura de base de datos robusta y flexible que da soporte a una amplia variedad de aplicaciones y servicios. MySQL es conocido por su escalabilidad, fiabilidad y estabilidad. Configurarlo adecuadamente mejora la eficiencia operativa y el rendimiento general del sistema de bases de datos.
Esta combinación es especialmente útil para administradores, analistas de bases de datos y empresas que manejan grandes volúmenes de información. Además, la documentación extensa y la comunidad de MySQL facilitan la resolución de problemas y la optimización de operaciones.
En esta guía, mostraremos paso a paso cómo instalar y configurar MySQL en Debian.
Los repositorios predeterminados no contienen el paquete del servidor de base de datos MySQL en Debian. Para instalarlo en un sistema Linux, siga las instrucciones que se indican a continuación. Descargaremos la versión más reciente de MySQL.
Primero, descargue el paquete de configuración del repositorio de MySQL en formato .deb
:
wget https://dev.mysql.com/get/mysql-apt-config_0.8.30-1_all.deb
Nota: Visite la página del repositorio oficial de MySQL para verificar la versión más reciente disponible.
Ahora use el archivo .deb
descargado para iniciar la instalación con dpkg
:
sudo dpkg -i mysql-apt-config_0.8.30-1_all.deb
Cuando se le solicite, seleccione "MySQL Server & Cluster" y presione Enter para continuar.
Luego, seleccione la versión que desea instalar, como por ejemplo mysql-8.4-lts
, desplácese hacia abajo y confirme con OK para continuar.
Después de configurar el repositorio, actualice el índice de paquetes del sistema para cargar la nueva información:
sudo apt update
Instale el servidor de MySQL con el siguiente comando:
sudo apt install mysql-server -y
Durante la instalación, aparecerá una interfaz para establecer la contraseña del usuario root. Elija una contraseña segura y confírmela. Al finalizar, presione OK.
Compruebe que MySQL se haya instalado correctamente ejecutando:
mysql --version
Active el servicio de MySQL para que se inicie automáticamente con el sistema:
sudo systemctl enable mysql
Inicie el servicio inmediatamente con:
sudo systemctl start mysql
Verifique que el servicio esté funcionando correctamente:
sudo systemctl status mysql
Consejo: Antes de abrir el puerto 3306
a clientes externos, consulte nuestra guía Crear un túnel SSH para MySQL, donde aprenderá a tunelizar sus conexiones mediante SSH sin exponer directamente MySQL a internet.
La contraseña creada durante la instalación inicial ya protege al usuario root de la base de datos. Sin embargo, MySQL viene con algunas configuraciones inseguras por defecto, como acceso remoto o usuarios anónimos.
Para endurecer la configuración, ejecute el siguiente script de seguridad:
sudo mysql_secure_installation
Cuando se le pregunte si desea activar el componente VALIDATE PASSWORD
, escriba Y
y presione Enter para habilitar la política de contraseñas seguras.
Luego deberá configurar varias opciones de seguridad:
Establecer contraseña para root: Ingrese una contraseña fuerte y asegúrese de que sea correcta. Para aplicar una política de contraseñas más estricta, puede ingresar 2
. Cuando se le pregunte si desea cambiar la contraseña root, escriba N
; de lo contrario, escriba Y
para modificarla.
Eliminar usuarios anónimos: Se recomienda eliminarlos. Escriba Y
y presione Enter.
Deshabilitar acceso remoto al usuario root: Para mayor seguridad, evite el acceso remoto del usuario root. Escriba Y
.
Eliminar la base de datos de prueba: Se puede eliminar la base de datos de prueba para evitar accesos no autorizados. Escriba Y
.
Puede usar la utilidad cliente mysql
para conectarse y acceder a la consola del servidor de base de datos.
Acceda a la línea de comandos y conéctese como el usuario root utilizando la contraseña establecida durante el proceso de aseguramiento:
sudo mysql -u root -p
Es una buena práctica crear una base de datos y un usuario independiente para su aplicación en lugar de utilizar el usuario root. Siga estos pasos:
CREATE DATABASE hostmandb;
SHOW DATABASES;
CREATE USER 'minhal'@'localhost' IDENTIFIED BY 'Qwer@1234';
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
sudo mysql -u minhal -p
Después de introducir la contraseña del usuario, tendrá acceso a la consola.
Verifique que la base de datos esté disponible:
SHOW DATABASES;
Si necesita acceder a MySQL desde otra máquina, configure el servidor para aceptar conexiones remotas:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
bind-address
y cambiarla por:bind-address = 0.0.0.0
sudo systemctl restart mysql
sudo mysql -u root -p
GRANT ALL PRIVILEGES ON hostmandb.* TO 'minhal'@'localhost';
FLUSH PRIVILEGES;
EXIT;
sudo ufw allow mysql
sudo ufw enable
sudo ufw reload
sudo mysqldump -u root -p hostmandb> hostmandb_backup.sql
sudo mysqldump -u root -p --all-databases > all_databases_backup.sql
sudo mysql -u root -p hostmandb < hostmandb_backup.sql
Dependiendo de la carga de trabajo y los recursos del servidor, puede ajustar configuraciones para garantizar el máximo rendimiento. Estas instrucciones le ayudarán a optimizar la velocidad de MySQL:
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Agregue o edite la siguiente línea:
innodb_buffer_pool_size = 1G
Ajuste este valor en función de la memoria disponible en su servidor.
sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf
Agregue o edite las siguientes líneas:
query_cache_type = 1
query_cache_size = 64M
USE hostmandb;
OPTIMIZE TABLE customers;
Puede analizar las operaciones de la base de datos con herramientas como MySQL Workbench y mysqltuner
. Para instalar mysqltuner
:
sudo apt install mysqltuner
Ejecute mysqltuner
para recibir recomendaciones de optimización:
sudo mysqltuner
Instalar un entorno MySQL es fundamental en el mundo digital actual. Siguiendo esta guía, podrá instalar y conectar su base de datos MySQL de forma segura. Esta estrategia no solo mejora la seguridad, sino que también facilita el mantenimiento remoto de la base de datos. Ayuda a prevenir brechas de seguridad y garantiza la confidencialidad de sus datos.
Este artículo ha proporcionado instrucciones detalladas para la instalación del entorno de base de datos MySQL en Debian. Se recomienda monitorear y optimizar regularmente los servidores MySQL para asegurar el mejor rendimiento y fiabilidad.
Además, Hostman ofrece bases de datos en la nube preconfiguradas y listas para usar, incluyendo MySQL en la nube.