Cómo instalar MySQL en Ubuntu 16.04
Introducción
MySQL es un sistema de gestión de bases de datos de código abierto, comúnmente instalado como parte de la popular pila LAMP (Linux, Apache, MySQL, PHP/Python/Perl). Utiliza una base de datos relacional y SQL (Structured Query Language) para gestionar sus datos.
La versión corta de la instalación es sencilla: actualiza tu índice de paquetes, instala el paquete mysql-server
y luego ejecuta el script de seguridad incluido.
- sudo apt-get update
- sudo apt-get install mysql-server
- mysql_secure_installation
Este tutorial explicará cómo instalar la versión 5.7 de MySQL en un servidor Ubuntu 16.04. Sin embargo, si está buscando actualizar una instalación existente de MySQL a la versión 5.7, puede leer esta guía de actualización de MySQL 5.7 en su lugar.
Requisitos previos
Para seguir este tutorial, necesitará:
- Un servidor Ubuntu 16.04 configurado siguiendo esta guía de configuración inicial del servidor, incluyendo un usuario sudo no root y un firewall.
Paso 1 – Instalar MySQL
En Ubuntu 16.04, sólo la última versión de MySQL está incluida en el repositorio de paquetes de APT por defecto. En el momento de escribir esto, es MySQL 5.7
Para instalarlo, simplemente actualiza el índice de paquetes en tu servidor e instala el paquete por defecto con apt-get
.
- sudo apt-get update
- sudo apt-get install mysql-server
Se te pedirá que crees una contraseña de root durante la instalación. Elige una segura y asegúrate de recordarla, porque la necesitarás más adelante. A continuación, terminaremos de configurar MySQL.
Paso 2 – Configurar MySQL
Para instalaciones nuevas, querrás ejecutar el script de seguridad incluido. Esto cambia algunas de las opciones por defecto menos seguras para cosas como los inicios de sesión de la raíz remota y los usuarios de muestra. En versiones anteriores de MySQL, era necesario inicializar el directorio de datos manualmente también, pero esto se hace automáticamente ahora.
Ejecute el script de seguridad.
- mysql_secure_installation
Esto le pedirá la contraseña de root que creó en el Paso 1. Puedes presionar Y
y luego ENTER
para aceptar los valores predeterminados para todas las preguntas subsiguientes, con la excepción de la que pregunta si quieres cambiar la contraseña de root. Usted acaba de establecerla en el Paso 1, así que no tiene que cambiarla ahora. Para un recorrido más detallado de estas opciones, puedes ver este paso del tutorial de instalación de LAMP.
Para inicializar el directorio de datos de MySQL, usarías mysql_install_db
para versiones anteriores a la 5.7.6, y mysqld --initialize
para la 5.7.6 y posteriores. Sin embargo, si instaló MySQL desde la distribución de Debian, como en el paso 1, el directorio de datos se inicializó automáticamente; no tiene que hacer nada. Si intentas ejecutar el comando de todos modos, verás el siguiente error:
2016-03-07T20:11:15.998193Z 0 --initialize specified but the data directory has files in it. Aborting.
Por último, vamos a probar la instalación de MySQL.
Paso 3 – Probando MySQL
Independientemente de cómo lo hayas instalado, MySQL debería haber empezado a funcionar automáticamente. Para probarlo, comprueba su estado.
- systemctl status mysql.service
Verás una salida similar a la siguiente:
● mysql.service - MySQL Community Server Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago Main PID: 3754 (mysqld) Tasks: 28 Memory: 142.3M CPU: 1.994s CGroup: /system.slice/mysql.service └─3754 /usr/sbin/mysqld
Si MySQL no se está ejecutando, puedes iniciarlo con sudo systemctl start mysql
.
Para una comprobación adicional, puedes intentar conectarte a la base de datos utilizando la herramienta mysqladmin
, que es un cliente que te permite ejecutar comandos administrativos. Por ejemplo, este comando dice que se conecte a MySQL como root (-u root
), pida una contraseña (-p
) y devuelva la versión.
- mysqladmin -p -u root version
Deberías ver una salida similar a esta:
mysqladmin Ver 8.42 Distrib 5.7.16, for Linux on x86_64Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Server version 5.7.16-0ubuntu0.16.04.1Protocol version 10Connection Localhost via UNIX socketUNIX socket /var/run/mysqld/mysqld.sockUptime: 30 min 54 secThreads: 1 Questions: 12 Slow queries: 0 Opens: 115 Flush tables: 1 Open tables: 34 Queries per second avg: 0.006
Esto significa que MySQL está funcionando.
Conclusión
Ahora tienes una configuración básica de MySQL instalada en tu servidor. Aquí hay algunos ejemplos de los próximos pasos que puede dar:
- Implementar algunas medidas de seguridad adicionales
- Reubicar el directorio de datos
- Administrar sus servidores MySQL con SaltStack
- Aprender más sobre los comandos de MySQL
.