Gestionar bases de datos (independiente de su tamaño) puede llegar a ser una tarea compleja si no contamos con las mejores herramientas para ello, esto abarca todos lo relacionado con ello (búsqueda, seguridad, escalabilidad, etc.), por ello es ideal y fundamental definir cuál es la mejor opción para administrar las bases de datos y en este caso hablamos de la nueva versión corporativa CentOS 9 Stream. Para administrar integralmente las bases de datos la mejor alternativa es MySQL, esta ha sido desarrollada por Oracle a través del código abierto lo cual significa constantes actualizaciones.
- Integración de motores de almacenamiento transaccional y no transaccional
- Escrito totalmente en C y C ++
- MySQL usa CMake desde la versión MySQL 5.5y en versiones anteriores hace uso de GNU Automake, Autoconf y Libtool
- Es compatible con datos de 1, 2, 3, 4 y 8 bytes de largos, FLOAT, DOUBLE, CHAR, VARCHAR, BINARY, VARBINARY, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET, ENUM y OpenGIS
- Es posible el uso de varios compiladores
- Todas las API de C, C ++, Eiffel, Java, Perl, PHP, Python, Ruby y Tcl están disponibles aumentando así las opciones de trabajo y control
- La zona horaria del servidor permite ser cambiada de forma dinámica
- Cuenta con soporte de hasta 64 índices por tabla
- Los clientes de MySQL pueden conectarse a través de sockets TCP/IP a través de alguna de las plataformas compatibles
- Soporte completo para múltiples tipos de caracteres
- Dispone de soporte incorporado que permiten la ejecución de sentencias SQL para verificar, optimizar y reparar tablas
- Podemos usar las funciones DELETE, INSERT, REPLACE y UPDATE
- La sintaxis CREATE USER y ALTER USER ahora admite múltiples métodos de autenticación
- MySQL ahora admite la autenticación multifactor (MFA), esto permite crear cuentas hasta con tres métodos de autenticación
- Los programas cliente cuentan con nuevas opciones de línea de comandos --password1, --password2 y --password3 para especificar varias contraseñas si es necesario
- La autenticación multifactor permite hacer uso de métodos de autenticación MySQL existentes
- MySQL puede ser compilado usando C ++ 17
- La longitud máxima de la clave del motor de almacenamiento BLACKHOLE ahora se ha aumentado de 1000 a 3072 bytes
- El nuevo privilegio FIREWALL_EXEMPT puede excluir a un usuario de las restricciones del firewall activas
- El método de autenticación Kerberos desde MySQL 8.0.26 para servidores MySQL y hosts cliente que ejecutan Linux, es compatible para el cliente para Windows
- La biblioteca OpenSSL vinculada para MySQL Server se ha actualizado a la versión 1.1.1
- Ahora las funciones ST_SymDifference () y ST_Intersection () permiten que los argumentos geométricos hagan uso de un sistema de referencia espacial geográfica (SRS)
- La variable default_authentication_plugin está obsoleta desde MySQL 8.0.27
Solvetic enseñará el paso a paso para instalar MySQL en CentOS 9 Stream.
Cómo instalar MySQL en CentOS 9 Stream
En CentOS 9 Stream abrimos la terminal y comprobamos el sistema:
cat /etc/centos-release
Ahora, instalamos MySQL con el siguiente comando:
sudo yum install mysql-server
Ingresamos la letra s para confirmar el proceso de descarga e instalación:
Después veremos lo siguiente:
Ingresamos la letra "s" para confirmar la instalación de la clave GPG de MySQL:
Al terminar el proceso veremos lo siguiente:
Esta orden instala los siguientes complementos:
- MySQL 8.0
- MySQL 5.7
- MySQL 5.6
- MySQL Clúster 8.0
- MySQL Clúster 7.6
- MySQL Clúster 7.5
- MySQL Workbench
- MySQL Router
- MySQL Shell
- MySQL Connector/C++
- MySQL Connector/J
- MySQL Connector/ODBC
- MySQL Connector/Python
Ahora vamos a iniciar el servicio MySQL con el comando:
sudo systemctl start mysqld.service
Revisamos el estado del servicio con la orden:
sudo systemctl status mysqld
Podemos ver que su estado es “active” lo cual significa que esta normal, habilitamos el servicio con cada inicio de sesión:
sudo systemctl enable mysqld
En caso de que no deseemos que inicie con CentOS 9 Stream ejecutamos:
sudo systemctl disable mysqld
Es momento de asegurar la instalación de MySQL ya que por defecto tiene muchas variables que pueden ser vulnerables, para realizar este proceso ejecutamos lo siguiente:
sudo mysql_secure_installation
Ingresamos la letra n y asignamos una contraseña para el administrador de MySQL:
Luego veremos una serie de parámetros que son:
- Remove anonymous users (Eliminar usuarios anónimos)
- Disallow remote root login (Deshabilitar el acceso remoto)
- Remove test database (Eliminar la base de datos de pruebas)
- Reload privilege tables (Recargar de nuevo los privilegios)
Ingresamos la letra "y" en todas las preguntas para proteger el acceso a MySQL:
Después de esto, vamos a verificar la instalación y acceder a información sobre la conexión con la herramienta mysqladmin, esta es una utilidad para ejecutar comandos administrativos, vamos a ejecutar el siguiente comando con el fin de establecer la conexión con MySQL como root (-u root), luego solicitar la contraseña (-p) y así obtener la versión de MySQL:
mysqladmin -u root -p versión
Allí encontramos detalles como:
- Versión de MySQL Server
- Socket UNIX usado
- Tiempo de actividad
- Versión del protocolo usado
Ahora establecemos la conexión con MySQL a través del siguiente comando:
mysql -u root -p
Ingresamos la contraseña para ir a MySQL:
Con esto ya estamos listos para usar MySQL en CentOS 9 Stream y administrar de la mejor manera las bases de datos.