网站建设费用支出方案,漂亮公司网站源码打包下载,动漫制作需要学什么,企业信用信息公示系统年报怎么填文章目录 MySQL的数据目录1. MYSQL目录结构2. 数据库与文件系统的关系2.1 查看默认数据库2.2 数据库在文件系统中的表示2.1.1 MyISAM存储引擎模式2.1.2 InnoDB存储引擎模式 2.3 视图在文件系统中的表示2.4 小结 MySQL的数据目录
1. MYSQL目录结构 查询主要目录结构#xff1a… 文章目录 MySQL的数据目录1. MYSQL目录结构2. 数据库与文件系统的关系2.1 查看默认数据库2.2 数据库在文件系统中的表示2.1.1 MyISAM存储引擎模式2.1.2 InnoDB存储引擎模式 2.3 视图在文件系统中的表示2.4 小结 MySQL的数据目录
1. MYSQL目录结构 查询主要目录结构find / -name mysql 进入数据目录cd /var/lib/mysql/ 查看那个文件夹存放数据目录 show variables like datadir; 相关命令目录cd /usr/binmysqladmin、mysqlbinlog、mysqldump等命令和/usr/sbin。 配置文件目录/usr/share/mysql-8.0命令及配置文件/etc/mysql如my.cnf
2. 数据库与文件系统的关系
2.1 查看默认数据库
查看默认数据库SHOW DATABASES;可以看到有4个数据库是属于MySQL自带的系统数据库。 mysql MySQL 系统自带的核心数据库。它存储了MySQL的 用户账户和权限信息一些存储过程、事件的定义信息一些运行过程中产生的日志信息一些帮助信息以及时区信息等。 information_schema 保存着MySQL服务器 维护的所有其他数据库的信息 。 比如有哪些表、哪些视图、哪些触发器、哪些列、哪些索引。这些信息并不是真实的用户数据而是一些描述性信息有时候也称之为 元数据 。在系统数据库 information_schema 中提供了一些以innodb_sys 开头的表用于表示内部系统表。 performance_schema MySQL 系统自带的数据库这个数据库里主要保存MySQL服务器运行过程中的一些状态信息可以用来 监控 MySQL 服务的各类性能指标 。包括统计最近执行了哪些语句在执行过程的每个阶段都花费了多长时间内存的使用情况等信息。 sys MySQL 系统自带的数据库这个数据库主要是通过 视图 的形式把 information_schema 和performance_schema 结合起来帮助系统管理员和开发人员监控 MySQL 的技术性能。
2.2 数据库在文件系统中的表示
看一下我的计算机上的数据目录下的内容 cd /var/lib/mysql 这个数据目录下的文件和子目录比较多除了 information_schema 这个系统数据库外其他的数据库在 数据目录 下都有对应的子目录。
以创建的 emp1数据库为例在MySQL8.0 中打开emp1表中创建了test表
2.1.1 MyISAM存储引擎模式
使用MyISAM引擎建表会产生三个文件我这里安装的mysql8.0在mysql8.0中使用MyISAM建表 CREATE TABLE student_myisam (id bigint NOT NULL AUTO_INCREMENT,name varchar(64) DEFAULT NULL,age int DEFAULT NULL,sex varchar(2) DEFAULT NULL,PRIMARY KEY (id))ENGINEMYISAM AUTO_INCREMENT0 DEFAULT CHARSETutf8mb3mysql5.0中表明.frm存放表结构字段长度等 mysql8.0中.sdi文件描述表结构文件字段长度等。注意mysql8.0中没有了.frm文件 .MYD存放表数据。数据信息文件存储数据信息(如果采用独立表存储模式) .MYI存放表索引信息文件
2.1.2 InnoDB存储引擎模式 使用InnoDB建表会产生1个或者2个文件 CREATE DATABASE emp1;USE emp1;CREATE TABLE test (id bigint NOT NULL AUTO_INCREMENT,name varchar(64) DEFAULT NULL,age int DEFAULT NULL,sex varchar(2) DEFAULT NULL,PRIMARY KEY (id)
)表.frm存放表结构字段长度等 如果采用 系统表空间 模式的数据信息和索引信息都存储在 ibdata1 中 如果采用 独立表空间 存储模式还会产生 .ibd 文件存储数据信息和索引信息 ①MySQL5.7 中会在data/a的目录下生成 db.opt 文件用于保存数据库的相关配置。 比如字符集、比较规则。而MySQL8.0不再提供db.opt文件。 ② MySQL8.0中不再单独提供b.frm而是合并在b.ibd文件中 在mysql8.0中.frm文件不见了表结构和表空间存储到ibd文件的目录下mysql8自带解析ibd文件可以使用ibd2sdi工具查看ibd2sdi --dump-filetest.txt test.ibd 使用vim ./test.txt可以查看表结构表结构存储在此
2.3 视图在文件系统中的表示
MYSQL中的 视图是虚拟的表也就是某个查询语句的别名所以在存储视图的时候不需要存储真实数据只需要把它的存储结构存储起来。
和表一样描述视图的文件也会被存储到所属数据库对应的子目录下边只会存储一个视图名.frm的文件。如下图中的emp_details_view.frm 2.4 小结
MYSQL5.0之前默认使用MyISAM引擎之后默认使用InnoDB引擎
对于数据库a 表b 如果表b采用 InnoDB data\a中会产生1个或者2个文件 b.frm 描述表结构文件字段长度等 如果采用 系统表空间 模式的数据信息和索引信息都存储在 ibdata1 中 如果采用 独立表空间 存储模式data\a中还会产生 b.ibd 文件存储数据信息和索引信息 此外 ① MySQL5.7 中会在data/a的目录下生成 db.opt 文件用于保存数据库的相关配置。比如字符集、比较 规则。而MySQL8.0不再提供db.opt文件。 ② MySQL8.0中 不再单独提供b.frm而是合并在b.ibd文件中。 如果表b采用 MyISAM data\a中会产生3个文件 MySQL5.7 中 b.frm 描述表结构文件字段长度等。 MySQL8.0 中 b.xxx.sdi 描述表结构文件字段长度等 b.MYD (MYData)数据信息文件存储数据信息(如果采用独立表存储模式) b.MYI (MYIndex)存放索引信息文件
视图在文件系统中的表示只在.frm文件中存储表结构不存储真实数据