Cómo instalar MySQL en Ubuntu
Hay varios sistemas de gestión de bases de datos, pero muchos se decantan por Microsoft Access, pues por lo de siempre, porque es de Microsoft y forma parte de su suite de ofimática. Muchos otros, ya que esto de gestionar bases de datos es una tarea que hace gente entendida en la materia, conocen la existencia de la opción de código abierto que, por lo que he visto, es la elección de muchas empresas. Aquí os vamos a enseñar a instalar MySQL en Ubuntu.
Si estamos en Windows, instalar MySQL es una tarea sencilla si sabes qué instalar, ya que hay paquetes que lo incluyen todo. En Linux no es igual, y es un poco más complicado porque mucho se hace con lineas de comandos. Hoy vamos a intentar explicar cómo instalar MySQL en Ubuntu, aunque también se puede decir que lo que instalaremos será LAMP, es decir, Linux, Apache, MySQL y PHP.
Antes de empezar
MySQL es una herramienta sin interfaz gráfica que funciona desde el terminal por línea de comandos (CLI). Su instalación es más bien sencilla, pero sólo con MySQL tendríamos que realizar todas las consultas desde el terminal. Para mejorar la experiencia de usuario, hay que instalar y configurar también phpMyAdmin. Esto es lo que complica un poco la cosa. Dependiendo de cómo se configure, podremos entrar a phpMyAdmin o nos encontraremos con uno de los muchos errores que puede mostrarnos.
También me parece importante mencionar que lo descrito aquí funciona en el momento de escribir este artículo, y se ha probado en Ubuntu 22.10. Viendo que no hay paquetes ni nada especial, debería funcionar en versiones pasadas y en el futuro, pero no se garantiza. Por lo tanto, si se topa con algún error, yo recomendaría volver a hacer lo que se ha hecho para dar con este artículo (si no se ha encontrado en redes sociales): buscar el error concreto en Google DuckDuckGo.
Cómo instalar MySQL en Ubuntu
Explicado lo anterior, vamos con los pasos a seguir para instalar LAMP junto a phpMyAdmin y hacerlo funcionar todo en Ubuntu.
- Para asegurarnos de que todo está al día, actualizamos todos los paquetes, bien sea desde Actualización de Software o con el comando
sudo apt update && sudo apt upgrade
. - Como paso opcional, vamos al navegador y ponemos «localhost», asegurándonos de quitar la S de HTTPS si nos la pone. Veremos un error porque no hay ningún servidor haciendo su trabajo.
- Vamos al terminal e instalamos la A de LAMP: Apache.
sudo apt install apache2
- Como otro paso opcional, que no son importantes pero nos indican que vamos bien, volvemos al navegador, ponemos «localhost» y comprobamos que ahora sí sale algo como lo siguiente:
- A continuación instalamos MySQL, la M de LAMP:
sudo apt install mysql-server
- En el siguiente paso, si no lo tenemos, instalamos la P de LAMP (PHP):
sudo apt install php
Y con esto ya tendríamos todo lo necesario para usar MySQL en Ubuntu. Para mejorar la experiencia de usuario, seguimos.
Instalar phpMyAdmin en Ubuntu
- En el terminal, escribimos:
sudo apt install phpmyadmin
- Llegará un momento en el que nos consultará por el servidor a usar. Elegimos apache2 con la barra espaciadora, luego tabulador y Aceptar.
- Nos avisará de que es necesario tener una base de datos activa, y si queremos gestionarlo con dbconfig-common. Aceptamos la primera ventana, que no ofrece más opciones, y pasamos a la segunda, le decimos que sí y ponemos una contraseña a phpMyAdmin (dos veces):
- Volvemos al navegador y añadimos «phpmyadmin» a «localhost», lo que quedaría como localhost/phpmyadmin.
- Hacemos otra comprobación: ponemos el usuario por defecto, que es phpmyadmin, y la contraseña que le hemos configurado en el paso 10. Veremos que entra, pero no tenemos privilegios.
- Cerramos la sesión en phpMyAdmin.
- Volvemos al terminal, escribimos
sudo -i
(o sudo su) y ponemos nuestra clave. - Ahora escribimos mysql -u root -p y ponemos la clave de phpMyAdmin (la del paso 10).
- Ya no queda nada. En el siguiente paso vamos a crear un usuario (1), cambiando 1234 por otra clave (que debe ir entre las comillas simples) y ubunlog por vuestro usuario, le damos privilegios (2) y los reiniciamos (se confirmará que ha ido bien con el mensaje «Query OK» tras cada intro):
create user 'ubunlog'@'%' identified by '1234'; grant all privileges on *.* to 'ubunlog'@'%' with grant option; flush privileges;
Y eso sería todo. Queda volver al navegador, refrescar la página login/phpmyadmin y comprobar que podemos entrar con el usuario creado, y también que podemos gestionar las bases de datos.
Ocultando bases de datos y cambiando el tema
Ahora que ya podemos gestionar las bases de datos, puede que queramos hacerlo a nuestra manera. En la página principal encontramos la opción «Tema», y dependiendo del sistema operativo donde tengamos instalado phpMyAdmin pueden aparecer 3 o 4 opciones. Aunque no hay muchos, hay alternativas en phpmyadmin.net/themes, y, por ejemplo, el siguiente es BooDark (Bootstrap oscuro):
Los temas se tienen que descomprimir y meter la carpeta dentro de la carpeta themes que habrá dentro de la carpeta phpmyadmin (en Ubuntu suele ser /usr/share/phpmyadmin/themes).
Por otra parte, si os habéis fijado, os habréis dado cuenta de que a la izquierda de la captura de BooDark hay menos bases de datos que en la captura de arriba. Eso es porque están ocultas. La teoría dice que son bases de datos con archivos de configuración y que merece la pena no tocar nada de ahí, pero sí podemos ocultarlas, que todo seguirá funcionando como cuando están visibles.
Para ocultarlas, y así trabajar sólo con nuestras bases de datos, podemos abrir Archivos, ir a otras ubicaciones, entrar en la raíz de nuestro disco duro, darle a la lupa, buscar phpmyadmin, entrar en la carpeta y abrir el archivo config.inc.php. Al final se puede añadir una linea como la siguiente:
$cfg['Servers'][$i]['hide_db'] = '^mysql|sys|phpmyadmin|performance_schema|information_schema$';
De lo anterior, estamos usando la opción para ocultar bases de datos (hide_db) e indicando cuáles no queremos ver. La cadena empieza y acaba con las comillas simples; dentro de ella, el primer símbolo debe ser «^» y el último «$»; y dentro van las bases de datos separadas por «|». Si se diera la casualidad de que se nota algo extraño, aunque no debería, se puede «comentar» esa línea poniéndole delante dos barras (//) o metiéndola entre /*…*/.
Gestionando las bases de datos con LibreOffice Base
Como hemos explicado al principio de este artículo, lo realmente necesario para usar MySQL en Ubuntu se hace en unos 7 pasos. Si luego nos apañamos con el terminal, no hace falta nada más. Con phpMyAdmin lo haremos con interfaz gráfica, una que suele estar disponible en los servicios de hosting, por lo que merece la pena hacerse a ella antes que nada. Pero también se pueden gestionar las bases de datos con otro software.
Por ejemplo, del mismo modo que tenemos Access en Microsoft 365, LibreOffice tiene Base. Y sí, podemos conectarnos a las bases de datos MySQL con Base, más o menos. Si bien es cierto que podremos añadir tablas a la base de datos, también lo es que no nos permite editar las tablas que hemos creado desde phpMyAdmin, por lo que merece la pena que, si vamos a trabajar con Base, creemos la base de datos con MySQL, nos conectemos a ella y luego gestionemos las tablas desde Base. En cuanto a las consultas SQL, sólo se permiten las de obtener información; si queremos hacer cambios, hay que hacerlo por medio de la interfaz gráfica.
Para ello, una vez tenemos instalado todo LAMP (Linux ya está, Apache, MySQL y PHP), tenemos que seguir estos pasos:
- Abrimos LibreOffice Base. Se nos mostrará un asistente.
- En la primera ventana, elegimos «Conectar con una base de datos existente», desplegamos el menú y elegimos «MySQL/MariaDB».
- En la siguiente ventana, elegimos «Conectar directamente (mediante el conector C de MariaDB)» y hacemos clic en siguiente:
- A continuación, ponemos el nombre de la base de datos y el servidor. La base de datos será a la que queramos conectarnos, y el servidor es localhost.
- Tras hacer clic en siguiente, pondremos el nombre de usuario y, con la casilla «Contraseña obligatoria» marcada, haremos clic en probar la conexión.
- Nos pedirá la contraseña (del usuario de MySQL), la ponemos. Si todo va bien, veremos un mensaje confirmando que la conexión ha sido un éxito.
- Hacemos clic en siguiente y veremos una última ventana en la que merece la pena dejar las cosas por defecto y hacer clic en «Finalizar».
Esto nos permitirá entrar a la base de datos desde LibreOffice Base, pero yo sólo lo usaría si se necesita algo nativo y para gestiones básicas. También si se prefiere trabajar con algo que quede mejor en nuestro escritorio, como por ejemplo GTK en Ubuntu o Qt en otros entornos gráficos.
Entre el resto de opciones, una de las favoritas es DBeaver, que tiene una opción Community de código abierto, pero usar una u otra ya debe ser cuestión de gustos. Eso y que probablemente en un puesto de trabajo te pidan que te muevas bien en phpMyAdmin.
Y así es como se puede instalar MySQL en Ubuntu y gestionar las bases de datos con interfaz gráfica desde Ubuntu.