Errors "Invalid (old?) Table Or Database Name 'lost+found'"; ignore-db-dir option Introduced in MySQL 5.6 (Doc ID 1511338.1)

Last updated on APRIL 13, 2017

Applies to:

MySQL Server - Version 5.5 and later
Information in this document applies to any platform.
Certain filesystems use the 'lost+found' directory as the partitions cleanup directory for managing corrupted inodes, file recovery etc. Common examples are the ext3 filesystem on Linux.

Symptoms

On : 5.1, 5.5, 5.6 version, Other Technical Problem

ACTUAL BEHAVIOR
---------------
SHOW DATABASES indicates a database named 'lost+found' which is not a real database. Any other directory under the data directory will also be treated as a database. You will also see errors like these in the error log file:

 

[ERROR] Invalid (old?) table or database name 'lost+found'

[ERROR] Invalid (old?) table or database name 'anyotherdirectory'



EXPECTED BEHAVIOR
-----------------------
SHOW DATABASES should indicate all the valid MySQL databases, not extraneous ones.

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. Create a partition which has managed cleanup using 'lost+found' directory such as ext3.
2. Set the MySQL datadir option to be the new partition mount point e.g. /data
3. Run SHOW DATABASES within the MySQL client to see the 'lost+found' database show up.

BUSINESS IMPACT
-----------------------
The issue has the following business impact:
Due to this issue, users can be distracted as to what is a real database and what is a system directory. There are no other adverse effects.

Changes

Move the datadir to a new partition or to a directory below the root level. For other directories being treated as databases, move them out of the data directory tree.

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms