scan , can be aged out of the buffer pool sooner than with a strict LRU  algorithm. For more information, see Section 15.5.1, “Buffer Pool” . 

See Also buffer pool, full table scan, LRU, page. 

## mini-transaction 

 An internal phase of InnoDB  processing, when making changes at the physical  level to internal data structures during DML  operations. A mini-transaction (mtr) has no notion of rollback ; multiple mini-transactions can occur within a single transaction . Mini-transactions write information to the redo log  that is used during crash recovery . A mini-transaction can also happen outside the context of a regular transaction, for example during purge  processing by background threads. 

See Also commit, crash recovery, DML, physical, purge, redo log, rollback, transaction. 

## mixed-mode insert 

 An INSERT  statement where auto-increment  values are specified for some but not all of the new rows. For example, a multi-value INSERT  could specify a value for the auto-increment column in some cases and NULL in other cases. InnoDB  generates auto-increment values for the rows where the column value was specified as NULL . Another example is an INSERT ... ON DUPLICATE KEY UPDATE  statement, where auto-increment values might be generated but not used, for any duplicate rows that are processed as UPDATE  rather than INSERT  statements. 

Can cause consistency issues between source  and replica  servers in a replication  configuration. Can require adjusting the value of the innodb_autoinc_lock_mode  configuration option. 

See Also auto-increment, innodb_autoinc_lock_mode, replica, replication, source. 

## MM.MySQL 

 An older JDBC driver for MySQL that evolved into Connector/J  when it was integrated with the MySQL product. 

See Also Connector/J. 

## Mono 

 An Open Source framework developed by Novell, that works with Connector/NET  and C#  applications on Linux platforms. 

See Also Connector/NET, C#. 

## mtr 

See mini-transaction. 

## multi-core 

 A type of processor that can take advantage of multithreaded programs, such as the MySQL server. 

multiversion concurrency control 

See MVCC. 

## mutex 

 Informal abbreviation for “mutex variable” . (Mutex itself is short for “mutual exclusion” .) The low-level object that InnoDB  uses to represent and enforce exclusive-access locks  to internal in-memory data structures. Once the lock is acquired, any other process, thread, and so on is prevented from acquiring the same lock. Contrast with rw-locks , which InnoDB  uses to represent and enforce shared-access locks  to internal in-memory data structures. Mutexes and rw-locks are known collectively as latches . See Also latch, lock, Performance Schema, Pthreads, rw-lock. 

## MVCC 

 Acronym for “multiversion concurrency control” . This technique lets InnoDB transactions  with certain isolation levels  perform consistent read  operations; that is, to query rows that are being updated by other transactions, and see the values from before those updates occurred. This is a powerful technique to increase concurrency , by allowing queries to proceed without waiting due to locks  held by the other transactions. 

