InnoDB est un moteur de stockage pour les systèmes de gestion de base de données MySQL et MariaDB. Il est inclus et activé dans toutes les distributions fournies par MySQL AB depuis la version 4 et devient le moteur par défaut à partir de MySQL 5.5.5. Son principal avantage par rapport aux autres moteurs de stockage de MySQL est qu'il permet des transactions ACID (atomiques, cohérentes, isolées et durables), ainsi que la gestion des clés étrangères (avec vérification de la cohérence). Autrement dit, InnoDB est un moteur de bases de données relationnelles et transactionnelles, à l'image de celui utilisé par son concurrent Open Source PostgreSQL.
En matière de gestion de verrous, InnoDB permet de lire les données alors que les tables sont verrouillées à l'occasion de mises à jours (UPDATE) ou de suppression (DELETE) de données au travers de transactions (BEGIN, START TRANSACTION, COMMIT, ROLLBACK). En revanche, il n'y a aucune possibilité de réaliser des mises à jour et des suppressions concurrentes sur une même table. InnoDB ne propose pas de verrous sur lignes. Les seuls verrous qu'il sait poser sont des verrous exclusifs sur table.
InnoDB est devenu un produit d'Oracle Corporation, qui a acquis en . Le logiciel est sous double licence : il est distribué sous la GNU General Public License, mais des licences commerciales sont vendues pour des développements qui intégreraient InnoDB à des logiciels propriétaires (ce que la GPL ne permet pas).
Toutes les bases de données sont stockées au même endroit. Par défaut dans le fichier ibdata1 qui, sous les systèmes de type Unix, se trouve généralement dans le dossier /var/lib/mysql/ . Il est également possible d'utiliser plusieurs fichiers ou même d'utiliser directement une ou plusieurs partitions sur le disque en mode RAW.
Ce moteur de base de données utilise aussi deux fichiers de logs, d'habitude ib_logfile0 et ib_logfile1. Les fichiers de définitions de table .frm sont également dans un dossier au nom de la base comme pour MyISAM.
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
MyISAM est un moteur de stockage du SGBDR MySQL. Il est basé sur l'ancien moteur de stockage ISAM. Il est le moteur par défaut de MySQL jusqu'à la version 5.5, remplacé par InnoDB. MyISAM ne prend pas en charge les transactions ni les clés étrangères, et le verrouillage porte sur des tables entières et non sur les rangées individuelles. Il est plus performant pour l'extraction d'informations que dans des situations où il existe de nombreuses écritures concurrentes.
En informatique, un moteur de base de données ou moteur de stockage (anglais database engine ou storage engine) est un composant logiciel qui contrôle, lit, enregistre et trie des informations dans une ou plusieurs bases de données. Le moteur de base de données est le composant central d'un système de gestion de base de données. C'est un composant essentiel des systèmes d'informations, ainsi que de nombreux logiciels qui manipulent des grandes quantités de données (voir Informatique de gestion).
Aria is a storage engine for the MariaDB and MySQL relational database management systems. Its goal is to make a crash-safe alternative to MyISAM. It is not transactional. Aria has been in development since 2007 and was first announced by Michael "Monty" Widenius on his blog. Aria is used for internal temporary tables in MariaDB, a community-developed branch of the MySQL database led by Widenius. Aria is not shipped with MySQL or Percona Server. The Maria project is hosted on Launchpad.
Explore les groupes abeliens libres, les homomorphismes et les séquences exactes dans le contexte de différentes catégories.
Enterprise JavaBeans is a widely-used technology that aims at supporting distributed component-based applications written in Java. One of the key features of the Enterprise JavaBeans architecture is the support of declarative distributed transactions, with ...
Enterprise JavaBeans is a widely-used technology that aims at supporting distributed component-based applications written in Java. One of the key features of the Enterprise JavaBeans architecture is the support of declarative distributed transactions, with ...