MySQL’s manual page for InnoDB’s adaptive hash states: If a table fits almost entirely in main memory, the fastest way to perform queries on it is to use hash indexes. InnoDB has a mechanism that monitors index searches made to the indexes defined for a table. If InnoDB notices that queries could benefit building a [...]
I’m returned from my 1-week vacation today and want to say - I’ve never been so productive as I was there Blue ocean, hot sun and white sand really helped me to finish my work on the first release of one really awesome project.
Today I’m proud to announce our first public release of the Data Recovery Toolkit for InnoDB - set of tools for checking InnoDB tablespaces and recovering data from damaged tablespaces or from dropped/truncated InnoDB tables.
This release already has a pretty decent set of features:
- Supports both REDUNDANT (pre mysql 5.0) and COMPACT (mysql 5.0+) versions of tablespaces
- Works with single tablespaces and file-per-table tablespaces
- Able to recover data even when processed InnoDB page has been reassigned …
The 1.5.2 release of innotop contained two bugs, one very minor. The other was a crash because of the new functionality that aggregates results across many connections. I fixed them and released version 1.6.0, which I consider stable and ready for everyone to use. (My version naming convention for innotop is that even-numbered minor versions are for production use; odd-numbered, such as 1.5.2, are the development branch. That's why I release them under the innotop-devel package).
Your comments are welcome for the 1.8 roadmap.
I?ve recently done a quick scalability test with MySQL 5.0 and 5.1 to check the new auto-inc patch with InnoDB and to see how MySQL 5.1 scales with InnoDB:
New in MySQL 5.1: innodb_autoinc_lock_mode = 1
(?consecutive? lock mode)
With this lock mode, ?simple inserts? (only) use a new locking
model where a light-weight mutex is used during the allocation of
auto-increment values, and no AUTO-INC table-level lock is used,
unless an AUTO-INC lock is held by another transaction. If
another transaction does hold an AUTO-INC lock, a ?simple insert?
waits for the AUTO-INC lock, as if it too were a ?bulk
insert.?
http://dev.mysql.com/doc/refman/5.1/en/innodb-auto-increment-handling.html#innodb-auto-increment-configurable
This fixes the …
One of the enhancements I added to MySQL Archiver in the recent release was listed innocently in the changelog as "Destination plugins can now rewrite the INSERT statement." Not very exciting or informative, huh? Keep reading.
Brian mentioned Gemini on his blog... As many
people remember, there was a stunned silence for a while when
Oracle purchased InnoBase OY only 2 years ago... Very similar to
the stunned silence about 6 years ago when the suits at NuSphere
tried to do a SCO. Back on to the topic at hand... Gemini. About
two years ago, Brian fed me a copy of the Gemini engine saying
that "Hey, you remember Gemini? Here's the code. Get it working.
Don't talk about it and call it 'Amira'.". Perhaps not exactly
his words but close enough.
So the Amira project had a shaky beginning... I ported the code
to work on MySQL 5.0 and started examining it, removing
platform-specific code, and improving the performance of it. From
the first working run to the last, I think performance improved
by about a factor of 10 but I don't remember specifics. The Amira
project was cancelled 2Q2006. I suppose …
Recently I've spent hours compiling MySQL 5.1.22 and trying to get my cent0s configured for innodb and partitioning. I tried every imaginable way to run configure, use different plugins, etc.I messed with this forever, then finally looked at the config options, and sure enough, the ./configure expects innobase, not innodb as the plugin name: from: http://www.innodb.com/support/tips On MySQL
This release is part of the unstable 1.5 branch. Its features will ultimately go into the stable 1.6 branch. You can download it from the innotop-devel package.
The major change is I've ripped out the W (Lock Waits) mode and enabled innotop to discover not only what a transaction is waiting for, but what it holds too. The new mode that replaces W is L (Locks). My last article goes into more detail on this.
This article shows you how to use a little-known InnoDB feature to find out what is holding the lock for which an InnoDB transaction is waiting. I then show you how to use an undocumented feature to make this even easier with innotop.
RPM packages for innotop, a flexible and powerful MySQL and InnoDB monitor I wrote, are now available through the openSUSE buildservice, which builds RPMS on several platforms. Thanks to Lenz Grimmer, SUSE Linux, and Dr. Peter Poeml for making this happen.