{"id":47557,"date":"2026-05-14T17:17:49","date_gmt":"2026-05-14T15:17:49","guid":{"rendered":"https:\/\/www.hostinger.com\/mx\/tutoriales\/instalar-mysql-en-ubuntu\/"},"modified":"2026-05-14T17:17:49","modified_gmt":"2026-05-14T15:17:49","slug":"instalar-mysql-en-ubuntu","status":"publish","type":"post","link":"\/mx\/tutoriales\/instalar-mysql-en-ubuntu","title":{"rendered":"C\u00f3mo instalar MySQL en Ubuntu 24.04"},"content":{"rendered":"<p>Para alojar una aplicaci&oacute;n o una web din&aacute;mica, necesitas configurar una base de datos en el backend donde almacenar la informaci&oacute;n de los usuarios. MySQL es una de las opciones m&aacute;s populares y se usa en todo tipo de proyectos con distintos stacks web.<\/p><p>En este tutorial, te explicaremos c&oacute;mo instalar MySQL en <strong>Ubuntu 24.04<\/strong> paso a paso. Tambi&eacute;n veremos algunos ajustes b&aacute;sicos de configuraci&oacute;n para que puedas dejar tu base de datos lista para implementarla.<\/p><h2 class=\"wp-block-heading\" id=\"h-que-necesitas-para-instalar-mysql-en-ubuntu\"><strong>Qu&eacute; necesitas para instalar MySQL en Ubuntu<\/strong><\/h2><p>Antes de instalar MySQL, aseg&uacute;rate de tener un VPS (servidor privado virtual ) donde alojar la base de datos. Puedes usar un servidor solo para la base de datos o el mismo sistema en el que se ejecutar&aacute; tu app web, siempre que tenga suficientes n&uacute;cleos de CPU, RAM y almacenamiento.<\/p><p>MySQL no tiene requisitos m&iacute;nimos de hardware estrictos. Depender&aacute; en gran medida del volumen de tr&aacute;fico y de datos que esperas gestionar. Como punto de partida, te recomendamos un sistema con una CPU de <strong>un n&uacute;cleo<\/strong>, <strong>2 GB<\/strong> de RAM y <strong>10 GB<\/strong> de almacenamiento.<\/p><p>Si a&uacute;n no tienes un servidor donde alojar la base de datos, te recomendamos <a href=\"\/mx\/servidor-vps\">la soluci&oacute;n VPS Linux de Hostinger<\/a>, que cuesta desde<strong> 6,49 $ al mes<\/strong>. Adem&aacute;s de hardware fiable, nuestras funciones VPS, como el asistente de IA Kodee y Browser Terminal, pueden ayudarte a simplificar el proceso de instalaci&oacute;n de MySQL si est&aacute;s empezando.<\/p><p>Puedes conectarte a tu VPS como root directamente desde tu navegador usando <strong>Browser Terminal <\/strong>y pedirle a <strong>Kodee <\/strong>que te gu&iacute;e en la administraci&oacute;n de tu base de datos. Veremos estas herramientas en acci&oacute;n en las siguientes secciones.<\/p><p>Adem&aacute;s, aseg&uacute;rate de que tu sistema ejecute <strong>Ubuntu 24.04<\/strong> para evitar problemas de compatibilidad y riesgos de seguridad habituales en versiones anteriores. Los usuarios de Hostinger pueden instalar f&aacute;cilmente esta versi&oacute;n de Ubuntu sin comandos <a href=\"\/es\/support\/4965922-como-cambiar-el-sistema-operativo-de-tu-vps-en-hostinger\/\">utilizando la plantilla del sistema operativo<\/a>.<\/p><p><div class=\"protip\">\n                    <h4 class=\"title\">&iquest;Necesitas un proceso de instalaci&oacute;n m&aacute;s sencillo?<\/h4>\n                    <p>Los usuarios de Hostinger pueden instalar f&aacute;cilmente MySQL en su VPS sin comandos solo configurando la plantilla del sistema operativo. Sin embargo, esta base de datos solo est&aacute; disponible como parte de pilas web preconfiguradas y se ejecuta en Ubuntu 22.04.<\/p>\n                <\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"\/mx\/servidor-vps\" target=\"_blank\" rel=\"noreferrer noopener\"><img decoding=\"async\" width=\"1024\" height=\"300\" src=\"https:\/\/blog.hostinger.io\/mx-tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner-1024x300.png\" alt=\"\" class=\"wp-image-29287\" srcset=\"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner.png 1024w, https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner-300x88.png 300w, https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner-150x44.png 150w, https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner-768x225.png 768w, https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-content\/uploads\/sites\/39\/2023\/02\/ES-VPS-hosting_in-text-banner-1536x450.png 1536w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<\/p><h2 class=\"wp-block-heading\" id=\"h-instalar-mysql-en-un-vps-con-ubuntu-24-04\">Instalar MySQL en un VPS con Ubuntu 24.04<\/h2><p>Cuando hayas comprobado que cumples los requisitos previos, sigue estos pasos para instalar MySQL en Ubuntu 24.04.<\/p><h3 class=\"wp-block-heading\">1. Con&eacute;ctate a tu servidor<\/h3><p>Como para instalar MySQL hay que ejecutar comandos de forma remota en tu VPS, primero debes conectarte por SSH con <a href=\"\/mx\/tutoriales\/conectar-usando-terminal-putty-ssh\">PuTTY<\/a> o Terminal.<\/p><p>Si usas Terminal, ejecuta el siguiente comando para conectarte a tu servidor remoto. Recuerda sustituir <strong>185.185.185.185<\/strong> por la direcci&oacute;n IP real de tu VPS:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">ssh root@185.185.185.185<\/pre><p>Como alternativa, los usuarios de Hostinger pueden usar la funci&oacute;n creada de <strong>terminal del navegador<\/strong>.<\/p><div class=\"wp-block-image\"><figure data-wp-context='{\"imageId\":\"6a073ff650eb6\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-large wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2026\/05\/browser-terminal-ES-1024x403.png\" alt=\"El bot&oacute;n Browser terminal en la p&aacute;gina Overview del VPS de hPanel\" class=\"wp-image-53085\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Agrandar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Solo tienes que abrir <strong>hPanel <\/strong>&rarr; <strong>barra lateral <\/strong>&rarr; <strong>VPS <\/strong>&rarr; <strong>Administrar <\/strong>y hacer clic en el bot&oacute;n <strong>&laquo;Terminal del navegador&raquo; <\/strong>en la esquina superior derecha. Esta herramienta te inicia sesi&oacute;n autom&aacute;ticamente como root, lo que hace que el proceso sea m&aacute;s eficiente.<\/p><h3 class=\"wp-block-heading\"><strong>2. Actualiza el &iacute;ndice de paquetes<\/strong><\/h3><p>Una vez que hayas iniciado sesi&oacute;n como <strong>root<\/strong>, actualicemos el repositorio de paquetes de tu sistema para asegurarnos de que obtienes la &uacute;ltima versi&oacute;n de MySQL. Para ello, ejecuta el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt update<\/pre><p>Aunque no es obligatorio, tambi&eacute;n te recomendamos actualizar los paquetes instalados a la &uacute;ltima versi&oacute;n con este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt upgrade<\/pre><p>Actualizar todos los paquetes antes de instalar MySQL ayuda a evitar problemas de incompatibilidad que podr&iacute;an surgir al usar software antiguo.<\/p><h3 class=\"wp-block-heading\"><strong>3. Instala MySQL<\/strong><\/h3><p>Ahora que tu sistema est&aacute; listo, instalemos el paquete del servidor MySQL ejecutando el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo apt install mysql-server<\/pre><p>Pulsa <strong>Y <\/strong>si la l&iacute;nea de comandos te pide confirmaci&oacute;n. Espera a que termine la instalaci&oacute;n, lo que deber&iacute;a tardar unos 15 minutos, dependiendo de la velocidad de tu conexi&oacute;n a Internet.<\/p><p>Una vez completada la instalaci&oacute;n, ejecuta el siguiente comando para comprobar que MySQL est&aacute; correctamente configurado:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql -V<\/pre><p>Si la l&iacute;nea de comandos muestra el n&uacute;mero de versi&oacute;n de MySQL instalado, el servidor de bases de datos est&aacute; instalado. De lo contrario, ver&aacute;s el error &laquo;<strong>Command not found<\/strong>&raquo;, lo que significa que debes volver a ejecutar el comando de instalaci&oacute;n.<\/p><div class=\"wp-block-image\"><figure data-wp-context='{\"imageId\":\"6a073ff653022\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2026\/05\/La-terminal-muestra-la-version-instalada-de-MySQL.png\" alt=\"La terminal muestra la versi&oacute;n de MySQL instalada.\" class=\"wp-image-53035\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Agrandar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p><div><p class=\"important\"><strong>&iexcl;Importante!<\/strong> F&iacute;jate en la opci&oacute;n V en may&uacute;scula. Si la escribes en min&uacute;scula, puede dar error, ya que los <a href=\"\/mx\/tutoriales\/linux-comandos\">comandos de Linux<\/a> distinguen entre may&uacute;sculas y min&uacute;sculas.<\/p><\/div>\n\n\n\n<\/p><h3 class=\"wp-block-heading\"><strong>4. Configuraci&oacute;n segura de MySQL<\/strong><\/h3><p>MySQL utilizar&aacute; la configuraci&oacute;n predeterminada tal y como viene de f&aacute;brica, lo que puede ser inseguro. Por ejemplo, no establece una contrase&ntilde;a para el usuario root de la base de datos, lo que permite que personas no autorizadas accedan a la cuenta.<\/p><p>Para minimizar los riesgos de seguridad, ejecuta el asistente de instalaci&oacute;n segura de MySQL introduciendo el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo mysql_secure_installation<\/pre><p>Mientras usas el asistente, puedes ajustar varias opciones de seguridad respondiendo a las preguntas que aparecen. Esto es lo que puedes hacer durante el proceso:<\/p><ul class=\"wp-block-list\">\n<li>Validar la seguridad de las contrase&ntilde;as para evitar que se usen credenciales d&eacute;biles.<\/li>\n\n\n\n<li>Desactivar el inicio de sesi&oacute;n remoto como root para permitir el acceso a la base de datos solo desde localhost.<\/li>\n\n\n\n<li>Eliminar las cuentas de usuario an&oacute;nimas, que permiten que cualquier usuario inicie sesi&oacute;n en tu base de datos.&nbsp;<\/li>\n\n\n\n<li>Eliminar la base de datos de prueba predeterminada, accesible para todos los usuarios.<\/li>\n<\/ul><h3 class=\"wp-block-heading\"><strong>5. Comprueba que MySQL funciona<\/strong><\/h3><p>Despu&eacute;s de instalar MySQL, comprobemos si funciona correctamente. Empieza por comprobar si est&aacute; en ejecuci&oacute;n con este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl status mysql<\/pre><p>Deber&iacute;as ver el estado del servicio MySQL como <strong>Activo (En ejecuci&oacute;n)<\/strong>. Si no es as&iacute;, puedes iniciarlo manualmente con este comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl start mysql<\/pre><p>Como alternativa, los usuarios de Hostinger pueden comprobar r&aacute;pidamente el estado del servicio MySQL pregunt&aacute;ndole <strong>al asistente de IA Kodee<\/strong>. Abre <strong>hPanel <\/strong>y haz clic <strong>en &laquo;Administrar&raquo; <\/strong>en tu VPS. Ve a la barra lateral y selecciona <strong>&laquo;Kodee<\/strong>&raquo;. A continuaci&oacute;n, haz tu pregunta de esta manera.<\/p><figure class=\"wp-block-image size-full\"><img decoding=\"async\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2026\/05\/Kodee-verifica-el-estado-del-servicio-de-un-VPS-1.png\" alt=\"Kodee verifica el estado de un servicio en un VPS\" class=\"wp-image-53037\"><\/figure><p>Ahora, entremos en el shell de MySQL. Desde ah&iacute; podr&aacute;s ejecutar sentencias SQL para interactuar con tu base de datos, incluyendo la creaci&oacute;n de una nueva tabla para recuperar datos. Este es el comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo mysql -u root<\/pre><p>Introduce la contrase&ntilde;a de root y tu l&iacute;nea de comandos deber&iacute;a cambiar a <strong>MySQL&gt;<\/strong>. Esto significa que MySQL funciona correctamente y ya puedes empezar a administrar la base de datos.<\/p><h2 class=\"wp-block-heading\" id=\"h-configuracion-basica-de-mysql\"><strong>Configuraci&oacute;n b&aacute;sica de MySQL<\/strong><\/h2><p>Es posible que tengas que cambiar algunos ajustes b&aacute;sicos de MySQL para que la base de datos funcione seg&uacute;n tus necesidades.<\/p><p><strong>Cambiar el directorio de datos<\/strong><\/p><p>A medida que la base de datos acumule m&aacute;s datos, necesitar&aacute; m&aacute;s espacio de almacenamiento y recursos para operaciones de E\/S m&aacute;s intensivas. Si el entorno de hosting actual no tiene recursos de hardware asignados, tu aplicaci&oacute;n podr&iacute;a fallar.<\/p><p>Cambiar el directorio de datos soluciona este problema porque permite guardar la base de datos en otra ubicaci&oacute;n. En una instalaci&oacute;n nueva de MySQL, esto te permite separar la base de datos de los archivos del sistema de tu servidor, evitando la sobrecarga del disco.<\/p><p>A continuaci&oacute;n te explicamos c&oacute;mo cambiar el directorio de la base de datos:<\/p><ol class=\"wp-block-list\">\n<li>Inicia sesi&oacute;n en la cuenta de usuario root de MySQL:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql -u root -p<\/pre><ol start=\"2\" class=\"wp-block-list\">\n<li>Ejecuta la siguiente instrucci&oacute;n para comprobar la ubicaci&oacute;n de tu directorio de datos activo, que por defecto es <strong>\/var\/lib\/mysql\/<\/strong>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">SELECT @@datadir;<\/pre><ol start=\"3\" class=\"wp-block-list\">\n<li>Escribe <strong>exit <\/strong>para salir del shell de MySQL y volver a la l&iacute;nea de comandos principal.<\/li>\n\n\n\n<li>Det&eacute;n temporalmente el servicio MySQL para evitar cambios en los datos durante la migraci&oacute;n:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl stop mysql<\/pre><ol start=\"5\" class=\"wp-block-list\">\n<li>Mueve el directorio de datos a la nueva ubicaci&oacute;n usando <a href=\"\/mx\/tutoriales\/rsync-linux\">rsync<\/a>. Recuerda sustituir el marcador de posici&oacute;n de destino por el valor real:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo rsync -av \/var\/lib\/mysql \/path\/destination<\/pre><ol start=\"6\" class=\"wp-block-list\">\n<li>Vuelve a configurar MySQL para que encuentre los datos en el nuevo directorio. Empieza abriendo el archivo de configuraci&oacute;n <a href=\"\/mx\/tutoriales\/instalar-nano-text-editor\">con un editor de texto como Nano<\/a>:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nano \/etc\/mysql\/mysql.conf.d\/mysqld.cnf<\/pre><ol start=\"7\" class=\"wp-block-list\">\n<li>Introduce tu nuevo directorio de datos en la variable<strong> datadir <\/strong>de la siguiente manera:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">datadir=\/path\/destination<\/pre><ol start=\"8\" class=\"wp-block-list\">\n<li>Cambia la configuraci&oacute;n <strong>de AppArmor<\/strong> de Ubuntu para permitir que MySQL modifique los datos en el nuevo directorio. Este es el comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">echo \"alias \/var\/lib\/mysql\/ -&amp;gt; \/tu\/nuevo\/datadir\/,\" &amp;gt;&amp;gt; \/etc\/apparmor.d\/tunables\/alias<\/pre><ol start=\"9\" class=\"wp-block-list\">\n<li>Vuelve a cargar AppArmor para aplicar los cambios:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo \/etc\/init.d\/apparmor reload<\/pre><ol start=\"10\" class=\"wp-block-list\">\n<li>Reinicia el servicio MySQL con el siguiente comando:<\/li>\n<\/ol><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo systemctl start mysql<\/pre><p>Los pasos para mover el directorio de datos a otro servidor son similares, con la diferencia de que debes usar un destino remoto con <strong>rsync<\/strong>. Tambi&eacute;n debes editar el archivo de configuraci&oacute;n de MySQL del servidor para que apunte al nuevo almacenamiento.<\/p><p><strong>Activar el acceso remoto<\/strong><\/p><p>Por defecto, solo puedes acceder a tu base de datos desde el servidor host. MySQL bloquea las conexiones remotas desde sistemas externos para evitar accesos no autorizados que puedan comprometer la seguridad.<\/p><p>El problema es que esto te impide integrar programas de terceros, administrar la base de datos desde otra m&aacute;quina o conectar aplicaciones alojadas en otro sistema, lo que puede causar problemas de funcionamiento.<\/p><p>Para permitir que otros sistemas accedan a tu base de datos, a&ntilde;ade sus direcciones IP a tu archivo de configuraci&oacute;n de MySQL. Para obtener m&aacute;s informaci&oacute;n sobre los pasos a seguir, lee nuestro tutorial sobre <a href=\"\/mx\/tutoriales\/como-conceder-conexion-remota-a-mysql\">c&oacute;mo conceder acceso remoto a MySQL<\/a>.<\/p><p><div><p class=\"important\"><strong>&iexcl;Importante!<\/strong> Dado que el acceso remoto a tu base de datos MySQL puede exponer tu servidor a riesgos de seguridad, act&iacute;valo solo si es necesario.<\/p><p>Si necesitas acceso remoto, aseg&uacute;rate de que la configuraci&oacute;n de MySQL y del firewall solo permita direcciones IP de confianza. Adem&aacute;s, utiliza contrase&ntilde;as seguras para todas las cuentas de usuario remotas de MySQL y evita concederles todos los privilegios a menos que sea necesario.<\/p><p>Tambi&eacute;n te recomendamos que <a href=\"https:\/\/www.geeksforgeeks.org\/how-to-enable-mysql-query-log\/\" target=\"_blank\" rel=\"noopener\">habilites el registro de MySQL<\/a> editando el archivo de configuraci&oacute;n. Esta configuraci&oacute;n te ayuda a identificar actividades maliciosas en tu base de datos m&aacute;s f&aacute;cilmente.<\/p><\/div>\n\n\n\n<\/p><p>Una vez habilitado el acceso remoto, aseg&uacute;rate de haber <a href=\"\/mx\/tutoriales\/como-crear-usuario-mysql\">creado un usuario de MySQL<\/a> con privilegios para conectarse al servidor de la base de datos.<\/p><p>Para iniciar sesi&oacute;n en MySQL de forma remota, ejecuta el siguiente comando desde el equipo con acceso permitido. Sustituye <strong>&laquo;username&raquo; <\/strong>por el nombre real de la cuenta e ingresa tu contrase&ntilde;a:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql -u username -h your_vps_ip -p<\/pre><p>Para permitir que otro sistema acceda a una base de datos existente, a&ntilde;ade su direcci&oacute;n IP como host. Despu&eacute;s de iniciar sesi&oacute;n como usuario root de MySQL, introduce lo siguiente:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">UPDATE mysql.db SET Host='your_remote_system_ip' WHERE Db=ExistingDatabaseName;<\/pre><p><strong>Ajustar el archivo de configuraci&oacute;n de MySQL<\/strong><\/p><p>Puedes cambiar varios ajustes de MySQL, como los de red y registro, editando los archivos de configuraci&oacute;n.<\/p><p>Ten en cuenta que MySQL tiene varios archivos de configuraci&oacute;n, y debes averiguar cu&aacute;l est&aacute; utilizando tu servidor de bases de datos ejecutando el siguiente comando:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql --help | grep -A1 'Las opciones predeterminadas se leen de los siguientes archivos en el orden indicado'<\/pre><p>Deber&iacute;as ver varias rutas que indican los archivos de configuraci&oacute;n globales o espec&iacute;ficos del usuario. Echa un vistazo a la <a href=\"https:\/\/dev.mysql.com\/doc\/refman\/8.0\/en\/option-files.html\" target=\"_blank\" rel=\"noopener\">documentaci&oacute;n sobre los archivos de opciones de MySQL<\/a> para saber m&aacute;s sobre sus diferencias.<\/p><div class=\"wp-block-image\"><figure data-wp-context='{\"imageId\":\"6a073ff656571\"}' data-wp-interactive=\"core\/image\" class=\"aligncenter size-full wp-lightbox-container\"><img decoding=\"async\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-on-async--load=\"callbacks.setButtonStyles\" data-wp-on-async-window--resize=\"callbacks.setButtonStyles\" src=\"https:\/\/www.hostinger.com\/es\/tutoriales\/wp-content\/uploads\/sites\/32\/2026\/05\/mysql-muestra-el-archivo-de-configuracion-activo.png\" alt=\"MySQL muestra los archivos de configuraci&oacute;n activos\" class=\"wp-image-53003\"><button class=\"lightbox-trigger\" type=\"button\" aria-haspopup=\"dialog\" aria-label=\"Agrandar\" data-wp-init=\"callbacks.initTriggerButton\" data-wp-on-async--click=\"actions.showLightbox\" data-wp-style--right=\"state.imageButtonRight\" data-wp-style--top=\"state.imageButtonTop\">\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewbox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\"><\/path>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure><\/div><p>Para este tutorial, vamos a editar el archivo de configuraci&oacute;n global, que es <strong>\/etc\/mysql\/my.cnf<\/strong>. Para ello, &aacute;brelo con un editor de texto:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">sudo nano \/etc\/mysql\/my.cnf<\/pre><p>Como <strong>my.cnf <\/strong>no tiene ninguna configuraci&oacute;n por defecto, debes a&ntilde;adir los ajustes manualmente. Este archivo admite los siguientes par&aacute;metros:<\/p><ul class=\"wp-block-list\">\n<li>#comentario o <strong>;comentario<\/strong>: notas opcionales para explicar tu configuraci&oacute;n. MySQL no leer&aacute; estos comentarios.&nbsp;<\/li>\n\n\n\n<li><strong>[group]<\/strong>: un grupo o programa al que quieres aplicar la configuraci&oacute;n. Una configuraci&oacute;n de grupo termina en la siguiente l&iacute;nea<strong> [group]<\/strong>.&nbsp;<\/li>\n\n\n\n<li><strong>opt_name=value<\/strong>: tu par&aacute;metro de configuraci&oacute;n de MySQL en un par clave-valor.&nbsp;<\/li>\n<\/ul><p>Para comprobar los ajustes disponibles, ejecuta el siguiente comando. En la l&iacute;nea<strong> Variables<\/strong>, ver&aacute;s los par&aacute;metros de configuraci&oacute;n y sus valores:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">mysql --help<\/pre><p>Tu configuraci&oacute;n de la base de datos MySQL podr&iacute;a tener el siguiente aspecto:<\/p><pre class=\"EnlighterJSRAW\" data-enlighter-language=\"generic\" data-enlighter-theme=\"\" data-enlighter-highlight=\"\" data-enlighter-linenumbers=\"\" data-enlighter-lineoffset=\"\" data-enlighter-title=\"\" data-enlighter-group=\"\">[client]\nport=3306\nsocket=\/tmp\/mysql.sock\n\n[mysqld]\nport=3306\nsocket=\/tmp\/mysql.sock\nkey_buffer_size=16M\nmax_allowed_packet=128M\n\n[mysqldump]\nquick<\/pre><h2 class=\"wp-block-heading\" id=\"h-conclusion\">Conclusi&oacute;n<\/h2><p>Si vas a alojar una web din&aacute;mica o una aplicaci&oacute;n, necesitas una base de datos como MySQL en tu servidor. En este tutorial vimos c&oacute;mo instalarla en <strong>Ubuntu 24.04 <\/strong>para que puedas empezar m&aacute;s r&aacute;pido. Aqu&iacute; tienes el resumen:<\/p><ol class=\"wp-block-list\">\n<li>Con&eacute;ctate a tu servidor como <strong>root <\/strong>por SSH con PuTTY, Terminal o Browser Terminal de Hostinger.<\/li>\n\n\n\n<li>Ejecuta el comando <strong>apt update <\/strong>para actualizar los repositorios de tu sistema y asegurarte de instalar la versi&oacute;n m&aacute;s reciente de MySQL.<\/li>\n\n\n\n<li>Descarga e instala el paquete de MySQL con el comando<strong> apt install<\/strong>.<\/li>\n\n\n\n<li>Ejecuta el script de instalaci&oacute;n segura de MySQL para ajustar la configuraci&oacute;n de seguridad de tu base de datos.<\/li>\n\n\n\n<li>Comprueba el funcionamiento de MySQL verificando el estado del servicio y accediendo al shell de la base de datos.&nbsp;<\/li>\n<\/ol><p>Si lo deseas, puedes modificar los archivos de configuraci&oacute;n <strong>mysqld.cnf <\/strong>o <strong>my.cnf <\/strong>para ajustar la configuraci&oacute;n de MySQL. Por ejemplo, puedes cambiar el directorio de datos predeterminado, habilitar una conexi&oacute;n remota o abrir un puerto diferente para tu base de datos.<\/p><p>Despu&eacute;s de instalar MySQL, <a href=\"\/mx\/tutoriales\/instalar-phpmyadmin-ubuntu\">configura phpMyAdmin en tu servidor Ubuntu<\/a> para que puedas administrar f&aacute;cilmente tu base de datos mediante una interfaz gr&aacute;fica.<\/p><h2 class=\"wp-block-heading\" id=\"h-preguntas-frecuentes-sobre-como-instalar-mysql-en-ubuntu\">Preguntas frecuentes sobre c&oacute;mo instalar MySQL en Ubuntu<\/h2><p><strong>&iquest;Qu&eacute; versiones de Ubuntu son compatibles con la instalaci&oacute;n de MySQL?<\/strong><\/p><p>T&eacute;cnicamente, puedes instalar MySQL en cualquier versi&oacute;n de Ubuntu, incluidas las m&aacute;s antiguas como <strong>la 16.04<\/strong>. Sin embargo, no te recomendamos hacerlo por las siguientes razones:<\/p><ul class=\"wp-block-list\">\n<li><strong>Problemas de incompatibilidad<\/strong>. Usar una versi&oacute;n muy antigua de Ubuntu con versiones m&aacute;s recientes de MySQL puede hacer que algunas caracter&iacute;sticas o funciones no funcionen correctamente.<\/li>\n\n\n\n<li><strong>Riesgos de seguridad<\/strong>. El software antiguo suele tener fallos de seguridad sin parchear que los ciberdelincuentes podr&iacute;an aprovechar.<\/li>\n\n\n\n<li><strong>Errores<\/strong>. Las versiones antiguas de Ubuntu y MySQL pueden tener errores que afecten a su funcionamiento.<\/li>\n<\/ul><p>Para evitar estos problemas, te recomendamos usar siempre la &uacute;ltima versi&oacute;n de ambos programas. Por ejemplo, lo mejor es usar Ubuntu<strong> 24.04<\/strong>,<strong> 22.04 <\/strong>o<strong> 20.04 <\/strong>con la versi&oacute;n m&aacute;s reciente de MySQL.<\/p><p><strong>&iquest;C&oacute;mo desinstalo MySQL?<\/strong><\/p><p>Para desinstalar MySQL en Ubuntu, empieza por detener el servicio de la base de datos con el siguiente comando:<\/p><p><code>sudo systemctl stop mysql<\/code><\/p><p>A continuaci&oacute;n, usa APT para desinstalar MySQL:<\/p><p><code>sudo apt remove mysql-client mysql-server -y<\/code><\/p><p>Finaliza el proceso eliminando los datos sobrantes, como paquetes innecesarios y cach&eacute;s, ejecutando estos comandos de forma secuencial:<\/p><p><code>sudo apt autoremove -y&nbsp;<\/code><\/p><p><code>sudo apt autoclean -y<\/code><\/p><p><strong>&iquest;Puedo instalar MySQL Workbench junto con MySQL Server?<\/strong><\/p><p>S&iacute;, puedes. MySQL Workbench solo funcionar&aacute; si tu sistema tiene el servidor MySQL. Para configurarlo, descarga el instalador con el siguiente comando:<\/p><p><code>sudo curl https:\/\/dev.mysql.com\/get\/mysql-apt-config_0.8.33-1_all.deb&nbsp;<\/code><\/p><p>Descomprime el instalador ejecutando este comando:<\/p><p><code>sudo dpkg -i mysql-apt-config_0.8.33-1_all.deb&nbsp;<\/code><\/p><p>Completa el asistente de configuraci&oacute;n del paquete seleccionando tus configuraciones preferidas. Una vez terminado, actualiza tu gestor de paquetes:<\/p><p><code>sudo apt update<\/code><\/p><p>Instala MySQL Workbench desde APT ejecutando este comando:<\/p><p><code>sudo apt install mysql-workbench-community -y<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Para alojar una aplicaci&oacute;n o una web din&aacute;mica, necesitas configurar una base de datos en el backend donde almacenar la informaci&oacute;n de los usuarios. MySQL es una de las opciones m&aacute;s populares y se usa en todo tipo de proyectos con distintos stacks web. En este tutorial, te explicaremos c&oacute;mo instalar MySQL en Ubuntu 24.04 [&#8230;]<\/p>\n<p><a class=\"btn btn-secondary understrap-read-more-link\" href=\"\/mx\/tutoriales\/instalar-mysql-en-ubuntu\">Read More&#8230;<\/a><\/p>\n","protected":false},"author":560,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"rank_math_title":"C\u00f3mo instalar MySQL en Ubuntu paso a paso","rank_math_description":"Aprende a instalar MySQL en Ubuntu 24.04 en tu VPS paso a paso. Incluye configuraci\u00f3n de seguridad y acceso remoto.","rank_math_focus_keyword":"instalar mysql en ubuntu","footnotes":""},"categories":[5700],"tags":[],"class_list":["post-47557","post","type-post","status-publish","format-standard","hentry","category-vps"],"hreflangs":[{"locale":"es-ES","link":"https:\/\/www.hostinger.com\/es\/tutoriales\/instalar-mysql-en-ubuntu\/","default":1},{"locale":"es-AR","link":"https:\/\/www.hostinger.com\/ar\/tutoriales\/instalar-mysql-en-ubuntu\/","default":0},{"locale":"es-MX","link":"https:\/\/www.hostinger.com\/mx\/tutoriales\/instalar-mysql-en-ubuntu\/","default":0},{"locale":"es-CO","link":"https:\/\/www.hostinger.com\/co\/tutoriales\/instalar-mysql-en-ubuntu\/","default":0}],"acf":[],"_links":{"self":[{"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/posts\/47557","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/users\/560"}],"replies":[{"embeddable":true,"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/comments?post=47557"}],"version-history":[{"count":0,"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/posts\/47557\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/media?parent=47557"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/categories?post=47557"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.hostinger.com\/mx\/tutoriales\/wp-json\/wp\/v2\/tags?post=47557"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}