MySQL es una opción popular de sistema de administración de bases de datos relacionales (RDBMS) de código abierto para aplicaciones basadas en web. Los desarrolladores, los administradores de bases de datos y los equipos de DevOps utilizan MySQL para crear y administrar aplicaciones web y en la nube de próxima generación.
La versión actual de MySQL, 5.7, ofrece una multitud de mejoras de seguridad, incluida la eliminación de valores de columna no vacíos en la tabla mysql.user, caducidad automática de contraseñas controlada por políticas, bloqueo de cuentas de usuario y gestión mejorada de certificados OpenSSL RSA. Otras capacidades agregadas en esta versión incluyen cambios de modo SQL, ALTER TABLE en línea, capacidades mejoradas y de monitoreo, sistema de información geográfica ampliado para aplicaciones móviles y muchas mejoras en el motor de base de datos InnoDB.
Como ocurre con la mayoría de las opciones de RDBMS de código abierto, MySQL está disponible en varias ediciones diferentes y se ejecuta en Windows, OS X, Solaris, FreeBSD y otras variantes de Linux y Unix:
- Edición clásica de MySQL, disponible solo para proveedores de software independientes, OEM y revendedores de valor agregado, está diseñado para ser una base de datos integrable para aplicaciones de lectura intensiva.
- Edición de la comunidad de MySQL es la versión descargable gratuita de MySQL disponible bajo la Licencia Pública General GNU (GPL).
- Edición estándar de MySQL es la oferta RDBMS de nivel de entrada para aplicaciones de procesamiento de transacciones en línea.
- Edición empresarial de MySQL agrega funciones avanzadas, herramientas de administración (incluido OEM para MySQL) y soporte técnico.
- MySQL Cluster Carrier Grade Edition está diseñado para el desarrollo web y en la nube.
MySQL Cluster es un DBMS adaptable de código abierto diseñado para ofrecer un alto rendimiento y disponibilidad para muchos tipos de aplicaciones comerciales. Por ejemplo, MySQL Cluster alimenta las bases de datos de suscriptores de los principales proveedores de servicios de comunicaciones y se utiliza en la detección global de fraudes para transacciones financieras.
La versión actual de MySQL Cluster, 7.4, ofrece funciones para escalar automáticamente los servicios de base de datos mientras mantiene cinco nueves de disponibilidad. MySQL Cluster permite la agrupación en clústeres de bases de datos internas sin compartir nada. Puede ser una solución viable cuando necesite transacciones ACID (atomicidad, consistencia, aislamiento y durabilidad) con alta disponibilidad o tasas de inserción o modificación de datos muy rápidas en hardware económico.
MySQL utiliza una arquitectura de motor de almacenamiento conectable que permite que los motores de almacenamiento se carguen y descarguen de un servidor MySQL en ejecución. El motor de almacenamiento maneja las operaciones SQL para diferentes tipos de tablas MySQL. Al intercambiar los motores de almacenamiento MySQL, puede cambiar el comportamiento de MySQL.
InnoDB, un motor de almacenamiento compatible con ACID y seguro para transacciones, es el motor de almacenamiento MySQL predeterminado. Otros motores de almacenamiento incluyen MyISAM (para Web, almacenamiento de datos), (para in), CSV (para texto) y Archive.
Tipos de datos compatibles con RDBMS de código abierto de MySQL
Los tipos de datos de MySQL incluyen tipos numéricos, tipos de fecha y hora, tipos de cadenas (incluidos binarios, caracteres y objetos grandes binarios) y tipos espaciales. Además, MySQL asignará ciertos tipos de datos de otros DBMS a tipos de datos MySQL para facilitar la portabilidad.
Licencias, precios y rendimiento
MySQL es un RDBMS de código abierto disponible bajo GNU GPL. Las versiones comerciales de MySQL se venden directamente desde Oracle (incluso a través de una tienda en línea) y sus socios comerciales. El precio es por socket y comienza en $ 2,000 a $ 10,000, dependiendo de la edición. MySQL está disponible para descarga gratuita y una versión de prueba de MySQL Enterprise Edition está disponible en Oracle.
Están disponibles los puntos de referencia para MySQL y MySQL Cluster, así como The MySQL Benchmark Suite. La suite se puede utilizar para determinar qué operaciones realiza bien o mal una implementación de SQL determinada.
Sobre el Autor
Craig S. Mullins es un estratega de gestión de datos, investigador, consultor y autor con más de 30 años de experiencia en todas las facetas del desarrollo de sistemas de bases de datos. Es presidente y consultor principal de Mullins Consulting Inc. y editor / editor de TheDatabaseSite.com. Envíele un correo electrónico a [email protected].
Envíanos un email a [email protected] y síguenos en Twitter: @sDataManagement.
Este artículo se actualizó en septiembre de 2016.