introducción
MySQL es un gestor de bases de datos, y actualmente uno de los más usados y reconocidos del
mercado. Especialmente en lo que se refiere a desarrollo web, está clasificada como la base de
datos de código abierto más popular del mundo.
Fue desarrollada inicialmente por MySQL AB, luego adquirida por Sun Microsystems y luego
posteriormente por Oracle Corporation en 2010.
Está desarrollado mayormente por una mezcla de los lenguajes C y C++. Es uno de los cuatro
componentes del paquete de desarrollo LAMP, para Linux (corre perfecto en cualquier distro
Linux, y se hizo muy popular al hacerlo en RedHat Enterprise), y WAMP, para Windows Server.
MySQL es utilizado por sitios webs muy populares y de gran tamaño. Entre estos sitios
destacados, podemos nombrar algunos ejemplos como: Youtube, Wikipedia, Facebook, Google,
Flickr y Twitter.
Características principales
MySQL es un sistema de base de datos relacional, lo que quiere decir que archiva datos en tablas separadas en
lugar de guardar todos los datos en un gran archivo, lo que le permite tener mayor velocidad y flexibilidad. Estas
tablas están relacionadas de formas definidas, por lo que se hace posible combinar distintos datos en varias
tablas y conectarlos.
Cualquier persona puede utilizar MySQL y crear modificaciones bajando el código fuente con el fin de ajustarlo a
su medida y para su uso, ya que es un software de código abierto. Se establece el GPL (General Public License
en donde se define lo que un usuario puede realizar o no con el software. Si un usuario no se ajusta a las
medidas del GPL o requiere el uso del software para aplicaciones comerciales, se puede comprar una versión
comercial licenciada.
Inicialmente MySQL carecía de características que podrían considerarse esenciales de las bases de datos
relacionales, como integridad referencial y transacciones, aunque a pesar de esto los desarrolladores web
comenzaron a utilizarla debido a su simplicidad. A lo largo de las versiones y actualizaciones, estos
requerimientos se han ido incorporando al software, tanto por parte de la compañía Oracle como también de
desarrolladores de software libre.
Algunas características de MySQL son:
Permite escoger múltiples motores de almacenamiento para cada tabla.
Agrupación de transacciones, pudiendo reunirlas de forma múltiple desde varias conexiones con el
fin de incrementar el número de transacciones por segundo.
Conectividad segura.
Ejecución de transacciones y uso de claves foráneas.
Presenta un amplio subconjunto del lenguaje SQL.
Replicación
Disponible en casi todas las plataformas o sistemas.
Búsqueda e indexación de campos de texto.
Utiliza varias herramientas para portabilidad.
Tablas hash en memorias temporales
Uso de tablas en disco b-tree para búsquedas rápidas con compresión de índice.
Ofrece un sistema de contraseñas y privilegios seguros de verificación basada en el host y tráfico de
contraseñas encriptado al conectarse a un servidor.
Uso de multihilos mediante hilos de kernel.
Soporta gran cantidad de datos, incluso con más de 50 millones de registros.
En las últimas versiones, se permiten hasta 64 índices por tablas. Cada índice puede consistir desde
1 a 16 columnas o partes de columnas. El máximo ancho de límite son de 1000 bytes.
Ventajas y desventajas de MySQL
A continuación enumeramos algunas de las ventajas que presenta MySQL (sobre todo comparables
frente a su eterno rival, PostgreSQL), especialmente aquellas que la han convertido en una de las
BDs más utilizadas para desarrollos web.