Fast, Reliable, Proven transactional storage for MySQL
Embedded InnoDB 1.0.6.6750 released (2010-02-25)
The InnoDB Team is pleased to announce the availability of a new release of Embedded InnoDB - 1.0.6.6750. This new early adopter release contains many functional and performance improvements vs. the previous 1.0.3.5325 release, as well as many bug fixes. It is based on InnoDB Plugin 1.0.6. This release contains numerous bug fixes and performance enhancements. Some of the most significant changes are:
- Enforced NOT NULL column constraint during insert and update.
- Introduced the settable global variables lru_old_blocks_pct and lru_block_access_recency for controlling the buffer pool eviction policy.
- The VARBINARY column type was enabled.
- Support inlining of functions and prefetch with Sun Studio. These changes are based on contribution from Sun Microsystems Inc. under a BSD license.
- Implemented IO capacity tuning.
- Added new API functions for checking whether a transaction currently holds a shared lock on the InnoDB data dictionary and to list all configuration variables.
- Added IB_DECIMAL column type.
- Speed up search by not fetching the next N records when doing an unique search.
- Introduce a new boolean configuration parameter "adaptive_flushing" which can be set to OFF to disable the adaptive flushing.
Announcing InnoDB Plugin 1.0.4 for MySQL 5.1.37 (2009-08-11)
The InnoDB team is pleased to announce the availability of InnoDB Plugin release 1.0.4, which brings additional performance gains of 20% or more! This latest early adopter version of the InnoDB Plugin includes bug fixes and additional new features, further enhancing InnoDB performance, scalability, reliability, and ease of use. We are especially pleased that this release includes several significant community contributions.
We are grateful to Sun Microsystems, Google and Percona Inc., for their contributions, which are described in the InnoDB Plugin documentation and in the source code files. This page provides an overview of some of the new features and how the InnoDB team incorporated or modified the contributions, or introduced changes of our own.
Some of the new features in this release can significantly performance and scalability, depending on workload and tuning considerations. Some highlights:
- I/O-bound DBT2 throughput is more than 8% better than the built-in InnoDB distributed with MySQL
- CPU-bound DBT2 throughput is nearly 20% better than the built-in InnoDB
- Group commit now allows InnoDB to scale better from 16 to 64 users, with as much as 60% more throughput at 64 users!
- "Adaptive flushing” dramatically eliminates throughput dips during checkpoints
Reliability is enhanced in this release, because queries are protected from using indexes created while they were executing, eliminating the possibility of wrong results. Out of the box performance and usability are enhanced through improvements in default configuration parameters. This release also improves usability with more concise output for the command SHOW ENGINE INNODB MUTEX, which is especially helpful when using a large buffer pool.
Because of changes made in MySQL V5.1 to fix MySQL Bug #42610, installing this release as a binary plugin to MySQL 5.1.37 requires some small changes in my.cnf (or my.ini) configuration files, as described in the documentation.
Source code and binaries for the InnoDB Plugin 1.0.4 are now available for download. This new release will work with MySQL releases 5.1.24 through 5.1.37 when built from source. Binaries have been compiled against MySQL 5.1.37 and can be plugged in dynamically only to that version.
Several bugs were fixed in this release, including those reported in the MySQL bug database, as well as those internally detected. This release also reflects all other changes made in MySQL through version 5.1.37. A full list of changes in InnoDB Plugin release 1.0.4 is available in the documentation and in the online ChangeLog.
Please report your comments and any problems or issues with the InnoDB Plugin in the InnoDB Plugin Forum or in the MySQL bug database.
We hope you are pleased with this release of the InnoDB Plugin!
Embedded InnoDB 1.0.3.5325 released (2009-06-24)
The InnoDB Team is pleased to announce the availability of a new release of Embedded InnoDB. This new early adopter release contains many functional and performance improvements vs. the previous 1.0.0 release, as well as many bug fixes. Embedded InnoDB release 1.0.3.5325 is based on release 1.0.3 of the InnoDB Plugin, as reflected in its version number.
This release contains numerous bug fixes and performance enhancements. Some of the most significant changes are:
- Improved performance: row caching and faster inserts
- Better error management: an application can intercept InnoDB log messages
- Simplified compile and build: all API definitions are now in a single file "innodb.h"
- More configurability: application can check API version at runtime
You can download source code and binaries for the Embedded InnoDB from the download page.
Please report your comments and any problems or issues with the Embedded InnoDB in the InnoDB Forums.
Thank you, and enjoy!
InnoDB Plugin Version 1.0.3 for MySQL 5.1.30/31/32 Released (2009-03-11)
The InnoDB Team is pleased to announce the availability of InnoDB Plugin release 1.0.3. This new early adopter version of the InnoDB Plugin introduces significant new performance-enhancing features, especially on multi-core servers:
- Enhanced scalability: the Google SMP enhancement for synchronization
- More efficient memory allocation: ability to use platform allocator tuned for multi-core systems
- Improved out-of-the-box scalability: unlimited concurrent thread execution by default
- Dynamic tuning: at run-time, enable or disable insert buffering and adaptive hash indexing
Note that because of MySQL Bug #42610, it is not possible to INSTALL InnoDB Plugin 1.0.3 into the binary release of MySQL 5.1.31 or 5.1.32 as distributed by Sun/MySQL. Instead, you must build from source. We anticipate that this situation will be resolved with MySQL version 5.1.33.
InnoDB Plugin 1.0.3 is now available in binary plug-in form (for 5.1.30 only) for 64-bit Red Hat Enterprise Linux (RHEL) for the first time as seen on our download page.
The above new performance features can yield up to twice the throughput or more, depending on your workload, platform and other tuning considerations. As one example, look at this chart showing the difference in scalability and performance between the built-in InnoDB and InnoDB Plugin 1.0.3:
More information about this performance result and other performance tests is presented here.We gratefully acknowledge the contributions and suggestions made by Ben Handy and Mark Callaghan of Google, Inc. to improve the multi-core scalability of InnoDB, now incorporated in InnoDB Plugin 1.0.3. InnoDB now uses more the efficient GCC atomic built-in functions to implement mutexing and rw-locks. This happens automatically on platforms where the atomics are available. See SMP Performance Improvements and the InnoDB Plugin documentation for more details.
Also, the new configuration parameter innodb_use_sys_malloc allows you to use a memory allocator tuned for multi-core hardware. See Mark Callaghan's blog for some details.
You can download source code and binaries for the InnoDB Plugin from here. This new release will work with MySQL releases 5.1.24 through 5.1.32 when built from source. Binaries have been compiled against MySQL 5.1.30 and can be plugged in dynamically only to that version.
Several bugs were fixed in this release, including those reported in the MySQL database, as well as those internally detected. This release also reflects all other changes made in MySQL through version 5.1.32. A full list of changes in 1.0.3 is available in the documentation and in the online ChangeLog.
Please report your comments and any problems or issues with the InnoDB Plugin in the InnoDB Forums or in the MySQL bug database.
Thank you, and enjoy!
InnoDB Plugin 1.0.2 for MySQL 5.1.30 (GA) Released (2008-12-01)
The InnoDB Team is glad to announce the availability of the early adopter release of the InnoDB Plugin 1.0.2. This new version of the InnoDB Plugin is designed to work with the recently announced General Availability release of MySQL, version 5.1.30. Sources and binaries for the InnoDB Plugin can be downloaded from here. The full user manual is available online and for download.
For the first time, you can dynamically install a binary library containing the InnoDB Plugin into MySQL 5.1.30 for Windows (just as is possible on other platforms). This means you do not need to build from source; simply use the MySQL INSTALL command to load the dynamic library (ha_innodb.dll) to take over from the built-in InnoDB. See the online documentation for details.
This release also includes a few new features, including the ability to control index cardinality estimates, and making some configuration parameters dynamically settable. Numerous bugs were fixed, including those reported in the MySQL database, as well as those internally detected. This release also reflects all other changes made in MySQL through version 5.1.30.
A full list of changes between 1.0.1 and 1.0.2 is available in the documentation and in the online ChangeLog.
Binaries have been compiled against MySQL 5.1.30 and can be plugged in dynamically only to that version.
Source is compatible with MySQL 5.1.23 or greater.
Please report your comments and any problems or issues with the InnoDB Plugin in the InnoDB Forums or in the MySQL bug database.
Thank you, and enjoy!
InnoDB Hot Backup 3.0.2 has been released for Mac OS X on i386 (2009-08-24)
This is the first release of InnoDB Hot Backup 3.0 for Mac OS X on i386. MySQL/InnoDB 5.0 requires InnoDB Hot Backup 3.0. This version is also compatible with all older MySQL/InnoDB versions down to 3.23. See the Hot Backup Manual for the complete changelog and order an evaluation copy.
InnoDB Presentations at the MySQL Conference & Expo 2009 (2009-05-13)
There were several very well-attended sessions about InnoDB at the MySQL Conference and Expo 2009. You can download these presentations from Heikki Tuuri, Ken Jacobs and Calvin Sun:
- Ken and Heikki: InnoDB: Innovative Technologies for Performance and Data Protection
- Heikki: Crash Recovery and Media Recovery in InnoDB
- Heikki: Concurrency Control: How it Really Works
- Calvin and Heikki: InnoDB File Formats and Source Code Structure
Innobase Introduces Embedded InnoDB (2009-04-19)
At the MySQL Conference and Expo today, Innobase introduced its newest product, Embedded InnoDB. Made for application developers, device makers and ISVs, Embedded InnoDB provides all the high-performance, proven and reliable data management features of InnoDB for embedding in the target applications, with a small footprint, low overhead and no unneeded features. Embedded InnoDB is based on the InnoDB Plugin, but is used completely independently from MySQL. It is not a plugin, nor a storage engine for MySQL. It is designed to be linked directly into application programs, and provides highly efficient, low-level database management services, not using SQL. Embedded InnoDB provides the features, functions and capabilities that embedded application require:
- the proven high-performance and reliability and functionality of InnoDB
- a low-level but powerful API for application programmers
- the operational characteristics needed for stand-alone applications where there is no DBA
The embedded version of InnoDB brings all the high-performance, proven and reliable data management features of InnoDB to developers, ISVs and OEMs in an embeddable form. Embedded InnoDB provides users the small and reliable relational, transactional storage engine they need for edge application and device needs.Phillip Carruthers, CEO of seeMore Technologies in the UK, has been reviewing and testing Embedded InnoDB. He has made these comments:
Embedded InnoDB is a great product for seeMore Technologies. With its new API, we can include InnoDB directly in our Virtual Database Server, getting all the proven benefits of performance and reliability for which InnoDB is known, and no extra footprint or unneeded features.
We've been able to integrate Embedded InnoDB with the seeMore Virtual Database Server in just days.
The performance of Embedded InnoDB is impressive. The API provides a low-level interface that gives our Virtual Database direct access to InnoDB data, with no SQL overhead.
We believe Embedded InnoDB will help us to deliver a faster and more reliable storage engine for companies wanting to use the seeMore Virtal Database Server for storing large volumes of data as well as accessing their existing enterprise data. With the automatic configuration capabilities and operational API functions in Embedded InnoDB, the seeMore Virtual Database won't require any database administrator monitoring or management.Embedded InnoDB is currently available in binary for Linux and Windows, and in source form under the GPL V2 license. Read more about Embedded InnoDB, and stay tuned for future announcements.
Announcing "Transactions on InnoDB" (2009-03-11)
The InnoDB team is proud to announce the new blog about InnoDB, Transactions on InnoDB. The Innobase team will be posting regularly on this new blog, dedicated to InnoDB products and technology. Please check in often for timely updates and important technical information about InnoDB-related products, and to post your comments.
Innobackup 1.5.0 released (2008-09-29)
InnoDB Backup Utility (innobackup) 1.5.0 has been released. The --databases and --slave-info command-line options were added. See the Hot Backup Manual for the complete changelog. Download Innobackup 1.5.0.

News