See Also ACID, hot backup, MySQL Enterprise Backup, storage engine, transaction.  An important configuration option that affects many aspects of  InnoDB  file storage, availability of features, and I/O characteristics. In MySQL 5.6.7 and higher, it is enabled by default. The  innodb_file_per_table  option turns on  file-per-table  mode. With this mode enabled, a newly created  InnoDB  table and associated indexes can be stored in a file-per-table  .ibd file , outside the  system tablespace . This option affects the performance and storage considerations for a number of SQL statements, such as  DROP TABLE  and  TRUNCATE TABLE . Enabling the  innodb_file_per_table  option allows you to take advantage of features such as table compression  and named-table backups in  MySQL Enterprise Backup . For more information, see  innodb_file_per_table , and Section 15.6.3.2, “File-Per-Table Tablespaces” . See Also compression, file-per-table, .ibd file, MySQL Enterprise Backup, system tablespace.  The  innodb_lock_wait_timeout  option sets the balance between  waiting  for shared resources to become available, or giving up and handling the error, retrying, or doing alternative processing in your application. Rolls back any  InnoDB  transaction that waits more than a specified time to acquire a  lock . Especially useful if deadlocks  are caused by updates to multiple tables controlled by different storage engines; such deadlocks are not  detected  automatically. See Also deadlock, deadlock detection, lock, wait.  One of the primary  DML  operations in  SQL . The performance of inserts is a key factor in  data warehouse systems that load millions of rows into tables, and  OLTP  systems where many concurrent connections might insert rows into the same table, in arbitrary order. If insert performance is important to you, you should learn about InnoDB  features such as the  insert buffer  used in  change buffering , and  auto-increment  columns. See Also auto-increment, change buffering, data warehouse, DML, InnoDB, insert buffer, OLTP, SQL. Consecutive lock mode ( innodb_autoinc_lock_mode=1 ) is the default setting prior to MySQL 8.0.3. As of MySQL 8.0.3, interleaved lock mode ( innodb_autoinc_lock_mode=2 ) is the default, which reflects the change from statement-based to row-based replication as the default replication type. See Also auto-increment, auto-increment locking, mixed-mode insert, primary key.  The  innodb_autoinc_lock_mode  option controls the algorithm used for  auto-increment locking . When you have an auto-incrementing  primary key , you can use statement-based replication only with the setting innodb_autoinc_lock_mode=1 . This setting is known as  consecutive  lock mode, because multi-row inserts within a transaction receive consecutive auto-increment values. If you have  innodb_autoinc_lock_mode=2 , which allows higher concurrency for insert operations, use row-based replication rather than statement- based replication. This setting is known as  interleaved  lock mode, because multiple multi-row insert statements running at the same time can receive  auto-increment  values that are interleaved. The setting innodb_autoinc_lock_mode=0  should not be used except for compatibility purposes.  The former name of the  change buffer . In MySQL 5.5, support was added for buffering changes to secondary index pages for  DELETE  and  UPDATE  operations. Previously, only changes resulting from  INSERT  operations were buffered. The preferred term is now  change buffer .  The  innodb_strict_mode  option controls whether  InnoDB  operates in  strict mode , where conditions that are normally treated as warnings, cause errors instead (and the underlying statements fail). See Also strict mode. innodb_autoinc_lock_mode innodb_file_per_table innodb_lock_wait_timeout innodb_strict_mode insert insert buffer 6160