Introducción

MySQL es una de las plataformas de bases de datos de código abierto más utilizadas en todo el mundo. Está disponible tanto en una versión comunitaria (gratuita) como en una versión empresarial (de pago), que ofrece más funciones para el entorno corporativo.

MySQL es un sistema de base de datos relacional con Lenguaje de consulta de estructura (SQL) Comandos [SELECT, CREATE TABLE, UPDATE, DELETE, INSERT, DROP TABLE, e.t.c] para la administración de bases de datos relacionales. En este tutorial, le mostraremos cómo instalar la versión de MySQL 8.0 Community, que actualmente es la última versión (y tiene características poderosas pero es muy fácil de configurar y usar). Luego demostraremos cómo obtener la contraseña de root de MySQL, cambiarla y crear una base de datos en Ubuntu 18.04 Linux VPS.

Nota especial: antes de instalar MySQL en su servidor, le recomendamos que compruebe que dispone del servicio de hosting adecuado. Los servicios de hospedaje que se especializan en hospedar bases de datos MySQL (por ejemplo, A2hosting) pueden brindar un mejor soporte en problemas relacionados con MySQL. Visite las Reseñas de Hosting Más Barato sobre los mejores servicios de hosting MySQL.

Instalación de MySQL

Descarga el repositorio apt de MySQL

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

Instale el repositorio apt de MySQL

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

El instalador de MySQL aparecerá como se muestra a continuación, pidiéndole que seleccione la versión apropiada del repositorio de MySQL. Asegúrese de que la versión de MySQL seleccionada esté en “MySQL Server & Cluster” is “mysql-8.0“. Luego presione la tecla de flecha hacia abajo en su computadora para seleccionar “OK“Y luego presione Enter.

Luego regrese al indicador de shell después de que se complete la instalación del repositorio de mysql apt.

Puede confirmar que el repositorio de MySQL 8.0 se ha instalado revisando el archivo /etc/apt/sources.list.d/mysql.list

$ sudo vim /etc/apt/sources.list.d/mysql.list

El archivo debe tener el siguiente contenido:

### THIS FILE IS AUTOMATICALLY CONFIGURED ###
# You may comment out entries below, but any other modifications may be lost.
# Use command 'dpkg-reconfigure mysql-apt-config' as root for modifications.
deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-apt-config
deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-8.0
deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-tools
#deb http://repo.mysql.com/apt/ubuntu/ bionic mysql-tools-preview
deb-src http://repo.mysql.com/apt/ubuntu/ bionic mysql-8.0

Instale el servidor MySQL 8.0 e inicie el servicio MySQL

Primero, actualice el repositorio ejecutando el comando:

$ sudo apt-get update

Luego instale el servidor MySQL

$ sudo apt-get install -y mysql-server

El instalador de MySQL da varias indicaciones durante la instalación de la siguiente manera:

Ingrese la contraseña de root:

Repita la contraseña de root

Información sobre los nuevos cambios en MySQL 8.0 a través del new improved SHA-256 password authentication method. Presione Tab para resaltar Aceptar y luego presione Entrar para continuar.

Seleccione el complemento de autenticación estándar. Esta es una nueva característica en MySQL 8.0 que permite el uso de. recomienda improved SHA-256 password authentication method este es el destacado “Use Strong Password Encryption (RECOMMENDED)“. Si actualizó de MySQL 5.7 a 8.0, este método evitará que los clientes antiguos se conecten al servidor. Si este es el caso, debe elegir la otra opción “Use Legacy Authentication Method (Retain MySQL 5.* Compatibility)

Luego presione Enter para continuar con la instalación.

Al final de la instalación, inicie el servidor MySQL.

$ sudo systemctl start mysqld

Confirme que la versión de MySQL es 8.0

$ mysql -version
mysql Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)

Haga una copia de seguridad de la instalación de MySQL

$ sudo mysql_secure_installation
 
Securing the MySQL server deployment.
 
Enter password for user root:
 
VALIDATE PASSWORD PLUGIN can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD plugin?
 
Press y|Y for Yes, any other key for No: No
Using existing password for root.
Change the password for root ? ((Press y|Y for Yes, any other key for No) : No
 
 ... skipping.
By default, a MySQL installation has an anonymous user,
allowing anyone to log into MySQL without having to have
a user account created for them. This is intended only for
testing, and to make the installation go a bit smoother.
You should remove them before moving into a production
environment.
 
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
 
 
Normally, root should only be allowed to connect from
'localhost'. This ensures that someone cannot guess at
the root password from the network.
 
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
 
By default, MySQL comes with a database named 'test' that
anyone can access. This is also intended only for testing,
and should be removed before moving into a production
environment.
 
 
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
 - Dropping test database...
Success.
 
 - Removing privileges on test database...
Success.
 
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
 
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
 
All done!

Crea una base de datos MySQL

Inicie sesión en el servidor MySQL como root

$ mysql -u root -p

Ingrese la contraseña de root en el símbolo del sistema.
Crea una nueva base de datos llamada ‘myfirstdb

mysql> CREATE DATABASE myfirstdb;

Enumere todas las bases de datos en el servidor mysql

mysql> SHOW DATABASES;

Salida de muestra

$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 11
Server version: 8.0.11 MySQL Community Server - GPL
 
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
 
mysql> CREATE DATABASE myfirstdb;
Query OK, 1 row affected (0.03 sec)
 
mysql> SHOW DATABASES;
+--------------------+
| Database  	     |
+--------------------+
| information_schema |
| myfirstdb      	|
| mysql          	|
| performance_schema |
| sys            	|
+--------------------+
5 rows in set (0.00 sec)
 
mysql> quit;
Bye

Conclusión

Ahora lo tenemos listo y funcionando con la parte más crítica (es decir, instalar la última versión de MySQL Server y crear una base de datos). El siguiente paso es aprender a ejecutar otros comandos de MySQL para manipular la base de datos de la forma que desee. Estos incluyen la creación de nuevos usuarios de MySQL, la concesión de permisos de usuario, la creación de tablas en bases de datos, la inserción y actualización de registros en tablas, la realización de consultas para recuperar registros de las tablas y muchas otras funciones. También debe pensar en cómo realizar copias de seguridad y restaurar bases de datos desde la línea de comandos.