MySQL
De Wikipédia, l'encyclopédie libre
Modèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/fileModèle:Fiche/file
MySQL Est un système de gestion de base de données relacional, multihilo et multiusuario avec plus de six millions d'installations.[1] MySQL AB —depuis janvier de 2008 une subsidiaire de Sun Microsystems et celle-ci à son tour de Oracle Corporation depuis avril de 2009— développe MySQL comme logiciel libre dans un schéma de licenciamiento dual.
il d'une part s'offre sous la GNU GPL pour n'importe quel usage compatible avec cette licence, mais pour ces entreprises que veuillent l'incorporer en des produits privativos doivent acheter à l'entreprise une licence spécifique qui leur permette cet usage. Il est développé dans sa majeure part en ANSI C.
Au contraire de projets comme Apache, où le logiciel est développé par une communauté publique et le copyright du code est en pouvoir de l'auteur individuel, MySQL est propriétaire et il est sponsorisé par une entreprise privée, que possède le copyright de la majeure part du code.
Ceci est ce que il permet le schéma de licenciamiento antérieurement mentionné. Outre la vente de licences privativas, la compagnie offre support et des services. Pour ses opérations embauchent travailleurs autour du monde que collaborent via Internet. MySQL AB A été fondé par David Axmark, Allan Larsson et Michael Widenius.
Histoire du projet
SQL (Langage de Consultation Structuré) a été commercialisé par première fois en 1981 par IBM, lequel a été présenté à ANSI et a dès lors été censé un standard pour les tu bases de données relacionales. Depuis 1986, le standard SQL est apparu en des différentes versions comme par exemple: SQL:92, SQL:99, SQL:2003. MySQL Est une idée originaire de l'entreprise opensource MySQL AB établie initialement en Suède en 1995 et dont les fondateurs sont David Axmark, Allan Larsson, et Michael "Monty" Widenius. Le but qui pourchasse cette entreprise consiste à que MySQL accomplisse le standard SQL, mais sans sacrifier vitesse, fiabilité ou utilisabilité.
Michael Widenius dans le décennie des 90 a agi d'user mSQL pour relier les tables en usant routines de bas niveau ISAM, pourtant, mSQL n'était pas rapide et souple pour ses besoins. Ceci l'a porté à créer une API SQL dénommée MySQL pour des bases de données très similaire à la de mSQL mais plus portable.
La provenance du nom de MySQL n'est pas claire. Depuis fait plus de 10 ans, les outils ont maintenu le prefijo My. Aussi, il se croit qu'il a relation avec le nom de la fille du cofundador Monty Widenius qui s'appelle My.
D'autre part, le nom du delfín de MySQL est Sakila et a été sélectionné par les fondateurs de MySQL AB dans le concours “Name the Dolphin”. Ce nom a été envoyé par Ambrose Twebaze, un développeur de Open source Africain, dérivé du idiome SiSwate, l'idiome local de le Swaziland et correspond au nom d'une ville en Arusha, la Tanzanie, près l'Ouganda la ville origine d'Ambrose.
Langages de programmation
Existent diverse APIs que permettent, à des applications écrites en divers langages de programmation, accéder aux bases de données MySQL, en comprenant C, C++, C#, Pascal, Delphi (via dbExpress), Eiffel, Smalltalk, Java (avec une implémentation native du driver de Java), Lisp, Perl, PHP, Python, Ruby,Crevettes, REALbasic (Mac), (x)Harbour (Eagle1), FreeBASIC, et Tcl; chacun de ceux-ci utilise une API spécifique. il aussi existe un interface ODBC, appelé MyODBC que permet à n'importe quel langage de programmation que supporte ODBC se communiquer avec les bases de données MySQL. il aussi se peut accéder depuis le système SAP, langage ABAP.
Applications
MySQL est très utilisé en applications web, comme Drupal ou phpBB, en des plate-formes (Linux/Windows-Apache-MySQL-PHP/Perl/Python), et par des outils de suivi d'erreurs comme Bugzilla. Sa popularité comme application web est très liée à PHP, que souvent apparaît en combinaison avec MySQL. MySQL Est une base de données très rapide dans la lecture lorsqu'il utilise le moteur ne transaccional MyISAM, mais peut provoquer des problèmes d'intégrité en des environnements de grande assistance dans la modification. En des applications web il y a basse assistance dans la modification de données et en revanche l'environnement est intensif en lecture de données, ce que fait à MySQL idéale pour ce type d'applications.
Spécifications
Plate-formes
MySQL fonctionne sur des multiples plate-formes, en comprenant:
- AIX
- BSD
- FreeBSD
- HP-UX
- GNU/Linux
- Mac VOUS X
- NetBSD
- Novell Netware
- OpenBSD
- VOUS/2 Warp
- QNX
- SGI IRIX
- Solaris
- SunOS
- SCO OpenServer
- SCO UnixWare
- Tru64
- eBD
- Windows 95, Windows 98, Windows NT, Windows 2000, Windows XP, Windows Vue, Windows 7 et autres versions de Windows.
- OpenVMS (Voyez-vous: www.pi-net.dyndns.org/anonymous/kits/).
Caractéristiques de la version 5.0.22
- Un ample subconjunto d'ANSI SQL 99, et diverse extensions.
- Support à multiplataforma
- Procédures stockées
- Disparadores (triggers)
- Curseurest
- Vues actualisable
- Support à VARCHAR
- INFORMATION_SCHEMA
- Façon Strict
- Support X/Open XA de transactions distribuées; transaction en deux phases comme part de ceci, en utilisant le moteur InnoDB d'Oracle
- Moteurs d'emmagasinage indépendants (MyISAM pour des lectures rapides, InnoDB pour des transactions et intégrité referencial)
- Transactions avec les moteurs d'emmagasinage InnoDB, BDB Et Cluster; points de récupération (savepoints) avec InnoDB
- Support pour SSL
- Query caching
- Sub-SELECTs (ou SELECTs nichés)
- Réplique avec un maître par esclave, divers esclaves par maître, sans support automatique pour des multiples maîtres par esclave.
- indexing Et en cherchant champs de texte complets en usant le moteur d'emmagasinage MyISAM
- Embedded database library
- Support complet pour Unicode
- Conformément aux règles ACID en usant les moteurs InnoDB, BDB et Cluster
- Shared-nothing clustering through MySQL Cluster
Caractéristiques additionnels
- il Use GNU Automake, Autoconf, et Libtool pour portabilidad
- Usage de multihilos moyennant des fils du kernel.
- Il use des tables en disque b-tree pour des recherches rapides avec compression d'indice
- Tables hash en mémoire temporelles
- Le code MySQL s'essaie avec Purify (un détecteur de mémoire perdue commerciale) ainsi qu'avec Valgrind, un outil GPL
- Complet support pour des opérateurs et des fonctions en des clauses select et where.
- Complet support pour des clauses group by et order by, support de fonctions de groupement
- Sécurité: il offre un système de mots de passe et privilèges sûr moyennant vérification basée sur l'host et le trafic de mots de passe est chiffré au se relier à un serveur.
- Il supporte grande quantité de données. MySQL Server A des bases de données de jusqu'à 50 millions de registres.
- Ils se permettent jusqu'à 64 indices par table (32 avant de MySQL 4.1.2). Chaque indice peut consister depuis 1 jusqu'à 16 colonnes ou des parts de colonnes. Le maximum large de limite ils sont 1000 bytes (500 avant de MySQL 4.1.2).
- Les clients se relient au serveur MySQL en usant sockets TCP/IP à n'importe quel plate-forme. En des systèmes Windows se peuvent relier en usant named pipes et en des systèmes Unix en usant fichiers socket Unix.
- En MySQL 5.0, les clients et serveurs Windows se peuvent relier en usant mémoire partagée.
- MySQL Contient son propre colis de preuves de rendement fourni avec le code source de la distribution de MySQL.
Caractéristiques (version 4.0)
Initialement, MySQL manquait d'éléments envisagés essentiels dans les bases de données relacionales, telles comme intégrité referencial et transactions. Malgré cela, a attiré aux développeurs de pages web avec contenu dynamique, justement par son simplicidad.
Petit à petit les éléments desquels il manquait MySQL sont en train d'être incorporés autant par des développements internes, comme par des développeurs de logiciel libre. Entre les caractéristiques disponibles dans les dernières versions il se peut souligner:
- Ample subconjunto du langage SQL. Quelques extensions sont comprises également.
- Disponibilité en grande quantité de plate-formes et systèmes.
- Différentes options d'emmagasinage selon si il se souhaite vitesse en les opérations ou le majeur nombre d'opérations disponibles.
- Transactions et clefs foráneas.
- Connectivité sûre.
- Replicación.
- Recherche et indexation de champs de texte.
MySQL Est un système d'administration de bases de données. Une base de données est une collection structurée de tables que contiennent des données. Celle-ci peut être depuis une simple liste d'achats à une galerie de peintures ou le vaste volume d'information dans un réseau corporatif. Pour agréger, accéder à et accuser des données gardées en un computador, vous précise un administrateur comme MySQL Server. Étant donné que les computadores sont très bons en maniant grandes quantités d'information, les administrateurs de bases de données jouent un papier central en calcul, comme des applications indépendantes ou comme part d'autres applications.
MySQL Est un système d'administration relacional de bases de données. Une base de données relacional archive des données en des tables séparées au lieu de placer toutes les données dans quelques grandes archives. Ceci permet vitesse et flexibilité. Les tables sont reliées par des relations définies que font possible combiner des données de différentes tables sur demandé.
MySQL Est logiciel de source ouverte. Source ouverte signifie qu'il est possible pour n'importe quelle personne l'user et le modifier. N'importe quelle personne peut descendre le code source de MySQL et l'user sans payer. N'importe quel intéressé peut étudier le code source et l'ajuster à ses besoins. MySQL Use le GPL (GNU Général Public License) pour définir que peut faire et qu'il ne peut pas faire avec le logiciel en des différentes situations. Si vous il ne s'ajuste pas au GPL ou requiert introduire code MySQL en des applications commerciales, vous peut acheter une version commerciale licenciée.
Améliorations futures
Le Carte de route de MySQL 5.1 indique support pour:
- Particionado de la base de données
- Backup en ligne pour tous les moteurs d'emmagasinage
- Replicación sûres
- Contraintes à niveau de colonne
- Planification d'événements
- Fonctionnes XML
Caractéristiques distinctives
Les suivantes caractéristiques sont implémentées uniquement par MySQL:
- Multiples moteurs d'emmagasinage (MyISAM, Merge, InnoDB, BDB, Memory/heap, MySQL Cluster, Federated, Archivez, CSV, Blackhole et Example en 5.X), en permettant à l'utilisateur choisir celle qui il soit plus appropriée pour chaque table de la base de données.
- Groupement de transactions, en réunissant multiples transactions de diverse connexions pour accroître le nombre de transactions par seconde.
Types de compilation du serveur
il Y a trois types de compilation du serveur MySQL:
- Standard: Les binarios standard de MySQL sont les recommandés pour la plupart des utilisateurs, et comprennent le moteur d'emmagasinage InnoDB.
- Max (Ne s'agit de pas MaxDB, qu'est une coopération avec SAP): Les binarios comprennent caractéristiques additionnels que n'ont pas été l'assez essayées ou que normalement ne sont pas nécessaires.
- MySQL-Debug: Ils sont binarios qu'ont été compilados avec information de dépuration extra. Ne doit être usé en des systèmes en production pourquoi le code de dépuration il peut réduire le rendement.
Spécifications du code source
MySQL est écrit dans un mélange de C et C++. Il y a un document qu'il décrit quelques de ses structures internes en http://dev.mysql.com/doc/internals/en/ (en anglais).
Développement du projet
Le développement de MySQL se fonde dans le travail des développeurs embauchés par l'entreprise MySQL AB qui se chargent de supporter aux partenaires commerciaux et des utilisateurs de la communauté MySQL et donner solution aux problèmes trouvés par les utilisateurs. Les utilisateurs ou membres de la communauté MySQL peuvent reportar bugs en révisant le manuel en ligne [1] que contient les solutions à des problèmes trouvés; l'historial de changements [2]; la base de données bugs [3] que contient bugs reportados et résolus et dans les listes de courrier MySQL [4].
À travers les listes de courrier les utilisateurs peuvent envoyer des questions et celles-ci ils seront répondues par de développement en leur trinquant support.
Autres fonctionnalités des listes de courrier
- Annonces: ils informent sur des nouvelles versions de MySQL et programmes liés.
- MySQL: Liste principale de discussion de MySQL.
- Bugs: il permet aux gens chercher et arranger bugs.
- Thèmes internes: pour des gens qu'il travaille avec le code de MySQL. Il est le fórum pour disputer sur le développement de MySQL.
- MySQLdoc: Pour des gens qu'il travaille en documentation.
- Preuves de rendement: pour des gens intéressés en des thèmes de rendement ne seulement de MySQL, mais d'autres moteurs de bases de données.
- Empaquetadores: Pour des discussions sur empaquetamiento et distribution de MySQL.
- Java: Discussions sur MySQL Server et Java.
Autres listes de courrier sont: MyODBC, Outils GUI, Cluster, Dotnet, PlusPlus et Perl.
Additionnel aux listes de courrier, se trouve le support d'IRC de la communauté MySQL. En plus, il y a support à travers des forums [5] groupés en des catégories telles comme: Migration, Usage de MySQL, Conectores MySQL, Technologie MySQL et Affaires.
Structures organisationnelles/associatives ou de décision
La direction et le patronage des projets MySQL sont chargé de l'entreprise MySQL AB qui possède le copyrigth du code source MySQL, son logo et marque enregistrée. MySQL, Inc. et MySQL GmbH sont des exemples d'entreprises subsidiaires de MySQL AB. Ils sont établies aux États-Unis et l'Allemagne respectivement. MySQL AB, Compte avec plus de 200 employés en plus de 20 pays et fonctionnent sous la stratégie de teletrabajo.
En janvier du 2008 Sun Microsystems annonce son achat.
Industrie liée
L'industrie radica dans la vente de produits logiciel et de quelques services liés à des nombreuses entreprises qu'utilisent ces produits.
MySQL AB Classe les produits j'ai pris:
- MySQL Enterprise: il comprend MySQL Enterprise Server , Monitoreo du réseau MySQL, services de consultation et support de production MySQL
- MySQL Cluster
- MySQL Embedded Database
- MySQL Drivers: pour JDBC, ODBC et .Net
- MySQL Tools: MySQL Administrator, MySQL Query Browser, and the MySQL Migration Toolkit
- MaxDB: MaxDB est une base de données open source certifiée pour SAP/R3
Les revenus de cette entreprise par la vente de licences privativas de ses produits et les services ajoute les Ou$12 millions.
MySQL En des chiffres
- Selon les chiffres du fabricant, existeraient plus de six millions de copies de MySQL en fonctionnant dans l'actualité, ce que surpasse la base installée de n'importe quel autre outil de bases de données.
- Le trafic du site web de MySQL AB a surpassé en 2004 au du site de IBM.
Quelle licence utiliser
La licence GNU GPL de MySQL oblige à que la distribution de n'importe quel produit dérivé (application) se fasse sous cette même licence. Si un développeur souhaite incorporer MySQL dans son produit mais souhaite le distribuer sous une autre licence que ne soit pas la GNU GPL, peut acquérir une licence commerciale de MySQL que lui permet faire justement cela.
État actuel
La série en développement de MySQL Server actuellement, est la 5.1 auquel ils s'ajoutent nouvelles caractéristiques en relation à la série 5.0. La série de production actuelle de MySQL est 5.0, dont l'avant-dernière version stable est la 5.0.26 Jetée en octobre de 2006. Actuellement, il se peut décharger la série 5.0.27. La série de production antérieure a été la 4.1, dont la version stable est 4.1.7 Jetée en octobre de 2004. À ces versions de production seulement s'arrangent des problèmes, c'est-à-dire, déjà ils ne s'ajoutent pas nouvelles caractéristiques. Et aux versions antérieures seulement se leur corrigent bugs critiques.
Utilisateurs soulignés
- Amazon.com
- Cox Communications - La quatrième télévision par câble plus important des EE.UU., ont plus de 3.600 tables et environ deux millions d'insertions chaque heure.
- Craigslist
- CNET Networks
- Digg - Site de nouvelles.
- flickr, Use MySQL pour gérer millions de photos et utilisateurs.
- Google - Pour le moteur de recherche de l'application AdWords.
- Joomla!, Avec des millions d'utilisateurs.
- phpBB, Un des plus fameux sites de forums, avec des milliers d'installations et avec des millions d'utilisateurs.
- LiveJournal - Près 300 millions de pages servies chaque jour.[2]
- NASA
- NetQOS, use MySQL pour la gestion de quelques des réseaux les plus grands du monde comme les de Chevron, American Express et Boeing.
- Nokia, Il use un cluster MySQL pour maintenir information en temps réel sur des utilisateurs de réseaux de mobiles.
- Omniture
- Sabre, Et son système de réserve de voyages Travelocity
- Slashdot - avec près 50 millions de pages servies chaque jour.
- Wikipédia, Il sert plus de 200 millions de consultations et 1,2 millions d'actualisations chaque jour, avec des pioches de 11.000 consultations par seconde.
- WordPress, Avec cents de blogs logés en il.
- Yahoo! - Pour beaucoup d'applications critiques.
Références
Voyez-vous aussi
- PostgreSQL Une autre base de données basée sur logiciel libre.
- PHP Langage en web comúnmente usé avec MySQL.
- Base de données
- Bonsai cvs
- Appserv
- Firebird SQL[6] système d'administration de base de données relacional de Codigo Ouvert, Multi plate-forme
Tu raccordes externes
Wikimedia Commons Héberge contenu multimédia sur MySQL.- Page officielle de MySQL (en anglais).
- Misqli Extension de MySQL pour PHP (en anglais et autres idiomes).
- Benetl ETL En utilisant MySQL (en anglais).Donne:MySQLai:MySQLallez:MySQLai vu:MySQL
