fbpx
Wikipedia

MySQL

MySQL es un sistema de gestión de bases de datos relacional desarrollado bajo licencia dual: Licencia pública general/Licencia comercial por Oracle Corporation y está considerada como la base de datos de código abierto más popular del mundo,[1][2]​ y una de las más populares en general junto a Oracle y Microsoft SQL Server, todo para entornos de desarrollo web.

MySQL

Instalador de MySQL Community Server 8.0
Información general
Tipo de programa Sistema de gestión de bases de datos relacionales
Desarrollador Oracle Corporation
Lanzamiento inicial 1994
Licencia GPL o Uso comercial
Información técnica
Programado en C, C++
Versiones
Última versión estable 8.0.25 (info) 11 de mayo de 2021 (3 meses y 26 días)
Archivos legibles
MySQL Table Definition Format
Archivos editables
MySQL Table Definition Format
Enlaces
Sitio web oficial
Repositorio de código
Seguimiento de errores

MySQL fue inicialmente desarrollado por MySQL AB (empresa fundada por David Axmark, Allan Larsson y Michael Widenius). MySQL AB fue adquirida por Sun Microsystems en 2008, y ésta a su vez fue comprada por Oracle Corporation en 2010, la cual ya era dueña desde 2005 de Innobase Oy, empresa finlandesa desarrolladora del motor InnoDB para MySQL.

Al contrario de proyectos como Apache, donde el software es desarrollado por una comunidad pública y los derechos de autor del código están en poder del autor individual, MySQL es patrocinado por una empresa privada, que posee el copyright de la mayor parte del código. Esto es lo que posibilita el esquema de doble licenciamiento anteriormente mencionado. La base de datos se distribuye en varias versiones, una Community, distribuida bajo la Licencia pública general de GNU, versión 2, y varias versiones Enterprise, para aquellas empresas que quieran incorporarlo en productos privativos. Las versiones Enterprise incluyen productos o servicios adicionales tales como herramientas de monitorización y asistencia técnica oficial. En 2009 se creó un fork denominado MariaDB por algunos desarrolladores (incluido algunos desarrolladores originales de MySQL) descontentos con el modelo de desarrollo y el hecho de que una misma empresa controle a la vez los productos MySQL y Oracle Database.[3]

Está desarrollado en su mayor parte en ANSI C y C++.[4]​ Tradicionalmente se considera uno de los cuatro componentes de la pila de desarrollo LAMP y WAMP.

MySQL es usado por muchos sitios web grandes y populares, como Wikipedia,[5]Google[6][7]​ (aunque no para búsquedas), Facebook,[8][9][10]Twitter,[11]Flickr,[12]​ y YouTube.[13]

Lenguajes de programación

Existen varias interfaces de programación de aplicaciones que permiten, a aplicaciones escritas en diversos lenguajes de programación, acceder a las bases de datos MySQL, incluyendo C, C++, C#, Pascal, Delphi (vía dbExpress), Eiffel, Smalltalk, Java (con una implementación nativa del driver de Java), Lisp, Perl, PHP, Python, Ruby, Gambas, REALbasic (Mac y Linux), (x)Harbour (Eagle1), FreeBASIC, y Tcl; cada uno de estos utiliza una interfaz de programación de aplicaciones específica. También existe una interfaz ODBC, llamado MyODBC que permite a cualquier lenguaje de programación que soporte ODBC comunicarse con las bases de datos MySQL. También se puede acceder desde el sistema SAP, lenguaje ABAP.

Aplicaciones

 
Toma de pantalla programa de Monitoreo Mtop.

MySQL es muy utilizado en aplicaciones web, como Joomla, Wordpress, Drupal o phpBB, en plataformas (Linux/Windows-Apache-MySQL-PHP/Perl/Python), y por herramientas de seguimiento de errores como Bugzilla. Su popularidad como aplicación web está muy ligada a PHP, que a menudo aparece en combinación con MySQL.

MySQL es una base de datos muy rápida en la lectura cuando utiliza el motor no transaccional MyISAM, pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificación. En aplicaciones web hay baja concurrencia en la modificación de datos y en cambio el entorno es intensivo en lectura de datos, lo que hace a MySQL ideal para este tipo de aplicaciones. Sea cual sea el entorno en el que va a utilizar MySQL, es importante monitorizar de antemano el rendimiento para detectar y corregir errores tanto de SQL como de programación.[14]

Interfaces de usuario

Interfaces gráficas de usuario

Una interfaz gráfica de usuario (GUI) es un tipo de interfaz que permite a los usuarios interactuar con dispositivos o programas electrónicos mediante iconos gráficos e indicadores visuales como la notación secundaria, a diferencia de las interfaces basadas en texto, las etiquetas de comandos mecanografiadas o la navegación de texto. Las GUI son más fáciles de aprender que las interfaces de línea de comandos (CLI), que requieren que los comandos se escriban en el teclado.

Se dispone de aplicaciones de administración gráfica (o "frontales") de propiedad de terceros y gratuitas que se integran con MySQL y permiten a los usuarios trabajar con la estructura y los datos de la base de datos de forma visual. Algunos frontales muy conocidos son:

MySQL Workbench

MySQL Workbench es el entorno integrado oficial de MySQL. Fue desarrollado por MySQL AB, y permite a los usuarios administrar gráficamente las bases de datos MySQL y diseñar visualmente las estructuras de las bases de datos. MySQL Workbench reemplaza el anterior paquete de software, MySQL GUI Tools. Similar a otros paquetes de terceros, pero aún considerado como el front end autorizado de MySQL, MySQL Workbench permite a los usuarios administrar el diseño y modelado de bases de datos, el desarrollo de SQL (reemplazando al MySQL Query Browser) y la administración de bases de datos (reemplazando al MySQL Administrator).

MySQL Workbench está disponible en dos ediciones, la habitual Edición Comunitaria gratuita y de código abierto que puede descargarse del sitio web de MySQL, y la Edición Estándar patentada que amplía y mejora el conjunto de características de la Edición Comunitaria.

Adminer

Adminer (antes conocido como phpMinAdmin) es un front-end gratuito de MySQL para gestionar el contenido de las bases de datos MySQL (desde la versión 2, también funciona en las bases de datos PostgreSQL, Microsoft SQL Server, SQLite y Oracle). El administrador se distribuye bajo la licencia Apache (o GPL v2) en forma de un único archivo PHP (de unos 300 KiB de tamaño), y es capaz de gestionar múltiples bases de datos, con muchas pieles CSS disponibles. Su autor es Jakub Vrána, quien comenzó a desarrollar esta herramienta como una alternativa ligera a phpMyAdmin, en julio de 2007.

ClusterControl

ClusterControl es un sistema de administración de MySQL de extremo a extremo que provee la habilidad de desplegar, monitorear, administrar y escalar instancias de MySQL desde una sola interfaz. Es desarrollado por Severalnines.

La versión comunitaria de ClusterControl es de uso libre y permite al usuario desplegar y monitorear sus instancias de MySQL. Las características avanzadas como el balanceo de carga, respaldo y restauración, conmutación por error, etc. son parte de una oferta de pago.

Database Workbench

Database Workbench es una aplicación de software para el desarrollo y la administración de múltiples bases de datos relacionales utilizando SQL, con interoperatividad entre diferentes sistemas de bases de datos, desarrollada por Upscene Productions.

Dado que Databases Workbench es compatible con múltiples sistemas de bases de datos, puede proporcionar a los desarrolladores de software la misma interfaz y el mismo entorno de desarrollo para estos sistemas de bases de datos que, de otro modo, serían diferentes, e incluye también herramientas de bases de datos cruzadas.

Database Workbench soporta las siguientes bases de datos relacionales: Oracle Database, Microsoft SQL Server, SQL Anywhere, Firebird, NexusDB, InterBase, MySQL y MariaDB. Database Workbench 5 funciona en plataformas Windows de 32 o 64 bits. Bajo Linux, FreeBSD o macOS Database Workbench puede funcionar con Wine.

DBeaver

DBeaver es un cliente SQL y una herramienta de administración de base de datos. DBeaver incluye soporte extendido para las siguientes bases de datos: MySQL y MariaDB, PostgreSQL, Oracle, DB2 (LUW), Exasol, SQL Server, Sybase, Firebird, Teradata, Vertica, Apache Phoenix, Netezza, Informix, Apache Derby, H2, SQLite y cualquier otra base de datos que tenga un controlador JDBC u ODBC. DBeaver es un software libre y de código abierto que se distribuye bajo la licencia Apache 2.0. El código fuente está alojado en GitHub.

DBEdit

DBEdit es un editor de base de datos, que puede conectarse a un Oracle, DB2, MySQL y cualquier base de datos que proporcione un controlador JDBC. Funciona en Windows, Linux y Solaris. DBEdit es un software libre y de código abierto y se distribuye bajo la Licencia Pública General GNU. El código fuente está alojado en SourceForge.

HeidiSQL

HeidiSQL, anteriormente conocido como MySQL-Front, es un cliente libre y de código abierto, o frontend para MySQL (y para sus bifurcaciones como MariaDB y Percona Server), Microsoft SQL Server y PostgreSQL. HeidiSQL es desarrollado por el programador alemán Ansgar Becker y algunos otros colaboradores en Delphi. Para manejar bases de datos con HeidiSQL, los usuarios deben ingresar a un servidor MySQL local o remoto con credenciales aceptables, creando una sesión. Dentro de esta sesión los usuarios pueden manejar las bases de datos MySQL dentro del servidor MySQL conectado, desconectándose del servidor cuando haya terminado. Su conjunto de características es suficiente para las operaciones más comunes y avanzadas de bases de datos, tablas y registros de datos, pero permanece en desarrollo activo para avanzar hacia la funcionalidad completa que se espera en un Frontend MySQL.

LibreOffice Base

La base de LibreOffice permite la creación y gestión de bases de datos, la preparación de formularios e informes que proporcionan a los usuarios finales un fácil acceso a los datos. Al igual que Microsoft Access, puede utilizarse como interfaz para diversos sistemas de bases de datos, incluidas las bases de datos Access (JET), las fuentes de datos ODBC y MySQL o PostgreSQL.[15]

Navicat

Navicat es una serie de software de gestión y desarrollo de bases de datos gráficas producido por PremiumSoft CyberTech Ltd. para MySQL, MariaDB, Oracle, SQLite, PostgreSQL y Microsoft SQL Server. Tiene una interfaz gráfica de usuario similar a la de Explorer y admite múltiples conexiones de bases de datos locales y remotas. Su diseño está hecho para satisfacer las necesidades de una variedad de audiencias, desde administradores y programadores de bases de datos hasta diversas empresas/empresas que atienden a los clientes y comparten información con los socios.

Navicat es una herramienta multiplataforma y funciona en plataformas Microsoft Windows, OS X y Linux. En el momento de la compra, los usuarios pueden seleccionar un idioma para el software entre los ocho idiomas disponibles: Inglés, francés, alemán, español, japonés, polaco, chino simplificado y chino tradicional.

OpenOffice.org

La base de OpenOffice.org es de libre acceso y puede manejar bases de datos MySQL si se instala toda la suite.

phpMyAdmin

phpMyAdmin es una herramienta gratuita y de código abierto escrita en PHP destinada a manejar la administración de MySQL con el uso de un navegador web. Puede realizar diversas tareas como crear, modificar o eliminar bases de datos, tablas, campos o filas; ejecutar sentencias SQL o gestionar usuarios y permisos. El software, que está disponible en 78 idiomas,[16]​ es mantenido por The phpMyAdmin Project.[17]

Puede importar datos de CSV y SQL, y transformar los datos almacenados en cualquier formato utilizando un conjunto de funciones predefinidas, como la visualización de datos BLOB como imágenes o enlaces de descarga.

SequelPro

Sequel Pro es una aplicación MacOS gratuita y de código abierto para trabajar con bases de datos MySQL de forma local o remota. Utiliza el modelo freemium, en el que los usuarios de Gratis están obteniendo características de la mayoría de los servicios básicos. Se necesita una tabla SQL para manejar estas solicitudes. Puede manejar las nuevas y "divertidas" características de UTF-8 para el nuevo unicode, así como tener múltiples tablas de GB sin problemas.[18]

SQLBuddy

SQLBuddy es una aplicación de código abierto basada en la web y escrita en PHP, destinada a manejar la administración de MySQL y SQLite con el uso de un navegador web. El proyecto hace hincapié en la facilidad de instalación y en una interfaz de usuario sencilla.

SQLyog

SQLyog es una herramienta GUI disponible tanto en versión gratuita como de pago. Las manipulaciones de datos (por ejemplo, insertar, actualizar y eliminar) pueden realizarse desde una interfaz similar a una hoja de cálculo. Su editor tiene resaltado de sintaxis y varias opciones de formato automático. Se pueden manipular tanto los datos de la tabla en bruto como el conjunto de resultados de una consulta. Su función de búsqueda de datos utiliza una sintaxis de búsqueda similar a la de Google y se traduce a SQL de forma transparente para el usuario. Cuenta con una herramienta de respaldo para realizar copias de seguridad desatendidas. Las copias de seguridad pueden ser comprimidas y opcionalmente almacenadas como un archivo por tabla, así como identificadas con una marca de tiempo.

Toad for MySQL

Toad for MySQL es una aplicación de software de Dell Software que los desarrolladores de bases de datos, administradores de bases de datos y analistas de datos utilizan para administrar tanto bases de datos relacionales como no relacionales utilizando SQL. Toad es compatible con muchas bases de datos y entornos. Funciona en todas las plataformas Windows de 32 bits/64 bits, incluyendo Microsoft Windows Server, Windows XP, Windows Vista, Windows 7 y 8 (32 o 64 bits). Dell Software también ha lanzado una edición de Toad para Mac. Dell provee Toad en versiones comerciales y de prueba/gratuitas. La versión gratuita está disponible en la comunidad de ToadWorld.com.

Webmin

Webmin es una herramienta de configuración de sistemas basada en la web para sistemas de tipo Unix, aunque las versiones recientes también pueden ser instaladas y ejecutadas en Windows. Con él es posible configurar los elementos internos del sistema operativo, como los usuarios, las cuotas de disco, los servicios o los archivos de configuración, así como modificar y controlar las aplicaciones de código abierto, como el servidor HTTP Apache, PHP o MySQL.

Webmin se basa en gran medida en Perl, ejecutándose como su propio proceso y servidor web. Se comunica por defecto a través del puerto TCP 10000 y puede ser configurado para usar SSL si se instala OpenSSL con los módulos adicionales de Perl necesarios.

Está construido alrededor de módulos, que tienen una interfaz con los archivos de configuración y el servidor Webmin. Esto hace que sea fácil añadir nuevas funcionalidades. Debido al diseño modular de Webmin, es posible para cualquiera que esté interesado en escribir plugins para la configuración del escritorio.

Webmin también permite controlar muchas máquinas a través de una sola interfaz, o el inicio de sesión sin problemas en otros hosts de Webmin en la misma subred o LAN.

Interfaz de línea de comandos

Una interfaz de línea de comandos es un medio de interactuar con un programa informático en el que el usuario emite comandos al programa escribiendo en líneas sucesivas de texto (líneas de comandos). MySQL se envía con muchas herramientas de línea de comandos, de las cuales la interfaz principal es el cliente mysql.[19][20]

Las utilidades de MySQL son un conjunto de utilidades diseñadas para realizar tareas comunes de mantenimiento y administración. Incluidas originalmente como parte del Banco de Trabajo de MySQL, las utilidades son una descarga independiente disponible en Oracle.

Percona Toolkit es un kit de herramientas multiplataforma para MySQL, desarrollado en Perl.[21]​ Percona Toolkit puede ser usado para probar que la replicación funciona correctamente, arreglar datos corruptos, automatizar tareas repetitivas y acelerar los servidores. Percona Toolkit está incluido en varias distribuciones de Linux como CentOS y Debian, y los paquetes están disponibles para Fedora y Ubuntu también. Percona Toolkit fue desarrollado originalmente como Maatkit, pero a partir de finales de 2011, Maatkit ya no está desarrollado.

El shell de MySQL es una herramienta para el uso interactivo y la administración de la base de datos MySQL. Soporta los modos JavaScript, Python o SQL y puede ser utilizado para la administración y el acceso.[22]

Interfaces de programación de aplicaciones

Muchos lenguajes de programación con APIs de lenguaje específico incluyen bibliotecas para acceder a bases de datos MySQL. Entre ellas se encuentran MySQL Connector/Net para la integración con Visual Studio de Microsoft (los lenguajes más utilizados son C# y VB) y el controlador JDBC para Java. Además, una interfaz ODBC llamada MySQL Connector/ODBC permite que los lenguajes de programación adicionales que soportan la interfaz ODBC se comuniquen con una base de datos MySQL, como ASP o ColdFusion. El método de consulta basado en HTSQL - URL también se envía con un adaptador MySQL, permitiendo la interacción directa entre una base de datos MySQL y cualquier cliente web a través de URLs estructuradas. Existen otros controladores para lenguajes como Python[23]​ o Node.js[24]​.

Forks

Existe una variedad de forks de MySQL, incluyendo las siguientes.

Actual

MariaDB

MariaDB es un fork desarrollado por la comunidad del sistema de gestión de bases de datos relacionales MySQL que pretende permanecer libre bajo la GPL de GNU. Al ser una bifurcación de un sistema líder de software de código abierto, es notable por estar liderado por los desarrolladores originales de MySQL, que lo bifurcaron debido a las preocupaciones sobre su adquisición por Oracle.[25]​ Los colaboradores deben compartir sus derechos de autor con la Fundación MariaDB[26]​. MariaDB pretende mantener una alta compatibilidad con MySQL, asegurando una capacidad de sustitución "drop-in" con equivalencia binaria de la biblioteca y una coincidencia exacta con las API's y comandos de MySQL.[27]​ Hay algunas diferencias e incompatibilidades documentadas entre las versiones de MySQL y MariaDB[27]​, sin embargo, y algunas herramientas para interactuar con MySQL, como el MySQL Workbench, no son totalmente compatibles con MariaDB.[28]​ Incluye el motor de almacenamiento XtraDB para reemplazar a InnoDB,[29]​ así como un nuevo motor de almacenamiento, Aria, que pretende ser tanto un motor transaccional como no transaccional, quizás incluso incluido en futuras versiones de MySQL.[30]

Percona Server for MySQL

Percona Server for MySQL, fork por Percona, tiene como objetivo mantener una estrecha compatibilidad con las versiones oficiales de MySQL, mientras se centra en el rendimiento y el aumento de la visibilidad de las operaciones del servidor.[31]​ También se incluye en Percona Server for MySQL XtraDB, la bifurcación de Percona del motor de almacenamiento InnoDB. Percona incluye libremente un número de características de escalabilidad, disponibilidad, seguridad y respaldo que solo están disponibles en la edición comercial Enterprise de MySQL.[32]

Abandonado

Drizzle

Drizzle era un sistema de gestión de bases de datos relacionales (DBMS) de código abierto y software libre que se creó a partir de la ahora desaparecida rama de desarrollo 6.0 del DBMS de MySQL.[33]​ Al igual que MySQL, Drizzle tenía una arquitectura cliente/servidor y utiliza SQL como su principal lenguaje de comandos. Drizzle fue distribuido bajo la versión 2 y 3 de la Licencia Pública General de GNU (GPL) con partes, incluyendo los controladores de protocolo y la replicación de mensajes bajo la licencia BSD.

WebScaleSQL

WebScaleSQL era una rama de software de MySQL 5.6, y fue anunciada el 27 de marzo de 2014 por Facebook, Google, LinkedIn y Twitter como un esfuerzo conjunto para proporcionar una estructura de desarrollo centralizada para ampliar MySQL con nuevas características específicas para sus despliegues a gran escala, como la construcción de grandes bases de datos replicadas que se ejecutan en granjas de servidores. Así, WebScaleSQL abrió un camino hacia la deduplicación de los esfuerzos que cada empresa había estado poniendo en el mantenimiento de su propia rama de MySQL, y hacia la unión de más desarrolladores. Al combinar los esfuerzos de estas empresas e incorporar varios cambios y nuevas características en MySQL, WebScaleSQL se dirigió a apoyar el despliegue de MySQL en entornos de gran escala.[34][35]​ El código fuente del proyecto está licenciado bajo la versión 2 de la Licencia Pública General de GNU, y está alojado en GitHub.[36][37]

Versiones de MySQL

El siguiente gráfico provee un resumen de varias versiones de MySQL y sus estados actuales de desarrollo:[38][39][40][41][42][43][44][45]

Especificaciones

Plataformas

MySQL funciona sobre múltiples plataformas, incluyendo:

Oracle provee el código fuente de MySQL Community Edition y versiones compiladas para diferentes sistemas operativos,[47]​ aunque el rendimiento de MySQL se encuentra optimizado para sistemas GNU/Linux, con pequeñas diferencias de rendimiento entre las diferentes distribuciones .[48]

Características adicionales

  • Usa GNU Automake, Autoconf, y Libtool para portabilidad
  • Uso de multihilos mediante hilos del kernel.
  • Usa tablas en disco b-tree para búsquedas rápidas con compresión de índice
  • Tablas hash en memoria temporales
  • El código MySQL se prueba con Purify (un detector de memoria perdida comercial) así como con Valgrind, una herramienta GPL.
  • Completo soporte para operadores y funciones en cláusulas select y where.
  • Completo soporte para cláusulas group by y order by, soporte de funciones de agrupación
  • Seguridad: ofrece un sistema de contraseñas y privilegios seguro mediante verificación basada en el host y el tráfico de contraseñas está cifrado al conectarse a un servidor.
  • Soporta gran cantidad de datos. MySQL Server tiene bases de datos de hasta 50 millones de registros.
  • Se permiten hasta 64 índices por tabla (32 antes de MySQL 4.1.2). Cada índice puede consistir desde 1 hasta 16 columnas o partes de columnas. El máximo ancho de límite son 1000 bytes (500 antes de MySQL 4.1.2).
  • Los clientes se conectan al servidor MySQL usando sockets TCP/IP en cualquier plataforma. En sistemas Windows se pueden conectar usando named pipes y en sistemas Unix usando ficheros socket Unix.
  • En MySQL 5.0, los clientes y servidores Windows se pueden conectar usando memoria compartida.
  • MySQL contiene su propio paquete de pruebas de rendimiento proporcionado con el código fuente de la distribución de MySQL.

Características

Inicialmente, MySQL carecía de elementos considerados esenciales en las bases de datos relacionales, tales como integridad referencial y transacciones. A pesar de ello, atrajo a los desarrolladores de páginas web con contenido dinámico, justamente por su simplicidad.

Poco a poco los elementos de los que carecía MySQL están siendo incorporados tanto por desarrollos internos, como por desarrolladores de software libre. Entre las características disponibles en las últimas versiones se puede destacar:

  • Amplio subconjunto del lenguaje SQL. Algunas extensiones son incluidas igualmente.
  • Disponibilidad en gran cantidad de plataformas y sistemas.
  • Posibilidad de selección de mecanismos de almacenamiento que ofrecen diferentes velocidades de operación, soporte físico, capacidad, distribución geográfica, transacciones...
  • Transacciones y claves foráneas.
  • Conectividad segura.
  • Replicación.
  • Búsqueda e indexación de campos de texto.

MySQL es un sistema de administración relacional de bases de datos. Una base de datos relacional archiva datos en tablas separadas en vez de colocar todos los datos en un gran archivo. Esto permite velocidad y flexibilidad. Las tablas están conectadas por relaciones definidas que hacen posible combinar datos de diferentes tablas sobre pedido.

MySQL es software de fuente abierta. Fuente abierta significa que es posible para cualquier persona usarlo y modificarlo. Cualquier persona puede bajar el código fuente de MySQL y usarlo sin pagar. Cualquier interesado puede estudiar el código fuente y ajustarlo a sus necesidades. MySQL usa el GPL (GNU General Public License) para definir qué puede hacer y qué no puede hacer con el software en diferentes situaciones. Si usted no se ajusta al GPL o requiere introducir código MySQL en aplicaciones comerciales, usted puede comprar una versión comercial licenciada.

Características distintivas

Las siguientes características son implementadas únicamente por MySQL:

  • Permite escoger entre múltiples motores de almacenamiento para cada tabla. En MySQL 5.0 éstos debían añadirse en tiempo de compilación, a partir de MySQL 5.1 se pueden añadir dinámicamente en tiempo de ejecución:
    • Los hay nativos como MyISAM, Falcon, Merge, InnoDB, BDB, Memory/heap, MySQL Cluster, Federated, Archive, CSV, Blackhole y Example.
    • Desarrollados por partners como solidDB, NitroEDB, ScaleDB, TokuDB, Infobright (antes Brighthouse), Kickfire, XtraDB, IBM DB2. InnoDB Estuvo desarrollado así pero ahora pertenece también a Oracle.
    • Desarrollados por la comunidad como memcache, httpd, PBXT y Revision.
  • Agrupación de transacciones, reuniendo múltiples transacciones de varias conexiones para incrementar el número de transacciones por segundo.

Tipos de compilación del servidor

Hay tres tipos de compilación del servidor MySQL:

  • Estándar: Los binarios estándar de MySQL son los recomendados para la mayoría de los usuarios, e incluyen el motor de almacenamiento InnoDB.
  • Max (No se trata de MaxDB, que es una cooperación con SAP): Los binarios incluyen características adicionales que no han sido lo bastante probadas o que normalmente no son necesarias.
  • MySQL-Debug: Son binarios que han sido compilados con información de depuración extra. No debe ser usada en sistemas en producción porque el código de depuración puede reducir el rendimiento.

Especificaciones del código fuente

MySQL está escrito en una mezcla de C y C++.

Desarrollo del proyecto

El desarrollo de MySQL se fundamenta en el trabajo de los desarrolladores contratados por la empresa MySQL AB quienes se encargan de dar soporte a los socios comerciales y usuarios de la comunidad MySQL y dar solución a los problemas encontrados por los usuarios. Los usuarios o miembros de la comunidad MySQL pueden reportar bugs revisando el manual en línea que contiene las soluciones a problemas encontrados; el historial de cambios ; la base de datos bugs que contiene bugs reportados y solucionados y en las listas de correo MySQL .

A través de las listas de correo los usuarios pueden enviar preguntas y éstas serán contestadas por desarrolladores brindándoles mejor soporte.

Otras funcionalidades de las listas de correo

  • Anuncios: informan sobre nuevas versiones de MySQL y programas relacionados.
  • MySQL: lista principal de discusión de MySQL y sql.
  • Bugs: permite a la gente buscar y arreglar bugs.
  • Temas internos: para gente que trabaja con el código de MySQL. Es el fórum para discutir sobre el desarrollo de MySQL.
  • MySQLdoc: para gente que trabaja en documentación.
  • Pruebas de rendimiento: para gente interesada en temas de rendimiento no solo de MySQL, sino de otros motores de bases de datos.
  • Empaquetadores: para discusiones sobre empaquetamiento y distribución de MySQL.
  • Java: discusiones sobre MySQL Server y Java.

Otras listas de correo son: MyODBC, Herramientas GUI, Cluster, Dotnet, PlusPlus y Perl.

Adicional a las listas de correo, se encuentra el soporte de IRC de la comunidad MySQL. Además, hay soporte a través de foros agrupados en categorías tales como: Migración, Uso de MySQL, Conectores MySQL, Tecnología MySQL y Negocios.

Estructuras organizativas/asociativas o de decisión

La dirección y el patrocinio de los proyectos MySQL están a cargo de la empresa MySQL AB quien posee el copyright del código fuente MySQL, su logo y marca registrada. MySQL, Inc. y MySQL GmbH son ejemplos de empresas subsidiarias de MySQL AB. Están establecidas en los Estados Unidos y Alemania respectivamente. MySQL AB, cuenta con más de 200 empleados en más de 20 países y funcionan bajo la estrategia de teletrabajo.

En enero del 2008 Sun Microsystems anuncia su compra. En abril de 2009 Oracle anunció la compra de Sun Microsystems.[49]

Industria relacionada

 
La LAMP comprende MySQL (aquí con Squid)

La industria radica en la venta de productos software y de algunos servicios relacionados con numerosas empresas que utilizan estos productos.

MySQL AB clasifica los productos así:

  • MySQL Enterprise: incluye MySQL Enterprise Server, Monitoreo de la red MySQL, servicios de consulta y soporte de producción MySQL.
  • MySQL Cluster
  • MySQL Embedded Database.
  • MySQL Drivers: para JDBC, ODBC y.Net
  • MySQL Tools: MySQL Administrator, MySQL Query Browser, and the MySQL Migration Toolkit.
  • MaxDB: MaxDB es una base de datos de código abierto certificada para SAP/R3.

Los ingresos de esta empresa por la venta de licencias privativas de sus productos y los servicios suma los U$12 millones.

MySQL en cifras

  • Según las cifras del fabricante, existirían más de seis millones de copias de MySQL funcionando en la actualidad, lo que supera la base instalada de cualquier otra herramienta de bases de datos.
  • El tráfico del sitio web de MySQL AB superó en 2004 al del sitio de IBM.

Licencia

La licencia GNU GPL de MySQL obliga a que la distribución de cualquier producto derivado (aplicación) se haga bajo esa misma licencia. Si un desarrollador desea incorporar MySQL en su producto pero desea distribuirlo bajo otra licencia que no sea la GNU GPL, puede adquirir una licencia comercial de MySQL que le permite hacer justamente eso.

Véase también

Referencias

  1. Oracle. «MySQL Database Service» (en inglés). Consultado el 31 de enero de 2021. 
  2. http://db-engines.com/en/ranking
  3. http://monty-says.blogspot.com.es/2009/12/help-saving-mysql.html
  4. https://www.openhub.net/p/mysql/analyses/latest
  5. «Wikimedia servers — System architecture». Wikimedia Meta-Wiki. Wikimedia Foundation. Consultado el 17 de septiembre de 2012. 
  6. Urlocker, M. Zack (13 de diciembre de 2005). «Google Runs MySQL». The Open Force. M. Zack Urlocker. Consultado el 3 de agosto de 2010. «AdWords was built using the MySQL database». 
  7. Claburn, Thomas (24 de abril de 2007). . InformationWeek (CPM Media). Consultado el 30 de noviembre de 2008. 
  8. Callaghan, Mark (13 de abril de 2010). «MySQL at Facebook». YouTube (Google). Consultado el 3 de agosto de 2010. «x,000 servers, ... Master-slave replication, InnoDB». 
  9. Sobel, Jason (21 de diciembre de 2007). «Keeping Up». The Facebook Blog. Facebook. Consultado el 30 de octubre de 2008. 
  10. Malik, Om (25 de abril de 2008). «Facebook’s Insatiable Hunger for Hardware». GigaOM. GigaOmniMedia. Consultado el 30 de octubre de 2008. 
  11. Cole, Jeremy (14 de abril de 2011). «Big and Small Data at @Twitter». YouTube (Google). Consultado el 20 de octubre de 2011. 
  12. «MySQL Customer: Flickr». MySQL Customers. Oracle. Consultado el 17 de septiembre de 2012. 
  13. «MySQL Customer: YouTube». MySQL Customers. Oracle. Consultado el 17 de septiembre de 2012. 
  14. mtop: monitoreo de carga en MySQL
  15. . web.archive.org. 7 de enero de 2012. Consultado el 23 de mayo de 2020. 
  16. contributors, phpMyAdmin. «Translations». phpMyAdmin (en inglés). Consultado el 23 de mayo de 2020. 
  17. contributors, phpMyAdmin. «Team». phpMyAdmin (en inglés). Consultado el 23 de mayo de 2020. 
  18. «Sequel Pro». sequelpro.com. Consultado el 23 de mayo de 2020. 
  19. «MySQL :: MySQL 5.6 Reference Manual :: 4.5.1 mysql — The MySQL Command-Line Client». dev.mysql.com. Consultado el 23 de mayo de 2020. 
  20. «MySQL :: MySQL 8.0 Reference Manual :: 4.5.2 mysqladmin — Client for Administering a MySQL Server». dev.mysql.com. Consultado el 23 de mayo de 2020. 
  21. «Percona Toolkit». Percona (en inglés). Consultado el 23 de mayo de 2020. 
  22. «MySQL :: Download MySQL Shell». dev.mysql.com. Consultado el 23 de mayo de 2020. 
  23. «MySQL :: Download Connector/Python». dev.mysql.com. Consultado el 23 de mayo de 2020. 
  24. «MySQL :: Download Connector/Node.js». dev.mysql.com. Consultado el 23 de mayo de 2020. 
  25. Pearce, Rohan (28 de marzo de 2013). «Dead database walking: MySQL's creator on why the future belongs to MariaDB». Computerworld (en inglés). Consultado el 23 de mayo de 2020. 
  26. «Contributing Code». MariaDB KnowledgeBase. Consultado el 23 de mayo de 2020. 
  27. «MariaDB versus MySQL - Compatibility». MariaDB KnowledgeBase. Consultado el 23 de mayo de 2020. 
  28. Datadog (14 de abril de 2016). «Monitoring MySQL performance metrics». Monitoring MySQL performance metrics (en inglés). Consultado el 23 de mayo de 2020. 
  29. «About XtraDB». MariaDB KnowledgeBase. Consultado el 23 de mayo de 2020. 
  30. «Aria FAQ». MariaDB KnowledgeBase. Consultado el 23 de mayo de 2020. 
  31. . web.archive.org. 15 de abril de 2015. Consultado el 23 de mayo de 2020. 
  32. «Percona challenges Oracle with alternate MySQL release». PCWorld (en inglés). 10 de octubre de 2013. Consultado el 23 de mayo de 2020. 
  33. Clark, Jack. «MySQL fork Drizzle gets general release». ZDNet (en inglés). Consultado el 23 de mayo de 2020. 
  34. Vaughan-Nichols, Steven J. «WebScaleSQL: MySQL for Facebook-sized databases». ZDNet (en inglés). Consultado el 23 de mayo de 2020. 
  35. Finley, Klint (27 de marzo de 2014). «Google and Facebook Team Up to Modernize Old-School Databases». Wired. ISSN 1059-1028. Consultado el 23 de mayo de 2020. 
  36. «Forkin' 'L! Facebook, Google and friends create WebScaleSQL from MySQL 5.6». www.theregister.co.uk (en inglés). Consultado el 23 de mayo de 2020. 
  37. «WebScaleSQL | "We're Gonna Need A Bigger Database"». webscalesql.org. Consultado el 23 de mayo de 2020. 
  38. . Oracle. Archivado desde el original el 24 de julio de 2010. Consultado el 24 de agosto de 2010. 
  39. . Oracle. Archivado desde el original el 14 de abril de 2010. Consultado el 24 de agosto de 2010. 
  40. . Oracle. Archivado desde el original el 30 de marzo de 2010. Consultado el 24 de agosto de 2010. 
  41. «C.1. Changes in Release 5.0.x (Lifecycle Support Ended)». Oracle. Consultado el 24 de agosto de 2010. 
  42. «MySQL 5.1 Release Notes». Oracle. Consultado el 29 de enero de 2014. 
  43. «MySQL 5.5 Release Notes». Oracle. Consultado el 29 de enero de 2014. 
  44. «MySQL 5.6 Release Notes». Oracle. Consultado el 29 de enero de 2014. 
  45. «MySQL 5.7 Release Notes». Oracle. Consultado el 13 de marzo de 2014. 
  46. MySQL. «MySQL Community Downloads» (en inglés). Consultado el 31 de enero de 2021. 
  47. Investigación IT (15 de febrero de 2016). «El mejor Linux para MySQL». Consultado el 31 de enero de 2021. 
  48. El País (20 de abril de 2009). «Oracle adquiere Sun Microsystems por 5.710 millones». Consultado el 31 de enero de 2021. 

Enlaces externos

  •   Wikimedia Commons alberga una categoría multimedia sobre MySQL.
  •   Wikilibros alberga un libro o manual sobre MySQL.
  • Sitio web oficial de MySQL (en inglés)
  • (en inglés)


  •   Datos: Q850
  •   Multimedia: MySQL
  •   Libros y manuales: MySQL
  •   MediaWiki: Manual:MySQL

mysql, sistema, gestión, bases, datos, relacional, desarrollado, bajo, licencia, dual, licencia, pública, general, licencia, comercial, oracle, corporation, está, considerada, como, base, datos, código, abierto, más, popular, mundo, más, populares, general, ju. MySQL es un sistema de gestion de bases de datos relacional desarrollado bajo licencia dual Licencia publica general Licencia comercial por Oracle Corporation y esta considerada como la base de datos de codigo abierto mas popular del mundo 1 2 y una de las mas populares en general junto a Oracle y Microsoft SQL Server todo para entornos de desarrollo web MySQL Instalador de MySQL Community Server 8 0Informacion generalTipo de programaSistema de gestion de bases de datos relacionalesDesarrolladorOracle CorporationLanzamiento inicial1994LicenciaGPL o Uso comercialInformacion tecnicaProgramado enC C VersionesUltima version estable8 0 25 info 11 de mayo de 2021 3 meses y 26 dias Archivos legiblesMySQL Table Definition FormatArchivos editablesMySQL Table Definition FormatEnlacesSitio web oficial Repositorio de codigo Seguimiento de errores editar datos en Wikidata MySQL fue inicialmente desarrollado por MySQL AB empresa fundada por David Axmark Allan Larsson y Michael Widenius MySQL AB fue adquirida por Sun Microsystems en 2008 y esta a su vez fue comprada por Oracle Corporation en 2010 la cual ya era duena desde 2005 de Innobase Oy empresa finlandesa desarrolladora del motor InnoDB para MySQL Al contrario de proyectos como Apache donde el software es desarrollado por una comunidad publica y los derechos de autor del codigo estan en poder del autor individual MySQL es patrocinado por una empresa privada que posee el copyright de la mayor parte del codigo Esto es lo que posibilita el esquema de doble licenciamiento anteriormente mencionado La base de datos se distribuye en varias versiones una Community distribuida bajo la Licencia publica general de GNU version 2 y varias versiones Enterprise para aquellas empresas que quieran incorporarlo en productos privativos Las versiones Enterprise incluyen productos o servicios adicionales tales como herramientas de monitorizacion y asistencia tecnica oficial En 2009 se creo un fork denominado MariaDB por algunos desarrolladores incluido algunos desarrolladores originales de MySQL descontentos con el modelo de desarrollo y el hecho de que una misma empresa controle a la vez los productos MySQL y Oracle Database 3 Esta desarrollado en su mayor parte en ANSI C y C 4 Tradicionalmente se considera uno de los cuatro componentes de la pila de desarrollo LAMP y WAMP MySQL es usado por muchos sitios web grandes y populares como Wikipedia 5 Google 6 7 aunque no para busquedas Facebook 8 9 10 Twitter 11 Flickr 12 y YouTube 13 Indice 1 Lenguajes de programacion 2 Aplicaciones 3 Interfaces de usuario 3 1 Interfaces graficas de usuario 3 1 1 MySQL Workbench 3 1 2 Adminer 3 1 3 ClusterControl 3 1 4 Database Workbench 3 1 5 DBeaver 3 1 6 DBEdit 3 1 7 HeidiSQL 3 1 8 LibreOffice Base 3 1 9 Navicat 3 1 10 OpenOffice org 3 1 11 phpMyAdmin 3 1 12 SequelPro 3 1 13 SQLBuddy 3 1 14 SQLyog 3 1 15 Toad for MySQL 3 1 16 Webmin 3 2 Interfaz de linea de comandos 4 Interfaces de programacion de aplicaciones 4 1 Forks 4 2 Actual 4 2 1 MariaDB 4 2 2 Percona Server for MySQL 4 3 Abandonado 4 3 1 Drizzle 4 3 2 WebScaleSQL 5 Versiones de MySQL 6 Especificaciones 6 1 Plataformas 7 Caracteristicas adicionales 7 1 Caracteristicas 7 2 Caracteristicas distintivas 7 3 Tipos de compilacion del servidor 7 4 Especificaciones del codigo fuente 8 Desarrollo del proyecto 9 Otras funcionalidades de las listas de correo 10 Estructuras organizativas asociativas o de decision 11 Industria relacionada 12 MySQL en cifras 13 Licencia 14 Vease tambien 15 Referencias 16 Enlaces externosLenguajes de programacion EditarExisten varias interfaces de programacion de aplicaciones que permiten a aplicaciones escritas en diversos lenguajes de programacion acceder a las bases de datos MySQL incluyendo C C C Pascal Delphi via dbExpress Eiffel Smalltalk Java con una implementacion nativa del driver de Java Lisp Perl PHP Python Ruby Gambas REALbasic Mac y Linux x Harbour Eagle1 FreeBASIC y Tcl cada uno de estos utiliza una interfaz de programacion de aplicaciones especifica Tambien existe una interfaz ODBC llamado MyODBC que permite a cualquier lenguaje de programacion que soporte ODBC comunicarse con las bases de datos MySQL Tambien se puede acceder desde el sistema SAP lenguaje ABAP Aplicaciones Editar Toma de pantalla programa de Monitoreo Mtop MySQL es muy utilizado en aplicaciones web como Joomla Wordpress Drupal o phpBB en plataformas Linux Windows Apache MySQL PHP Perl Python y por herramientas de seguimiento de errores como Bugzilla Su popularidad como aplicacion web esta muy ligada a PHP que a menudo aparece en combinacion con MySQL MySQL es una base de datos muy rapida en la lectura cuando utiliza el motor no transaccional MyISAM pero puede provocar problemas de integridad en entornos de alta concurrencia en la modificacion En aplicaciones web hay baja concurrencia en la modificacion de datos y en cambio el entorno es intensivo en lectura de datos lo que hace a MySQL ideal para este tipo de aplicaciones Sea cual sea el entorno en el que va a utilizar MySQL es importante monitorizar de antemano el rendimiento para detectar y corregir errores tanto de SQL como de programacion 14 Interfaces de usuario EditarInterfaces graficas de usuario Editar Una interfaz grafica de usuario GUI es un tipo de interfaz que permite a los usuarios interactuar con dispositivos o programas electronicos mediante iconos graficos e indicadores visuales como la notacion secundaria a diferencia de las interfaces basadas en texto las etiquetas de comandos mecanografiadas o la navegacion de texto Las GUI son mas faciles de aprender que las interfaces de linea de comandos CLI que requieren que los comandos se escriban en el teclado Se dispone de aplicaciones de administracion grafica o frontales de propiedad de terceros y gratuitas que se integran con MySQL y permiten a los usuarios trabajar con la estructura y los datos de la base de datos de forma visual Algunos frontales muy conocidos son MySQL Workbench Editar MySQL Workbench es el entorno integrado oficial de MySQL Fue desarrollado por MySQL AB y permite a los usuarios administrar graficamente las bases de datos MySQL y disenar visualmente las estructuras de las bases de datos MySQL Workbench reemplaza el anterior paquete de software MySQL GUI Tools Similar a otros paquetes de terceros pero aun considerado como el front end autorizado de MySQL MySQL Workbench permite a los usuarios administrar el diseno y modelado de bases de datos el desarrollo de SQL reemplazando al MySQL Query Browser y la administracion de bases de datos reemplazando al MySQL Administrator MySQL Workbench esta disponible en dos ediciones la habitual Edicion Comunitaria gratuita y de codigo abierto que puede descargarse del sitio web de MySQL y la Edicion Estandar patentada que amplia y mejora el conjunto de caracteristicas de la Edicion Comunitaria Adminer Editar Adminer antes conocido como phpMinAdmin es un front end gratuito de MySQL para gestionar el contenido de las bases de datos MySQL desde la version 2 tambien funciona en las bases de datos PostgreSQL Microsoft SQL Server SQLite y Oracle El administrador se distribuye bajo la licencia Apache o GPL v2 en forma de un unico archivo PHP de unos 300 KiB de tamano y es capaz de gestionar multiples bases de datos con muchas pieles CSS disponibles Su autor es Jakub Vrana quien comenzo a desarrollar esta herramienta como una alternativa ligera a phpMyAdmin en julio de 2007 ClusterControl Editar ClusterControl es un sistema de administracion de MySQL de extremo a extremo que provee la habilidad de desplegar monitorear administrar y escalar instancias de MySQL desde una sola interfaz Es desarrollado por Severalnines La version comunitaria de ClusterControl es de uso libre y permite al usuario desplegar y monitorear sus instancias de MySQL Las caracteristicas avanzadas como el balanceo de carga respaldo y restauracion conmutacion por error etc son parte de una oferta de pago Database Workbench Editar Database Workbench es una aplicacion de software para el desarrollo y la administracion de multiples bases de datos relacionales utilizando SQL con interoperatividad entre diferentes sistemas de bases de datos desarrollada por Upscene Productions Dado que Databases Workbench es compatible con multiples sistemas de bases de datos puede proporcionar a los desarrolladores de software la misma interfaz y el mismo entorno de desarrollo para estos sistemas de bases de datos que de otro modo serian diferentes e incluye tambien herramientas de bases de datos cruzadas Database Workbench soporta las siguientes bases de datos relacionales Oracle Database Microsoft SQL Server SQL Anywhere Firebird NexusDB InterBase MySQL y MariaDB Database Workbench 5 funciona en plataformas Windows de 32 o 64 bits Bajo Linux FreeBSD o macOS Database Workbench puede funcionar con Wine DBeaver Editar DBeaver es un cliente SQL y una herramienta de administracion de base de datos DBeaver incluye soporte extendido para las siguientes bases de datos MySQL y MariaDB PostgreSQL Oracle DB2 LUW Exasol SQL Server Sybase Firebird Teradata Vertica Apache Phoenix Netezza Informix Apache Derby H2 SQLite y cualquier otra base de datos que tenga un controlador JDBC u ODBC DBeaver es un software libre y de codigo abierto que se distribuye bajo la licencia Apache 2 0 El codigo fuente esta alojado en GitHub DBEdit Editar DBEdit es un editor de base de datos que puede conectarse a un Oracle DB2 MySQL y cualquier base de datos que proporcione un controlador JDBC Funciona en Windows Linux y Solaris DBEdit es un software libre y de codigo abierto y se distribuye bajo la Licencia Publica General GNU El codigo fuente esta alojado en SourceForge HeidiSQL Editar HeidiSQL anteriormente conocido como MySQL Front es un cliente libre y de codigo abierto o frontend para MySQL y para sus bifurcaciones como MariaDB y Percona Server Microsoft SQL Server y PostgreSQL HeidiSQL es desarrollado por el programador aleman Ansgar Becker y algunos otros colaboradores en Delphi Para manejar bases de datos con HeidiSQL los usuarios deben ingresar a un servidor MySQL local o remoto con credenciales aceptables creando una sesion Dentro de esta sesion los usuarios pueden manejar las bases de datos MySQL dentro del servidor MySQL conectado desconectandose del servidor cuando haya terminado Su conjunto de caracteristicas es suficiente para las operaciones mas comunes y avanzadas de bases de datos tablas y registros de datos pero permanece en desarrollo activo para avanzar hacia la funcionalidad completa que se espera en un Frontend MySQL LibreOffice Base Editar La base de LibreOffice permite la creacion y gestion de bases de datos la preparacion de formularios e informes que proporcionan a los usuarios finales un facil acceso a los datos Al igual que Microsoft Access puede utilizarse como interfaz para diversos sistemas de bases de datos incluidas las bases de datos Access JET las fuentes de datos ODBC y MySQL o PostgreSQL 15 Navicat Editar Navicat es una serie de software de gestion y desarrollo de bases de datos graficas producido por PremiumSoft CyberTech Ltd para MySQL MariaDB Oracle SQLite PostgreSQL y Microsoft SQL Server Tiene una interfaz grafica de usuario similar a la de Explorer y admite multiples conexiones de bases de datos locales y remotas Su diseno esta hecho para satisfacer las necesidades de una variedad de audiencias desde administradores y programadores de bases de datos hasta diversas empresas empresas que atienden a los clientes y comparten informacion con los socios Navicat es una herramienta multiplataforma y funciona en plataformas Microsoft Windows OS X y Linux En el momento de la compra los usuarios pueden seleccionar un idioma para el software entre los ocho idiomas disponibles Ingles frances aleman espanol japones polaco chino simplificado y chino tradicional OpenOffice org Editar La base de OpenOffice org es de libre acceso y puede manejar bases de datos MySQL si se instala toda la suite phpMyAdmin Editar phpMyAdmin es una herramienta gratuita y de codigo abierto escrita en PHP destinada a manejar la administracion de MySQL con el uso de un navegador web Puede realizar diversas tareas como crear modificar o eliminar bases de datos tablas campos o filas ejecutar sentencias SQL o gestionar usuarios y permisos El software que esta disponible en 78 idiomas 16 es mantenido por The phpMyAdmin Project 17 Puede importar datos de CSV y SQL y transformar los datos almacenados en cualquier formato utilizando un conjunto de funciones predefinidas como la visualizacion de datos BLOB como imagenes o enlaces de descarga SequelPro Editar Sequel Pro es una aplicacion MacOS gratuita y de codigo abierto para trabajar con bases de datos MySQL de forma local o remota Utiliza el modelo freemium en el que los usuarios de Gratis estan obteniendo caracteristicas de la mayoria de los servicios basicos Se necesita una tabla SQL para manejar estas solicitudes Puede manejar las nuevas y divertidas caracteristicas de UTF 8 para el nuevo unicode asi como tener multiples tablas de GB sin problemas 18 SQLBuddy Editar SQLBuddy es una aplicacion de codigo abierto basada en la web y escrita en PHP destinada a manejar la administracion de MySQL y SQLite con el uso de un navegador web El proyecto hace hincapie en la facilidad de instalacion y en una interfaz de usuario sencilla SQLyog Editar SQLyog es una herramienta GUI disponible tanto en version gratuita como de pago Las manipulaciones de datos por ejemplo insertar actualizar y eliminar pueden realizarse desde una interfaz similar a una hoja de calculo Su editor tiene resaltado de sintaxis y varias opciones de formato automatico Se pueden manipular tanto los datos de la tabla en bruto como el conjunto de resultados de una consulta Su funcion de busqueda de datos utiliza una sintaxis de busqueda similar a la de Google y se traduce a SQL de forma transparente para el usuario Cuenta con una herramienta de respaldo para realizar copias de seguridad desatendidas Las copias de seguridad pueden ser comprimidas y opcionalmente almacenadas como un archivo por tabla asi como identificadas con una marca de tiempo Toad for MySQL Editar Toad for MySQL es una aplicacion de software de Dell Software que los desarrolladores de bases de datos administradores de bases de datos y analistas de datos utilizan para administrar tanto bases de datos relacionales como no relacionales utilizando SQL Toad es compatible con muchas bases de datos y entornos Funciona en todas las plataformas Windows de 32 bits 64 bits incluyendo Microsoft Windows Server Windows XP Windows Vista Windows 7 y 8 32 o 64 bits Dell Software tambien ha lanzado una edicion de Toad para Mac Dell provee Toad en versiones comerciales y de prueba gratuitas La version gratuita esta disponible en la comunidad de ToadWorld com Webmin Editar Webmin es una herramienta de configuracion de sistemas basada en la web para sistemas de tipo Unix aunque las versiones recientes tambien pueden ser instaladas y ejecutadas en Windows Con el es posible configurar los elementos internos del sistema operativo como los usuarios las cuotas de disco los servicios o los archivos de configuracion asi como modificar y controlar las aplicaciones de codigo abierto como el servidor HTTP Apache PHP o MySQL Webmin se basa en gran medida en Perl ejecutandose como su propio proceso y servidor web Se comunica por defecto a traves del puerto TCP 10000 y puede ser configurado para usar SSL si se instala OpenSSL con los modulos adicionales de Perl necesarios Esta construido alrededor de modulos que tienen una interfaz con los archivos de configuracion y el servidor Webmin Esto hace que sea facil anadir nuevas funcionalidades Debido al diseno modular de Webmin es posible para cualquiera que este interesado en escribir plugins para la configuracion del escritorio Webmin tambien permite controlar muchas maquinas a traves de una sola interfaz o el inicio de sesion sin problemas en otros hosts de Webmin en la misma subred o LAN Interfaz de linea de comandos Editar Una interfaz de linea de comandos es un medio de interactuar con un programa informatico en el que el usuario emite comandos al programa escribiendo en lineas sucesivas de texto lineas de comandos MySQL se envia con muchas herramientas de linea de comandos de las cuales la interfaz principal es el cliente mysql 19 20 Las utilidades de MySQL son un conjunto de utilidades disenadas para realizar tareas comunes de mantenimiento y administracion Incluidas originalmente como parte del Banco de Trabajo de MySQL las utilidades son una descarga independiente disponible en Oracle Percona Toolkit es un kit de herramientas multiplataforma para MySQL desarrollado en Perl 21 Percona Toolkit puede ser usado para probar que la replicacion funciona correctamente arreglar datos corruptos automatizar tareas repetitivas y acelerar los servidores Percona Toolkit esta incluido en varias distribuciones de Linux como CentOS y Debian y los paquetes estan disponibles para Fedora y Ubuntu tambien Percona Toolkit fue desarrollado originalmente como Maatkit pero a partir de finales de 2011 Maatkit ya no esta desarrollado El shell de MySQL es una herramienta para el uso interactivo y la administracion de la base de datos MySQL Soporta los modos JavaScript Python o SQL y puede ser utilizado para la administracion y el acceso 22 Interfaces de programacion de aplicaciones EditarMuchos lenguajes de programacion con APIs de lenguaje especifico incluyen bibliotecas para acceder a bases de datos MySQL Entre ellas se encuentran MySQL Connector Net para la integracion con Visual Studio de Microsoft los lenguajes mas utilizados son C y VB y el controlador JDBC para Java Ademas una interfaz ODBC llamada MySQL Connector ODBC permite que los lenguajes de programacion adicionales que soportan la interfaz ODBC se comuniquen con una base de datos MySQL como ASP o ColdFusion El metodo de consulta basado en HTSQL URL tambien se envia con un adaptador MySQL permitiendo la interaccion directa entre una base de datos MySQL y cualquier cliente web a traves de URLs estructuradas Existen otros controladores para lenguajes como Python 23 o Node js 24 Forks Editar Existe una variedad de forks de MySQL incluyendo las siguientes Actual Editar MariaDB Editar MariaDB es un fork desarrollado por la comunidad del sistema de gestion de bases de datos relacionales MySQL que pretende permanecer libre bajo la GPL de GNU Al ser una bifurcacion de un sistema lider de software de codigo abierto es notable por estar liderado por los desarrolladores originales de MySQL que lo bifurcaron debido a las preocupaciones sobre su adquisicion por Oracle 25 Los colaboradores deben compartir sus derechos de autor con la Fundacion MariaDB 26 MariaDB pretende mantener una alta compatibilidad con MySQL asegurando una capacidad de sustitucion drop in con equivalencia binaria de la biblioteca y una coincidencia exacta con las API s y comandos de MySQL 27 Hay algunas diferencias e incompatibilidades documentadas entre las versiones de MySQL y MariaDB 27 sin embargo y algunas herramientas para interactuar con MySQL como el MySQL Workbench no son totalmente compatibles con MariaDB 28 Incluye el motor de almacenamiento XtraDB para reemplazar a InnoDB 29 asi como un nuevo motor de almacenamiento Aria que pretende ser tanto un motor transaccional como no transaccional quizas incluso incluido en futuras versiones de MySQL 30 Percona Server for MySQL Editar Percona Server for MySQL fork por Percona tiene como objetivo mantener una estrecha compatibilidad con las versiones oficiales de MySQL mientras se centra en el rendimiento y el aumento de la visibilidad de las operaciones del servidor 31 Tambien se incluye en Percona Server for MySQL XtraDB la bifurcacion de Percona del motor de almacenamiento InnoDB Percona incluye libremente un numero de caracteristicas de escalabilidad disponibilidad seguridad y respaldo que solo estan disponibles en la edicion comercial Enterprise de MySQL 32 Abandonado Editar Drizzle Editar Drizzle era un sistema de gestion de bases de datos relacionales DBMS de codigo abierto y software libre que se creo a partir de la ahora desaparecida rama de desarrollo 6 0 del DBMS de MySQL 33 Al igual que MySQL Drizzle tenia una arquitectura cliente servidor y utiliza SQL como su principal lenguaje de comandos Drizzle fue distribuido bajo la version 2 y 3 de la Licencia Publica General de GNU GPL con partes incluyendo los controladores de protocolo y la replicacion de mensajes bajo la licencia BSD WebScaleSQL Editar WebScaleSQL era una rama de software de MySQL 5 6 y fue anunciada el 27 de marzo de 2014 por Facebook Google LinkedIn y Twitter como un esfuerzo conjunto para proporcionar una estructura de desarrollo centralizada para ampliar MySQL con nuevas caracteristicas especificas para sus despliegues a gran escala como la construccion de grandes bases de datos replicadas que se ejecutan en granjas de servidores Asi WebScaleSQL abrio un camino hacia la deduplicacion de los esfuerzos que cada empresa habia estado poniendo en el mantenimiento de su propia rama de MySQL y hacia la union de mas desarrolladores Al combinar los esfuerzos de estas empresas e incorporar varios cambios y nuevas caracteristicas en MySQL WebScaleSQL se dirigio a apoyar el despliegue de MySQL en entornos de gran escala 34 35 El codigo fuente del proyecto esta licenciado bajo la version 2 de la Licencia Publica General de GNU y esta alojado en GitHub 36 37 Versiones de MySQL EditarEl siguiente grafico provee un resumen de varias versiones de MySQL y sus estados actuales de desarrollo 38 39 40 41 42 43 44 45 Especificaciones EditarPlataformas Editar MySQL funciona sobre multiples plataformas incluyendo AIX BSD FreeBSD HP UX Kurisu OS GNU Linux Mac OS X NetBSD OpenBSD OS 2 Warp QNX SGI IRIX Solaris SunOS SCO OpenServer SCO UnixWare Tru64 eBD Windows 95 Windows 98 Windows NT Windows 2000 Windows XP Windows Vista Windows 7 Windows 8 Windows 10 y Windows Server 2000 2003 2008 y 2012 OpenVMS 46 Oracle provee el codigo fuente de MySQL Community Edition y versiones compiladas para diferentes sistemas operativos 47 aunque el rendimiento de MySQL se encuentra optimizado para sistemas GNU Linux con pequenas diferencias de rendimiento entre las diferentes distribuciones 48 Caracteristicas adicionales EditarUsa GNU Automake Autoconf y Libtool para portabilidad Uso de multihilos mediante hilos del kernel Usa tablas en disco b tree para busquedas rapidas con compresion de indice Tablas hash en memoria temporales El codigo MySQL se prueba con Purify un detector de memoria perdida comercial asi como con Valgrind una herramienta GPL Completo soporte para operadores y funciones en clausulas select y where Completo soporte para clausulas group by y order by soporte de funciones de agrupacion Seguridad ofrece un sistema de contrasenas y privilegios seguro mediante verificacion basada en el host y el trafico de contrasenas esta cifrado al conectarse a un servidor Soporta gran cantidad de datos MySQL Server tiene bases de datos de hasta 50 millones de registros Se permiten hasta 64 indices por tabla 32 antes de MySQL 4 1 2 Cada indice puede consistir desde 1 hasta 16 columnas o partes de columnas El maximo ancho de limite son 1000 bytes 500 antes de MySQL 4 1 2 Los clientes se conectan al servidor MySQL usando sockets TCP IP en cualquier plataforma En sistemas Windows se pueden conectar usando named pipes y en sistemas Unix usando ficheros socket Unix En MySQL 5 0 los clientes y servidores Windows se pueden conectar usando memoria compartida MySQL contiene su propio paquete de pruebas de rendimiento proporcionado con el codigo fuente de la distribucion de MySQL Caracteristicas Editar Inicialmente MySQL carecia de elementos considerados esenciales en las bases de datos relacionales tales como integridad referencial y transacciones A pesar de ello atrajo a los desarrolladores de paginas web con contenido dinamico justamente por su simplicidad Poco a poco los elementos de los que carecia MySQL estan siendo incorporados tanto por desarrollos internos como por desarrolladores de software libre Entre las caracteristicas disponibles en las ultimas versiones se puede destacar Amplio subconjunto del lenguaje SQL Algunas extensiones son incluidas igualmente Disponibilidad en gran cantidad de plataformas y sistemas Posibilidad de seleccion de mecanismos de almacenamiento que ofrecen diferentes velocidades de operacion soporte fisico capacidad distribucion geografica transacciones Transacciones y claves foraneas Conectividad segura Replicacion Busqueda e indexacion de campos de texto MySQL es un sistema de administracion relacional de bases de datos Una base de datos relacional archiva datos en tablas separadas en vez de colocar todos los datos en un gran archivo Esto permite velocidad y flexibilidad Las tablas estan conectadas por relaciones definidas que hacen posible combinar datos de diferentes tablas sobre pedido MySQL es software de fuente abierta Fuente abierta significa que es posible para cualquier persona usarlo y modificarlo Cualquier persona puede bajar el codigo fuente de MySQL y usarlo sin pagar Cualquier interesado puede estudiar el codigo fuente y ajustarlo a sus necesidades MySQL usa el GPL GNU General Public License para definir que puede hacer y que no puede hacer con el software en diferentes situaciones Si usted no se ajusta al GPL o requiere introducir codigo MySQL en aplicaciones comerciales usted puede comprar una version comercial licenciada Caracteristicas distintivas Editar Las siguientes caracteristicas son implementadas unicamente por MySQL Permite escoger entre multiples motores de almacenamiento para cada tabla En MySQL 5 0 estos debian anadirse en tiempo de compilacion a partir de MySQL 5 1 se pueden anadir dinamicamente en tiempo de ejecucion Los hay nativos como MyISAM Falcon Merge InnoDB BDB Memory heap MySQL Cluster Federated Archive CSV Blackhole y Example Desarrollados por partners como solidDB NitroEDB ScaleDB TokuDB Infobright antes Brighthouse Kickfire XtraDB IBM DB2 InnoDB Estuvo desarrollado asi pero ahora pertenece tambien a Oracle Desarrollados por la comunidad como memcache httpd PBXT y Revision Agrupacion de transacciones reuniendo multiples transacciones de varias conexiones para incrementar el numero de transacciones por segundo Tipos de compilacion del servidor Editar Hay tres tipos de compilacion del servidor MySQL Estandar Los binarios estandar de MySQL son los recomendados para la mayoria de los usuarios e incluyen el motor de almacenamiento InnoDB Max No se trata de MaxDB que es una cooperacion con SAP Los binarios incluyen caracteristicas adicionales que no han sido lo bastante probadas o que normalmente no son necesarias MySQL Debug Son binarios que han sido compilados con informacion de depuracion extra No debe ser usada en sistemas en produccion porque el codigo de depuracion puede reducir el rendimiento Especificaciones del codigo fuente Editar MySQL esta escrito en una mezcla de C y C Desarrollo del proyecto EditarEl desarrollo de MySQL se fundamenta en el trabajo de los desarrolladores contratados por la empresa MySQL AB quienes se encargan de dar soporte a los socios comerciales y usuarios de la comunidad MySQL y dar solucion a los problemas encontrados por los usuarios Los usuarios o miembros de la comunidad MySQL pueden reportar bugs revisando el manual en linea que contiene las soluciones a problemas encontrados el historial de cambios la base de datos bugs que contiene bugs reportados y solucionados y en las listas de correo MySQL A traves de las listas de correo los usuarios pueden enviar preguntas y estas seran contestadas por desarrolladores brindandoles mejor soporte Otras funcionalidades de las listas de correo EditarAnuncios informan sobre nuevas versiones de MySQL y programas relacionados MySQL lista principal de discusion de MySQL y sql Bugs permite a la gente buscar y arreglar bugs Temas internos para gente que trabaja con el codigo de MySQL Es el forum para discutir sobre el desarrollo de MySQL MySQLdoc para gente que trabaja en documentacion Pruebas de rendimiento para gente interesada en temas de rendimiento no solo de MySQL sino de otros motores de bases de datos Empaquetadores para discusiones sobre empaquetamiento y distribucion de MySQL Java discusiones sobre MySQL Server y Java Otras listas de correo son MyODBC Herramientas GUI Cluster Dotnet PlusPlus y Perl Adicional a las listas de correo se encuentra el soporte de IRC de la comunidad MySQL Ademas hay soporte a traves de foros agrupados en categorias tales como Migracion Uso de MySQL Conectores MySQL Tecnologia MySQL y Negocios Estructuras organizativas asociativas o de decision EditarLa direccion y el patrocinio de los proyectos MySQL estan a cargo de la empresa MySQL AB quien posee el copyright del codigo fuente MySQL su logo y marca registrada MySQL Inc y MySQL GmbH son ejemplos de empresas subsidiarias de MySQL AB Estan establecidas en los Estados Unidos y Alemania respectivamente MySQL AB cuenta con mas de 200 empleados en mas de 20 paises y funcionan bajo la estrategia de teletrabajo En enero del 2008 Sun Microsystems anuncia su compra En abril de 2009 Oracle anuncio la compra de Sun Microsystems 49 Industria relacionada Editar La LAMP comprende MySQL aqui con Squid La industria radica en la venta de productos software y de algunos servicios relacionados con numerosas empresas que utilizan estos productos MySQL AB clasifica los productos asi MySQL Enterprise incluye MySQL Enterprise Server Monitoreo de la red MySQL servicios de consulta y soporte de produccion MySQL MySQL Cluster MySQL Embedded Database MySQL Drivers para JDBC ODBC y Net MySQL Tools MySQL Administrator MySQL Query Browser and the MySQL Migration Toolkit MaxDB MaxDB es una base de datos de codigo abierto certificada para SAP R3 Los ingresos de esta empresa por la venta de licencias privativas de sus productos y los servicios suma los U 12 millones MySQL en cifras EditarSegun las cifras del fabricante existirian mas de seis millones de copias de MySQL funcionando en la actualidad lo que supera la base instalada de cualquier otra herramienta de bases de datos El trafico del sitio web de MySQL AB supero en 2004 al del sitio de IBM Licencia EditarLa licencia GNU GPL de MySQL obliga a que la distribucion de cualquier producto derivado aplicacion se haga bajo esa misma licencia Si un desarrollador desea incorporar MySQL en su producto pero desea distribuirlo bajo otra licencia que no sea la GNU GPL puede adquirir una licencia comercial de MySQL que le permite hacer justamente eso Vease tambien EditarBonsai CVS XAMPP Appserv RDBMSReferencias Editar Oracle MySQL Database Service en ingles Consultado el 31 de enero de 2021 http db engines com en ranking http monty says blogspot com es 2009 12 help saving mysql html https www openhub net p mysql analyses latest Wikimedia servers System architecture Wikimedia Meta Wiki Wikimedia Foundation Consultado el 17 de septiembre de 2012 Urlocker M Zack 13 de diciembre de 2005 Google Runs MySQL The Open Force M Zack Urlocker Consultado el 3 de agosto de 2010 AdWords was built using the MySQL database Claburn Thomas 24 de abril de 2007 Google Releases Improved MySQL Code InformationWeek CPM Media Consultado el 30 de noviembre de 2008 Callaghan Mark 13 de abril de 2010 MySQL at Facebook YouTube Google Consultado el 3 de agosto de 2010 x 000 servers Master slave replication InnoDB Sobel Jason 21 de diciembre de 2007 Keeping Up The Facebook Blog Facebook Consultado el 30 de octubre de 2008 Malik Om 25 de abril de 2008 Facebook s Insatiable Hunger for Hardware GigaOM GigaOmniMedia Consultado el 30 de octubre de 2008 Cole Jeremy 14 de abril de 2011 Big and Small Data at Twitter YouTube Google Consultado el 20 de octubre de 2011 MySQL Customer Flickr MySQL Customers Oracle Consultado el 17 de septiembre de 2012 MySQL Customer YouTube MySQL Customers Oracle Consultado el 17 de septiembre de 2012 mtop monitoreo de carga en MySQL Base Features LibreOffice web archive org 7 de enero de 2012 Consultado el 23 de mayo de 2020 contributors phpMyAdmin Translations phpMyAdmin en ingles Consultado el 23 de mayo de 2020 contributors phpMyAdmin Team phpMyAdmin en ingles Consultado el 23 de mayo de 2020 Sequel Pro sequelpro com Consultado el 23 de mayo de 2020 MySQL MySQL 5 6 Reference Manual 4 5 1 mysql The MySQL Command Line Client dev mysql com Consultado el 23 de mayo de 2020 MySQL MySQL 8 0 Reference Manual 4 5 2 mysqladmin Client for Administering a MySQL Server dev mysql com Consultado el 23 de mayo de 2020 Percona Toolkit Percona en ingles Consultado el 23 de mayo de 2020 MySQL Download MySQL Shell dev mysql com Consultado el 23 de mayo de 2020 MySQL Download Connector Python dev mysql com Consultado el 23 de mayo de 2020 MySQL Download Connector Node js dev mysql com Consultado el 23 de mayo de 2020 Pearce Rohan 28 de marzo de 2013 Dead database walking MySQL s creator on why the future belongs to MariaDB Computerworld en ingles Consultado el 23 de mayo de 2020 Contributing Code MariaDB KnowledgeBase Consultado el 23 de mayo de 2020 a b MariaDB versus MySQL Compatibility MariaDB KnowledgeBase Consultado el 23 de mayo de 2020 Datadog 14 de abril de 2016 Monitoring MySQL performance metrics Monitoring MySQL performance metrics en ingles Consultado el 23 de mayo de 2020 About XtraDB MariaDB KnowledgeBase Consultado el 23 de mayo de 2020 Aria FAQ MariaDB KnowledgeBase Consultado el 23 de mayo de 2020 Frequently Asked Questions about Percona Server a MySQL Alternative web archive org 15 de abril de 2015 Consultado el 23 de mayo de 2020 Percona challenges Oracle with alternate MySQL release PCWorld en ingles 10 de octubre de 2013 Consultado el 23 de mayo de 2020 Clark Jack MySQL fork Drizzle gets general release ZDNet en ingles Consultado el 23 de mayo de 2020 Vaughan Nichols Steven J WebScaleSQL MySQL for Facebook sized databases ZDNet en ingles Consultado el 23 de mayo de 2020 Finley Klint 27 de marzo de 2014 Google and Facebook Team Up to Modernize Old School Databases Wired ISSN 1059 1028 Consultado el 23 de mayo de 2020 Forkin L Facebook Google and friends create WebScaleSQL from MySQL 5 6 www theregister co uk en ingles Consultado el 23 de mayo de 2020 WebScaleSQL We re Gonna Need A Bigger Database webscalesql org Consultado el 23 de mayo de 2020 B 3 Changes in Release 3 23 x Lifecycle Support Ended Oracle Archivado desde el original el 24 de julio de 2010 Consultado el 24 de agosto de 2010 B 2 Changes in Release 4 0 x Lifecycle Support Ended Oracle Archivado desde el original el 14 de abril de 2010 Consultado el 24 de agosto de 2010 B 1 Changes in Release 4 1 x Lifecycle Support Ended Oracle Archivado desde el original el 30 de marzo de 2010 Consultado el 24 de agosto de 2010 C 1 Changes in Release 5 0 x Lifecycle Support Ended Oracle Consultado el 24 de agosto de 2010 MySQL 5 1 Release Notes Oracle Consultado el 29 de enero de 2014 MySQL 5 5 Release Notes Oracle Consultado el 29 de enero de 2014 MySQL 5 6 Release Notes Oracle Consultado el 29 de enero de 2014 MySQL 5 7 Release Notes Oracle Consultado el 13 de marzo de 2014 1 MySQL MySQL Community Downloads en ingles Consultado el 31 de enero de 2021 Investigacion IT 15 de febrero de 2016 El mejor Linux para MySQL Consultado el 31 de enero de 2021 El Pais 20 de abril de 2009 Oracle adquiere Sun Microsystems por 5 710 millones Consultado el 31 de enero de 2021 Enlaces externos Editar Wikimedia Commons alberga una categoria multimedia sobre MySQL Wikilibros alberga un libro o manual sobre MySQL Sitio web oficial de MySQL en ingles MySQL Developer Zone en ingles Optimizacion de MySQL Conectarse a MySQL usando PHP Datos Q850 Multimedia MySQL Libros y manuales MySQL MediaWiki Manual MySQLObtenido de https es wikipedia org w index php title MySQL amp oldid 138001774, wikipedia, wiki, leyendo, leer, libro, biblioteca,

español

, española, descargar, gratis, descargar gratis, mp3, video, mp4, 3gp, jpg, jpeg, gif, png, imagen, música, canción, película, libro, juego, juegos