1、mysql数据库的数据目录结构

查看mysql的主要目录结构

通过命名查看mysql的目录结构:find / -name mysql
1、mysql数据库的数据目录结构

1.1数据库文件的存放路径

MySQL数据库文件的存放路径:/var/lib/mysql/
1、mysql数据库的数据目录结构

1.2相关命令的存放路径

相关命令目录:/usr/bin和/usr/sbin。
/usr/bin目录
1、mysql数据库的数据目录结构
/usr/sbin目录
1、mysql数据库的数据目录结构

1.3配置文件目录

配置文件目录:/usr/share/mysql(命令及配置文件)和 /etc(如my.cnf)
/usr/share/mysql(命令及配置文件)
1、mysql数据库的数据目录结构
/etc目录
1、mysql数据库的数据目录结构

数据库和文件系统的关系

数据库的文件信息会存在磁盘上,文件系统来管理这些文件信息。

2.1查看默认的数据库

查看命令:SHOW DATABASES;
1、mysql数据库的数据目录结构

  • mysql:MySQL系统自带的核心数据库,它存储了MySQL的用户账户和权限信息,一些存储过程、事件的定义信息,一些运行过程中产生的日志信息,一些帮助信息以及时区信息等。
  • information_schema:MySQL系统自带的数据库,这个数据库保存着MySQL服务器维护的所有其他数据库的信息 ,比如有哪些表、哪些视图、哪些触发器、哪些列、哪些索引。这些信息并不是真实的用户数据,而是一些描述性信息,有时候也称之为 元数据 。在系统数据库information_schema 中提供了一些以innodb_sys 开头的表,用于表示内部系统表。
  • performance_schema:MySQL系统自带的数据库,这个数据库里主要保存MySQL服务器运行过程中的一些状态信息,可以用来监控MySQL服务的各类性能指标 。包括统计最近执行了哪些语句,在执行过程的每个阶段都花费了多长时间,内存的使用情况等信息。
  • sys:MySQL系统自带的数据库,这个数据库主要是通过视图的形式把information_schema和performance_schema结合起来,帮助系统管理员和开发人员监控MySQL的技术性能。

2.2数据库在文件系统中的表示

使用create database 数据库名语句创建一个数据库的时候,在数据库目录/var/lib/mysql下会创建一个和数据库同名的子目录。
除了information_schema这个系统数据库外,其他的数据库在数据目录下都有对应的子目录。
1、mysql数据库的数据目录结构

2.3表在文件系统中的标识

使用数据库a中的表b描述在INNODB和MYISAM中的区别。
ibdata1:系统表空间,存储数据和索引信息
b.frm:描述的是表结构文件、字段长度
b.xxx.sdi:描述的是表结构文件、字段长度
b.idb:独立表空间,存储数据和索引信息
b.MYD():存储数据信息
b.MYI
在INNODB中:

  • mysql5.5.7(包括)至mysql5.6.6(不包括)版本
上一篇:springboot通过code获取微信小程序UnionID


下一篇:使用java8将list转为map(转)