innoDB数据目录

  • 表目录

    • 表名.frm文件(描述表结构的文件)

    • .表名ibd文件(表数据和索引文件)

    • 视图名.frm文件(描述视图)

  • ...

mylSAM数据目录

表数据都存放到对应的数据库子目录下。假如 test 表使用 MyISAM 存储引擎的话,那么在它所在数据库对应的 xiaohaizi 目录下会为 test 表创建这三个文件:

  • test.frm (描述表结构的文件)
  • test.MYD (表数据文件)
  • test.MYI (表索引文件)
  • 视图名.frm文件(描述视图)

文件系统对数据库的影响

  • 数据库名称和表名称不得超过文件系统所允许的最大长度。
  • 特殊字符的问题
  • 文件长度受文件系统最大长度限制

MySQL系统数据库简介

  • mysql

这个数据库贼核心,它存储了MySQL的用户账户和权限信息,一些存储过程、事件的定义信息,一些运行过程中产生的日志信息,一些帮助信息以及时区信息等。

  • information_schema

这个数据库保存着MySQL服务器维护的所有其他数据库的信息,比如有哪些表、哪些视图、哪些触发器、哪些列、哪些索引吧啦吧啦。这些信息并不是真实的用户数据,而是一些描述性信息,有时候也称之为元数据。

  • performance_schema

这个数据库里主要保存MySQL服务器运行过程中的一些状态信息,算是对MySQL服务器的一个性能监控。包括统计最近执行了哪些语句,在执行过程的每个阶段都花费了多长时间,内存的使用情况等等信息。

  • sys

这个数据库主要是通过视图的形式把 information_schema 和 performance_schema 结合起来,让程序员可以更方便的了解MySQL服务器的一些性能信息