| MySQL | |
| | |
| Aparecido | 1995
|
|---|---|
| Desarrollador | MySQL AB / Sun Microsystems
|
| Última versión | 5.1.48 (17 de junio 2010) [+/−] |
| Versión en desarrollo | 5.5.1 (el 4 de enero de 2010) [+/−] |
| Sistema de aprovechamiento | Windows (95, 98, NT, 2000, XP y Vista ), Linux, Mac HUESO X, y otros (ver más bajos)
|
| Licencia | Licencia pública general GNU o licencia propietaria (ver Características)
|
| Sitio Web | mysql.com/ |
MySQL Es un sistema de gestión de base de datos (SGBD). Según el tipo de aplicación, su licencia es libre o propietario . Forma parte softwares de gestión de base de datos los más utilizados al mundo, tanto por el grande público (aplicaciones web principalmente) que por profesionales, en competencia con Oracle y Microsoft SQL Server.
MySQL AB Ha sido comprado el 16 de enero de 2008 por Sun Microsystems para un millardo de dólares estadounidenses[1]. 2009, Sun Microsystems ha sido adquirido por Oracle Corporación, poniendo entre las manos de una misma sociedad ambos productos competidores que son Oracle Database y MySQL. Este rescate ha sido autorizado por la Comisión europea lo 21 de enero 2010[2],[3].
Desde mayo 2009, su creador Michael Widenius ha creado MariaDB para continuar su desarrollo como proyecto Open Fuente.
Sumario |
MySQL Es un servidor de bases de datos relationnelles SQL desarrollado en una preocupación de prestaciones elevadas en lectura, lo que significa que es orientado más hacia el servicio de datos ya ubica que hacia aquel de actualizadas frecuentes y fuertemente sécurisées. Es multi-thread y multi-usuario.
Es un software libre desarrollado bajo doble licencia en funciones de la utilización que es hecha : en un producto libre o en un producto propietario. En este último caso, la licencia es payante, si no es la licencia pública general GNU] (GPL) que se aplica. Este tipo de licencia doble es utilizado por otros productos como el framework desarrollador de softwares Qt (para las versiones anteriores a la 4.5).
MySQL Funciona sobre numerosos sistemas de aprovechamiento diferente, incluant AIX, IBM i-5, BSDi, FreeBSD, HP-UX, Linux, Mac HUESO X, NetWare, NetBSD, OpenBSD, HUESO/2 Warp, SGI Irix, Solaris, SunOS, SCO OpenServer, SCO UnixWare, Tru64 Unix, Windows (2000, XP, Vista y 7 ).
Las bases de datos son accesibles utilizando los lenguajes de programación C, C++, VB, VB .LIMPIO, C#, Delphi/Kylix, Eiffel, Java, Perl, PHP, Python, Ruby y Tcl ; una API específica es disponible para cada uno de entre ellos. Una interfaz ODBC llamada MyODBC es también disponible. Java, MySQL puede ser utilizado de modo transparente con el estándar JDO.
Desde el rescate de MySQL AB por Sun Microsystems, MySQL ha devenido officieusement la base de datos a utilizar conjuntamente con el lenguaje de programación Java, lo que da una notoriedad adicional al SGBD cerca empresarial utilizando Java.
MySQL Formado parte del cuarteto LAMP : Linux, Apache, MySQL, PHP. Pertenece igualmente en sus variantes WAMP (Windows) y MAMP (Mac).
La pareja PHP/MySQL es muy utilizado por los sitios Web y propuesto por la mayoría de las hébergeurs Web. Más de la mitad de los sitios Web funcionan bajo Apache[4], que es el más a menudo utilizado conjuntamente con PHP y MySQL.
Wikipedia Utiliza MySQL, así como de numerosas empresas, cuyas Google, Yahoo!, Youtube, Adobe, Airbus, Alstom, Crédito agrícola, AFP, Reuters, BBC News, Ernst & Young, Alcatel-Lucent[5].
Desde la versión 5, es posible de utilizar el PL/SQL originellement desarrollado por Oracle Corporación con el fin de utilizar procedimientos y funciones almacenadas así como de los desencadenantes. Por otra parte, MySQL da soporte la norma SQL2 (utilización de las JOIN), lo que hace de le uno SGBD seguro ya que la conformidad en esta norma garantizará su compatibilidad con los encargos normalizados.
Su ausencia por defecto de apoyo de las transacciones y de la integridad automática de las mesas (salvo utilizando ciertos motores como InnoDB) devuelvan su adopción más complicada por ejemplo en las sociedades bancarias, no obstante, sus prestaciones que son generalmente mejores que la mayoría de los demás sistemas competidores, y su precio de implantación claramente inferior, permite obtener uno cierto éxito cerca empresarial teniendo necesidad de una base de datos poco onéreuse o poco eficiente.
El interés de utilizar las herramientas del www en sustitución del cliente servidor 2 o 3 tercio, ha empujado ciertas bancas tales que el Crédito mutuo, el Crédito agrícola, el LCL, la Banca desarrolladora de Canadá a proponer MySQL al catálogo de sus productos informáticos internos.
MySQL Es el œuvre de una sociedad sueca, MySQL AB, fundada por David Axmark, Allan Larsson y Michael "Monty" Widenius.
El nombre MySQL viene de su costumbre a préfixer por « My » una gran parte de sus dossiers, bibliotecas y herramientas. La hija de Monty Widenius era apodada « My ».
El nombre del logo de MySQL (el dauphin) Sakila, ha sido escogido por los creadores de MySQL sobre la base de un concurso. Ha sido propuesto por Ambrose Twebaze, desarrollador de Suazilandia . Según Ambrose, el nombre Sakila puise sus orígenes del siswati, la lengua local de Suazilandia.
La primera versión de MySQL ha aparecido el 23 de mayo de 1995.
Ha sido primeramente creado para un uso personal a marchar de mSQL que se pulsa el lenguaje de bajo nivel ISAM que encontraban demasiado lento y demasiado rígido. Han creado una nueva interfaz SQL guardando la misma API que mSQL.
MySQL Ha pasado en licencia GPL a marchar de la versión 3.23.19 (junio 2000)
2003, MySQL AB y SAP AG concluyen un acuerdo. El resultado se llamará MaxDB. Es salido de la integración del sistema de SAP (SAP DB) en MySQL.
El 20 de abril de 2009, Oracle Corporación anuncia recomprar Sun Microsystems para 7,4 millardos de dólares[6], creando el temor de ver MySQL desaparecer – o al menos no más ser desarrollado – en beneficio de Oracle, el SGBD de Oracle Corporación. MySQL Es sin embargo lejos de tener todas las funcionalidades de Oracle, y podría pues ser visto al contrario por la sociedad como un producto gratuito de llamada que banaliza el uso de SQL y preparando pues sus futuras ventas.
Lo una de las especificidades de MySQL es de poder gestionar varios motores en el seno de una sola base. Cada mesa puede utilizar un motor diferente en el seno de una base. Esto con el fin de optimiser la utilización de cada mesa.
Aquí está los diferentes motores históricos de MySQL :
De los motores de almacenajes OPEN Fuente :
De los motores de almacenajes comerciales :
La facilidad de utilización de varios motores de almacenaje en una sola base con MySQL permite una enorme flexibilidad en la optimización de la base : se utilizará MyISAM para almacenar los datos poco sensibles y necesitando un acceso rápido en los datos (por ejemplo una lista de usuarios), InnoBD para las funciones adelantadas y los datos más sensibles (por ejemplo para una lista de las transacciones bancarias), MEMORY para datos que pueden ser perdidas durante el redémarrage de la máquina y a menudo modificadas (por ejemplo una lista de usuarios on-line), ARCHIVA para un histórico (o log) no que necesita que poca lectura…
Dos métodos existen para repartir la carga sobre un conjunto de máquinas que funcionan bajo MySQL Server. Estos métodos permiten asegurar una redundancia (si una máquina cae panne, otras pueden tomar la levanta), de mejorar la rapidez de las investigaciones (SELECT) o todavía de establecer una máquina dédiée a la salvaguarda datos
MySQL Es capaz, desde la versión 3.23.15 de utilizar un sistema de réplication a sentido único relativamente mero a poner en marcha : un servidor maestro contiene la base de datos fuente y va a recibir el conjunto de las modificaciones, y un servidor esclavo que contiene una base en estructura idéntica y que va se connecter al servidor maestro para ir a buscar las nuevas modificaciones y actualizar sus bases. Un maestro no puede tener que un solo esclavo, pero no obstante un esclavo puede devenir a su vez maestro para otro servidor esclavo, realizando así un canal de réplication[7].
Todas las modificaciones (UPDATE, DELETE, INSERT…) deben seres enviados en el servidor maestro y serán automáticamente répercutées sobre sus esclavos, pero los encargos de investigación (SELECT), a menudo más numerosas y más golosas en recursos podrán ser efectuadas sobre uno o varios esclavos. Como los encargos de modificaciones tienen que ser redirigées sobre el servidor maestro, la concepción de la aplicación tiene que adaptarse en la arquitectura : el programmeur va a abrir dos conexiones en su programa, una sobre el servidor maestro, sobre el cual ejecutará todas sus modificaciones y una sobre el servidor esclavo sobre el cual ejecutará todas sus investigaciones.
Este sistema no permite sin embargo que una redundancia limitada :
En la mayoría de los casos, fallará una acción del administrador para restablecer el orden, y la aplicación cesará de funcionar durante este laps de tiempo. El interés de esta solución aparece entonces en la gestión de las salvaguardas, porque la aplicación no que utiliza que el servidor maestro, no será stoppée si el servidor esclavo de salvaguardes cae panne, pero una salvaguarda de la base será disponible en caso de que el servidor maestro cae panne.
Si se desea rajouter un nœud, falla ubicarlo al cabo del canal como esclavo y modificar la aplicación para gestionar este nuevo nœud.
Desde el punto de vista de MySQL, cada nœud es gestionado independientemente, es pues al programmeur de tener que gestionar el reparto de la carga.
MySQL Es capaz, desde la versión 4.1 y gracias al motor de almacenaje NDB de gestionar una grappe de servidores completos. Su estructura descansa sobre la duplicación datos, es decir que cada nœud formará parte de un grupo de nœud que poseerán toda la totalidad de la base[8].
Un protocolo puesto en marcha en cada nœud atiende de dirigir cada transacción a los diferentes nœuds implicados en la grappe, falla un mínimo de dos máquinas para establecer una solución de clustering MySQL y una máquina (que puede-incluso integrar un servidor MySQL) que va a jugar el rol de répartiteur de cargo en redirigeant los encargos sobre los nœuds disponibles y los menos ocupados.
Los encargos de investigaciones (SELECT) serán más rápidas, pero durante una modificación de los datos (un encargo UPDATE, DELETE o INSERT por ejemplo), ésta será efectuada sobre el conjunto de los nœuds, lo que bloqueará el juntos grappe durante esta operación.
Por informe en un sistema de réplication, la redundancia es mejorada : si un nœud tumba en panne, su carga es retomada automáticamente por las demás nœuds.
El ajout de un nuevo nœud puede hacerse sin tener necesidad de repartitionner la base, basta de hacerlo reconocer por la grappe y el redémarrage de un nœud puede hacerse sin tener a redémarrer la grappe.
Desde el punto de vista de MySQL, cada nœud formado parte de un conjunto que podría ser reconocida como una sola máquina. Para el programmeur, tiene que programar su aplicación para comunicar con el répartiteur de cargo.
Esta solución se adapta perfectamente cuando la disponibilidad y la seguridad de los datos es un problema crítico y que se investiga un partionnement técnico en cargo de escritura. Acoplado a funcionalidades tiempo real y a una API de programación asynchrone NDB Cluster se dirige principalmente en las exigencias del mercado de las telecomunicaciones.