## 5.2 The MySQL Data Directory

 Information managed by the MySQL server is stored under a directory known as the data directory. The following list briefly describes the items typically found in the data directory, with cross references for additional information:

* Data directory subdirectories. Each subdirectory of the data directory is a database directory and corresponds to a database managed by the server. All MySQL installations have certain standard databases:

  * The `mysql` directory corresponds to the `mysql` system schema, which contains information required by the MySQL server as it runs. This database contains data dictionary tables and system tables. See [Section 5.3, “The mysql System Schema”](system-schema.html).

  * The `performance_schema` directory corresponds to the Performance Schema, which provides information used to inspect the internal execution of the server at runtime. See [Chapter 27, *MySQL Performance Schema*](performance-schema.html).

  * The `sys` directory corresponds to the `sys` schema, which provides a set of objects to help interpret Performance Schema information more easily. See [Chapter 28, *MySQL sys Schema*](sys-schema.html).

  * The `ndbinfo` directory corresponds to the `ndbinfo` database that stores information specific to NDB Cluster (present only for installations built to include NDB Cluster). See [Section 23.6.14, “ndbinfo: The NDB Cluster Information Database”](mysql-cluster-ndbinfo.html).

   Other subdirectories correspond to databases created by users or applications.

  Note

  [`INFORMATION_SCHEMA`](information-schema.html) is a standard database, but its implementation uses no corresponding database directory.

* Log files written by the server. See [Section 5.4, “MySQL Server Logs”](server-logs.html).

* `InnoDB` tablespace and log files. See [Chapter 15, *The InnoDB Storage Engine*](innodb-storage-engine.html).

* Default/autogenerated SSL and RSA certificate and key files. See [Section 6.3.3, “Creating SSL and RSA Certificates and Keys”](creating-ssl-rsa-files.html).

* The server process ID file (while the server is running).

* The `mysqld-auto.cnf` file that stores persisted global system variable settings. See [Section 13.7.6.1, “SET Syntax for Variable Assignment”](set-variable.html).

 Some items in the preceding list can be relocated elsewhere by reconfiguring the server. In addition, the [`--datadir`](server-system-variables.html#sysvar_datadir) option enables the location of the data directory itself to be changed. For a given MySQL installation, check the server configuration to determine whether items have been moved.

