See Also change buffer, change buffering. 

## insert buffering 

 The technique of storing changes to secondary index pages, resulting from INSERT  operations, in the change buffer  rather than writing the changes immediately, so that the physical writes can be performed to minimize random I/O. It is one of the types of change buffering ; the others are delete buffering  and purge buffering . 

Insert buffering is not used if the secondary index is unique , because the uniqueness of new values cannot be verified before the new entries are written out. Other kinds of change buffering do work for unique indexes. See Also change buffer, change buffering, delete buffering, insert buffer, purge buffering, unique index. 

## insert intention lock 

 A type of gap lock  that is set by INSERT  operations prior to row insertion. This type of lock  signals the intent to insert in such a way that multiple transactions inserting into the same index gap need not wait for each other if they are not inserting at the same position within the gap. For more information, see Section 15.7.1, “InnoDB Locking” . 

See Also gap lock, lock, next-key lock. 

## instance 

 A single mysqld  daemon managing a data directory  representing one or more databases  with a set of tables . It is common in development, testing, and some replication  scenarios to have multiple instances on the same server  machine, each managing its own data directory and listening on its own port or socket. With one instance running a disk-bound  workload, the server might still have extra CPU and memory capacity to run additional instances. 

See Also data directory, database, disk-bound, mysqld, replication, server, table. 

## instrumentation 

 Modifications at the source code level to collect performance data for tuning and debugging. In MySQL, data collected by instrumentation is exposed through an SQL interface using the INFORMATION_SCHEMA  and PERFORMANCE_SCHEMA  databases. 

See Also INFORMATION_SCHEMA, Performance Schema. 

## intention exclusive lock 

See intention lock. 

## intention lock 

 A kind of lock  that applies to the table, used to indicate the kind of lock the transaction  intends to acquire on rows in the table. Different transactions can acquire different kinds of intention locks on the same table, but the first transaction to acquire an intention exclusive  (IX) lock on a table prevents other transactions from acquiring any S or X locks on the table. Conversely, the first transaction to acquire an intention shared  (IS) lock on a table prevents other transactions from acquiring any X locks on the table. The two-phase process allows the lock requests to be resolved in order, without blocking locks and corresponding operations that are compatible. For more information about this locking mechanism, see Section 15.7.1, “InnoDB Locking” . 

See Also lock, lock mode, locking, transaction. 

## intention shared lock 

See intention lock. 

## interceptor 

 Code for instrumenting or debugging some aspect of an application, which can be enabled without recompiling or changing the source of the application itself. 

See Also command interceptor, Connector/J, Connector/NET, exception interceptor. 

## intrinsic temporary table 

 An optimized internal InnoDB  temporary table used by the optimizer . See Also optimizer. 

