一、目录结构
<1> 主要目录结构
find / -name mysql
<2> 数据库文件目录
目录:/var/lib/mysql/
配置方式:show variables like ‘datadir’;
<3> 相关命令目录
目录:/usr/bin(mysqladmin、mysqlbinlog、mysqldump等命令)和/usr/sbin。
<4> 配置文件目录
目录:/usr/share/mysql-8.0(命令及配置文件),/etc/mysql(如my.cnf)
二、 数据库和文件系统的关系
<1> MySQL自带的系统数据库
1.mysql
MySQL 系统自带的核心数据库,它存储了MySQL的用户账户和权限信息,一些存储过程、事件的定 义信息,一些运行过程中产生的日志信息,一些帮助信息以及时区信息等。
2.information_schema
MySQL 系统自带的数据库,这个数据库保存着MySQL服务器 维护的所有其他数据库的信息 ,比如有 哪些表、哪些视图、哪些触发器、哪些列、哪些索引。这些信息并不是真实的用户数据,而是一些 描述性信息,有时候也称之为 元数据 。在系统数据库 information_schema 中提供了一些以 innodb_sys 开头的表,用于表示内部系统表。
3.performance_schema
MySQL 系统自带的数据库,这个数据库里主要保存MySQL服务器运行过程中的一些状态信息,可以 用来 监控 MySQL 服务的各类性能指标 。包括统计最近执行了哪些语句,在执行过程的每个阶段都 花费了多长时间,内存的使用情况等信息。
4.sys
MySQL 系统自带的数据库,主要是通过 视图 的形式把information_schema 和 performance_schema 结合起来,帮助系统管理员和开发人员监控 MySQL 的技术性能。
<2> 数据库在文件系统中的表示
cd /var/lib/mysql/dbtest1
1.MySQL5.7
会在data/a的目录下生成 db.opt 文件用于保存数据库的相关配置。比如:字符集、比较 规则。而MySQL8.0不再提供db.opt文件。
2.MySQL8.0
不再单独提供b.frm,而是合并在b.ibd文件中。