MYSQL数据目录结构上篇-表在文件系统中表示

前言感悟:我个人是比较不喜欢只会用,不太懂为什么的这么用,而且有的时候很多官方术
语让人难以读懂, 这里我会用比较大白话的方式,让我自己也能让网友们更加理解,如果书写哪里有误,欢迎大家指出((,,´•ω•)ノ"(´っω•`。)) 从入门开始啦

推荐一个学习mysql的视频 小白入手也可 很详细

宋红康mysql入门到高级课程

常见目录结构使用的基本命令(Linux下)

1.1数据库文件的存放路径

show variables like 'datadir' 
/usr/bin 目录下存储的一般是命令就相当于bin目录下的可执行文件一样

数据目录结构是/var/lib/mysql
2.配置文件目录:

/usr/share/mysql-8.0(命令及配置文件),/etc/mysql(如my.cnf(比较关键)

配置信息如下:
服务器基本配置:如服务器ID、端口、主机名等。
日志配置:如错误日志、查询日志、慢查询日志等。
缓冲池配置:如缓冲池大小、缓冲池类型等。
连接和并发配置:如最大连接数、最大并发线程数等。(一般公司运维会配置好,了解下即可)
安全配置:如设置MySQL的根密码、限制远程访问等。
存储引擎配置:如设置默认存储引擎、存储引擎特定的参数等。在这里插入图片描述

表在文件系统中的表示:

在a数据库中创建b表

MYSQL存储引擎是innodb时
db.opt 这个文件包含了与数据库选项相关的信息,比如数据库的字符集、排序规则等。它并不直接存储数据,而是存储了数据库的一些配置选项。
5.7版本和8.0版文件生成区别:
● 5.7版本: 在创建表的时候,存储引擎会在文件系统中生成.frm 文件,存储表结构,
数据存储分为两种情况
1.会存在系统空间总,idbdata1中 大小12k,可伸缩
2.存在独立表空间, .ibd文件中,
● 8.0以上版本:
表结构+数据+字符集啥的,都存在.idb中


MyISam中
5.7版本
.frm 存储表结构
.MYD data数据
.MYI 索引
8.0 版本:
.sdi ==上面5.7版本 frm 存储表结构
.MYD data数据
.MYI index索引数据

我会思考的问题

1.存储引擎的作用是什么呢?和文件系统之间的关系?

存储引擎负责管理数据的存储和检索会将数据存储在文件系统上的文件中(文件系统就相当于操作系统,因为数据是存在硬盘中的实实在在的)。并由InnoDB引擎负责管理和访问,在需要时检索数据,比如CURD操作(增删改查)实际上是由数据库管理系统(DBMS)的存储引擎执行的

2.如果是安装在我们系统上的mysql,window版本的,执行一条命令,是不是需要mysql和电脑上的操作系统进行交互?(可先暂时了解下,讲的大体流程)
当你在Windows系统上安装MySQL并执行一条命令时,MySQL服务器(DBMS)会与Windows操作系统进行交互。如果使用InnoDB存储引擎,它会操作操作系统将数据写入硬盘上。具体来说,当你执行一条写入数据的命令时(比如插入数据),MySQL服务器会将数据写入内存缓冲区,然后InnoDB存储引擎会将数据写入硬盘上的数据文件中

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/6708.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在GPU上加速RWKV6模型的Linear Attention计算

精简版:经过一些profile发现flash-linear-attention中的rwkv6 linear attention算子的表现比RWKV-CUDA中的实现性能还要更好,然后也看到了继续优化triton版本kernel的线索。接着还分析了一下rwkv6 cuda kernel的几次开发迭代以此说明对于不懂cuda以及平时…

c++ 读取输入加速

c 在处理大规模输入输出时cin会很慢, 可能需要使用scanf 代码 这时候就需要使用下面的函数来加速cin 的输入 代码 static const auto io_sync_off[](){ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);return nullptr; }();使用例子 static con…

基于Springboot的房屋租赁管理系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的房屋租赁管理系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构…

【机器学习】Ctrl-Adapter:视频生成领域的革新者

Ctrl-Adapter:视频生成领域的革新者 一、ControlNets的挑战与Ctrl-Adapter的应运而生二、Ctrl-Adapter的技术原理与实现三、Ctrl-Adapter的应用实例与性能表现四、Ctrl-Adapter的意义与未来展望 随着人工智能技术的飞速发展,图像与视频生成领域正经历着前…

【busybox记录】【shell指令】cksum

目录 内容来源: 【GUN】【cksum】指令介绍 【busybox】【cksum】指令介绍 【linux】【cksum】指令介绍 使用示例: 计算校验和 - 传统输出格式 默认输出 - 基础POSIX标准32位CRC校验和 其他校验指令对参数有更好的支持,请看其他校验指…

一篇文章带你深入了解“指针”

一篇文章带你深入了解“指针” 内存和地址了解指针指针类型const修饰指针指针的运算指针与整数之间的运算指针与指针之间的运算指针的关系运算 void* 指针传值调用和传址调用数组和指针的关系野指针野指针的形成原因规避野指针 二级指针字符指针指针数组数组指针数组传参一维数…

灌溉机器人 状压dp

灌溉机器人 题目描述 农田灌溉是一项十分费体力的农活,特别是大型的农田。小明想为农民伯伯们减轻农作负担,最近在研究一款高科技——灌溉机器人。它可以在远程电脑控制下,给农田里的作物进行灌溉。 现在有一片 N 行 M 列的农田。农田的土…

Java Jackson-jr 库是干什么用的

Jackson-jr 是一个轻量级的Java JSON 处理库。这个库被设计用来替代 Jackson 的复杂性。对比 Jackson 的复杂 API,Jackson-jr 的启动速度更快,包大小更小。 虽然Jackson databind(如ObjectMapper)是通用数据绑定的良好选择&#…

三维重建(SFM)与实时定位建图(SLAM)的区分与联系

1、SLAM SLAM是Simultaneous Location and Mapping,同时定位与地图构建。是指搭载特定传感器的主体,在没有环境先验信息的情况下,于运动过程中建立环境的模型,同时估计自己的运动。目的是解决自主机器人“定位”和“建图”两个问题…

AI学习指南-学习AI需要的编程基础

亲爱的AI初学者们,欢迎来到人工智能的奇妙世界!🚀 在这篇博客中,我将带你了解学习人工智能所需的编程基础。不用担心,我会尽量用简单易懂的方式来解释,让你即使是编程新手也能轻松上手! 1. Pyt…

OpenCV多张图片堆叠显示

OpenCV实现多张图片堆叠显示 程序思路效果代码 程序思路 读取两张或多张图片;获取图片尺寸;选择多张图片中较大的宽度和高度建立画布;合并图片到画布; 效果 代码 import cv2 import numpy as np# 读取两张图片 img1 cv2.imrea…

计算机网络中常用的网络协议

计算机网络中的网络协议可以按照其功能和作用的不同分为多种类型,常见的网络协议包括 传输层协议: TCP (Transmission Control Protocol):传输控制协议,提供可靠的数据传输服务,保证数据的完整性和顺序性。UDP (User D…

C# Web控件与数据感应之 TreeView 类

目录 关于 TreeView 一些区别 准备数据源 范例运行环境 一些实用方法 获取数据进行呈现 ​根据ID设置节点 获取所有结点的索引 小结 关于 TreeView 数据感应也即数据捆绑,是一种动态的,Web控件与数据源之间的交互,本文将继续介绍与…

mysql设置允许其他IP访问

文章目录 更改mysql配置文件登录mysql 更改mysql配置文件 查找.ini或者.cnf文件 更改bind-address为0.0.0.0 [mysqld] character-set-serverutf8mb4 bind-address0.0.0.0 default-storage-engineINNODB [mysql] default-character-setutf8mb4 [client] default-character-s…

服务器并发编程--libevent

文章目录 一、Libevent概述1.两个重要的结构体2.libevent常用接口 二、libevent IO事件三、libevent信号事件四、libevent高并发服务器参考 一、Libevent概述 Libevent 是一个用C语言编写的、轻量级的开源高性能网络库,主要有以下几个亮点:事件驱动&…

redis集群-主从机连接过程

首先从机需要发送自身携带的replid和offset向主机请求连接 replid:replid是所有主机在启动时会生成的一个固定标识,它表示当前复制流的id,当从机第一次请求连接时,主机会将自己的replid发送给从机,从机在接下来的请求…

LAME及 iOS 编译

文章目录 关于 LAME编译 for iOS 关于 LAME 官网:https://lame.sourceforge.io LAME是根据LGPL许可的高质量MPEG音频层III(MP3)编码器。 LAME的开发始于1998年年中左右。Mike Cheng 最开始将它作为针对8hz-MP3编码器源的补丁。在其他人提出…

Redis(九)渐进式遍历 | 数据库管理

文章目录 前言什么是渐进式遍历SCAN数据库管理 前言 前面我们学习了针对 redis 五种基本数据类型和五种特殊数据类型的常用命令,其中通用命令 keys pattern 我们都知道是用来查询当前 redis 服务器中有哪些 key 的,而如果此时 redis 服务器中存在很多的…

Pspnet

Pyramid Scene Parsing Network

Linux mount 挂载出现疑难问题;mount can‘t find in /etc/fstab

当挂载出现 “mount cant find in /etc/fstab” 疑难问题时,你需要检查挂载的虚拟文件目录是否已经被创建成功。 或者挂载路径不是一个文件目录,而不是一个文件。 如果是文件你就删除它,并且在重建为目录类型,如果这样都无法解决&…