Friday, December 27, 2013

InnoDB Error Codes

The following is a nonexhaustive list of common InnoDB-specific errors that you may encounter, with
information about why each occurs and how to resolve the problem.

• 1005 (ER_CANT_CREATE_TABLE)

Cannot create table. If the error message refers to error 150, table creation failed because a
foreign key constraint was not correctly formed. If the error message refers to error –1, table
creation probably failed because the table includes a column name that matched the name of an
internal InnoDB table.

• 1016 (ER_CANT_OPEN_FILE)

Cannot find the InnoDB table from the InnoDB data files, although the .frm file for the table
exists. SeeSection 14.6.13.4, “Troubleshooting InnoDB Data Dictionary Operations”.

• 1114 (ER_RECORD_FILE_FULL)

InnoDB has run out of free space in the tablespace. Reconfigure the tablespace to add a new
data file.

• 1205 (ER_LOCK_WAIT_TIMEOUT)

Lock wait timeout expired. Transaction was rolled back.

• 1206 (ER_LOCK_TABLE_FULL)

The total number of locks exceeds the lock table size. To avoid this error, increase the value
ofinnodb_buffer_pool_size. Within an individual application, a workaround may be to break
a large operation into smaller pieces. For example, if the error occurs for a large INSERT, perform
several smaller INSERToperations.

• 1213 (ER_LOCK_DEADLOCK)

Transaction deadlock. Rerun the transaction.

• 1216 (ER_NO_REFERENCED_ROW)

You are trying to add a row but there is no parent row, and a foreign key constraint fails. Add the
parent row first.

• 1217 (ER_ROW_IS_REFERENCED)

You are trying to delete a parent row that has children, and a foreign key constraint fails. Delete
the children first.

No comments:

Post a Comment