二、MySQL的数据目录

文章目录

  • [1. MySQL8的主要目录结构](#1. MySQL8的主要目录结构)
    • [1.1 数据库文件的存放路径](#1.1 数据库文件的存放路径)
    • [1.2 相关命令目录](#1.2 相关命令目录)
    • [1.3 配置文件目录](#1.3 配置文件目录)
  • [2. 数据库和文件系统的关系](#2. 数据库和文件系统的关系)
    • [2.1 查看默认数据库](#2.1 查看默认数据库)
    • [2.2 数据库在文件系统中的表示](#2.2 数据库在文件系统中的表示)
    • [2.3 表在文件系统中的表示](#2.3 表在文件系统中的表示)
      • [2.3.1 InnoDB存储引擎模式](#2.3.1 InnoDB存储引擎模式)
      • [2.3.2 MyISAM存储引擎模式](#2.3.2 MyISAM存储引擎模式)
    • [2.4 小结](#2.4 小结)

1. MySQL8的主要目录结构

sql 复制代码
[root@atguigu01 ~]# find / -name mysql

安装好MySQL 8之后,我们查看如下的目录结构:

1.1 数据库文件的存放路径

1.2 相关命令目录

1.3 配置文件目录

配置文件目录:/usr/share/mysql-8.0(命令及配置文件),/etc/mysql(如my.cnf)

2. 数据库和文件系统的关系

InnoDBMyISAM这样的存储引擎都是把表存储在磁盘上的,操作系统用来管理磁盘的结构被称为文件系统,所以用专业一点的话来表述就是:向 InnoDBMyISAM 这样的存储引擎都是把 表存储在文件系统上 的。当我们想读取数据的时候,这些存储引擎会从文件系统中吧数据读出来返回给我们,当我们想写入数据的时候,这些存储引擎会把这些数据又写回文件系统。本章学习一下 InnoDBMyISAM 这两个存储引擎的数据如何在文件系统中存储。

2.1 查看默认数据库

查看一下在我的计算机上当前有哪些数据库:

sql 复制代码
mysql> SHOW DATABASES;

可以看到有4个数据库是属于MySQL自带的系统数据库。

  • mysql

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

  • information_schema

    MySQL 系统自带的数据库,这个数据库保存着MySQL服务器 维护的所有其他数据库的信息 ,比如有哪些表、哪些视图、哪些触发器、哪些列、哪些索引。这些信息并不是真实的用户数据,而是一些描述性信息,有时候也称之为 元数据 。在系统数据库 information_schema 中提供了一些以 innodb_sys 开头的表,用于表示内部系统表。

  • performance_schema

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

  • sys

    MySQL 系统自带的数据库,这个数据库主要是通过 视图 的形式把 information_schemaperformance_schema 结合起来,帮助系统管理员和开发人员监控 MySQL 的技术性能。

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

看一下我的计算机上的数据目录下的内容:

在MySQL8.0中打开:

2.3 表在文件系统中的表示

2.3.1 InnoDB存储引擎模式

  • 注意:在MySQL8.0中,仅存在 .ibd 文件,其包含了表结构数据信息

2.3.2 MyISAM存储引擎模式

2.4 小结

相关推荐
NEXU532 分钟前
Linux:套接字
linux·服务器·网络
我不要放纵1 小时前
docker
运维·docker·容器
morliz子轩2 小时前
基于WSL搭建Ubuntu 22.04.x LTS开发环境
linux·运维·ubuntu
吃掉你也没关系吧2 小时前
【postgresql】一文详解postgresql中的统计模块
sql·postgresql
BJ_Bonree2 小时前
数智先锋 | 告别运维黑盒!豪鹏科技×Bonree ONE构建全栈智能可观测体系
运维·科技
Janspran2 小时前
嵌入式linux学习 -- 进程和线程
linux·运维·学习
Cosmoshhhyyy3 小时前
linux远程部署dify和mac本地部署dify
linux·运维·macos
xiao-xiang3 小时前
redis-sentinel基础概念及部署
数据库·redis·sentinel
AI 嗯啦4 小时前
SQL详细语法教程(三)mysql的函数知识
android·开发语言·数据库·python·sql·mysql
时序数据说4 小时前
国内时序数据库概览
大数据·数据库·物联网·时序数据库·iotdb