MySQL 数据目录文件含义和作用
以下是MySQL数据目录中每个文件的含义和作用详细解释:
核心系统文件
-
auto.cnf- 作用:存储MySQL实例的唯一UUID(Universally Unique Identifier)。
- 重要性:用于主从复制、组复制(Group Replication)中标识唯一节点,不可重复。
SSL/TLS安全认证文件
ca-key.pem- 作用:CA(证书颁发机构)的私钥文件,用于签署其他证书。
ca.pem- 作用:CA的证书文件,客户端和服务端用它验证对方身份。
server-cert.pem- 作用:服务端证书,由CA签名,用于向客户端证明身份。
server-key.pem- 作用:服务端私钥,用于建立加密连接。
client-cert.pem- 作用:客户端证书(若启用双向认证)。
client-key.pem- 作用:客户端私钥(用于双向认证)。
private_key.pem和public_key.pem- 作用:MySQL的RSA密钥对,用于密码加密传输(如
sha256_password插件)。
- 作用:MySQL的RSA密钥对,用于密码加密传输(如
InnoDB引擎核心文件
#ib_16384_0.dblwr和#ib_16384_1.dblwr- 作用:Doublewrite Buffer文件,确保数据页写入的原子性,防止部分写(partial write)崩溃导致的损坏。
ibdata1- 作用:InnoDB系统表空间文件,存储数据字典、Change Buffer、Undo Logs(早期版本),以及未启用独立表空间的表数据。
ib_buffer_pool- 作用:保存缓冲池状态,服务器关闭时将内存中的热数据页转储到此文件,重启时预热加速恢复。
ibtmp1- 作用:InnoDB临时表空间,存放临时表及排序操作中的临时数据。
#innodb_redo/- 作用:目录存储重做日志文件(Redo Log)(MySQL 8.0+默认格式),记录所有修改操作用于崩溃恢复。
#innodb_temp/- 作用:存放InnoDB临时表空间(非用户临时表),如优化器临时数据结构。
undo_001和undo_002- 作用:独立Undo表空间文件(MySQL 8.0+默认),存储事务回滚所需的Undo Logs(不再存储在
ibdata1中)。
- 作用:独立Undo表空间文件(MySQL 8.0+默认),存储事务回滚所需的Undo Logs(不再存储在
MySQL系统数据库
mysql/- 作用:
mysql系统数据库的目录,存储用户权限、存储过程、事件等信息。
- 作用:
mysql.ibd- 作用:MySQL 8.0+中
mysql系统数据库的独立表空间文件(替代早期ibdata1存储)。
- 作用:MySQL 8.0+中
performance_schema/- 作用:
performance_schema数据库目录,存储性能监控指标(如锁、内存使用等)。
- 作用:
sys/- 作用:
sys系统数据库目录,提供性能视图和工具(基于performance_schema)。
- 作用:
二进制日志与主从复制
mysql-bin.000001、mysql-bin.000002、mysql-bin.000003- 作用:二进制日志文件(Binlog),记录所有更改数据的SQL语句,用于主从复制和点恢复。
mysql-bin.index- 作用:记录所有Binlog文件名的索引文件,帮助MySQL快速定位日志。
运行状态与日志
mysqld.err- 作用:MySQL错误日志文件,记录服务启动、运行中的错误和警告信息。
mysql.pid- 作用:存储MySQL服务器进程的进程ID(PID),服务关闭时自动删除。
mysql.sock- 作用:Unix域套接字文件,用于本地客户端连接(如
mysql -uroot)。
- 作用:Unix域套接字文件,用于本地客户端连接(如
mysql.sock.lock- 作用:锁定
mysql.sock文件的锁文件,防止多进程冲突。
- 作用:锁定
其他文件
-
mysql_summary.txt- 作用:用户生成文本(非MySQL自动创建),可能包含状态摘要(如
SHOW ENGINE INNODB STATUS输出)。 - 权限:由
root用户创建(非MySQL自动生成)。
- 作用:用户生成文本(非MySQL自动创建),可能包含状态摘要(如
关键目录总结
#innodb_redo/和#innodb_temp/:8.0+新格式的InnoDB日志和临时文件目录。系统数据库目录(
mysql/、performance_schema/、sys/):存储核心元数据和监控信息。
文件结构特点
权限:多数文件属主为
mysql用户,确保服务正常运行。大小变化:
- 动态增长:
ibdata1(系统表空间)、ibtmp1(临时表空间)、Binlog文件。 - 固定大小:
#ib_16384_*.dblwr(Doublewrite文件大小固定)。
- 动态增长:
通过此结构,MySQL实现数据存储、事务安全、崩溃恢复和性能优化。
MySQL 数据目录文件含义和作用的更多相关文章
- linux mysql 数据目录文件夹移动及所遇到的问题
一 .如果是fedora下用rpm包安装的mysql,修改方法如下: 如果这里说的不够清楚,可以到http://www.vipkj.net/post-839.html给我留言 MySQL默认的数据文件 ...
- mysql 免安装版文件含义及作用
相信很多同学在首次安装mysql 免安装版时,对其中的文件不解,下面以 5.6.24为例讲解这里个文件代表什么: bin: 存放编译好的工具 data:存放数据库数据的位置(就是我们数据库存放的地方) ...
- 阿里云安装LNMP以及更改网站文件和MySQL数据目录
LNMP安装了哪些软件?安装目录在哪LNMP相关软件安装目录Nginx 目录: /usr/local/nginx/MySQL 目录 : /usr/local/mysql/MySQL数据库所在目录:/u ...
- mysql.sock文件的作用
mysql.sock应该mysql的主机和客户机在同一host上的时候,使用unix domain socket做为通讯协议的载体,它比tcp快.Mysql有两种连接方式: (1)TCP/IP (2 ...
- 【转】mysql.sock文件的作用
Mysql有两种连接方式: (1),TCP/IP (2),socket 对mysql.sock来说,其作用是程序与mysqlserver处于同一台机器,发起本地连接时可用. (如果程序跟mysql在同 ...
- MySQL数据库文件
MySQL数据库文件 本文档从MySQL数据库和存储引擎层面介绍各种类型的文件. 参数文件(my.cnf) 错误日志(error log) 二进制日志文件(binary log) 慢查询日志(slow ...
- Mysql启动找不到mysql.sock文件问题(Centos7)
刚装完Mysql5.7,将Mysql添加到开机自启.reboot之后mysql服务却没启动起来, 直接输入mysql –uroot –p ,出现如下错误,找不到mysql.sock文件.用servic ...
- Linux 系统根目录下各个文件夹的作用
原文: https://blog.csdn.net/qq_26941173/article/details/78376760 /bin 系统由很多放置可执行文件的目录,但是bin目录比较特殊.因为bi ...
- MySQL数据库中delimiter的作用概述
以下的文章主要是向大家描述的是MySQL数据库中delimiter的作用是什么?我们一般都认为这个命令和存储过程关系不大,到底是不是这样的呢?以下的文章将会给你相关的知识,望你会有所收获. 其实就是告 ...
- centos6.4 挂载新盘并移动mysql数据目录
1 centos 挂载新盘并格式化 以vmware workstation12 中安装的centos6. 虚拟机为例进行演示 关机,添加硬盘 开机,格式化硬盘,并挂载 通过命令查看硬盘 fdisk – ...
随机推荐
- 使用 Python 接口编译和优化模型 (AutoTVM)
在本节,将介绍与TVMC相同的知识,但展示的是如何使用Python API来完成它.完成本节后,我们将使用适用于 TVM 的 Python API 来完成以下任务: 为TVM Runtime编译预训练 ...
- 网络编程:UDP connect连接
UDP connect的作用 UDP connect函数的调用,并不会引起像TCP连接那样,和服务器目标端网络交互,并不会触发所谓的"握手"报文发送和应答. UDP套接字进行con ...
- 物联网之使用Vertx实现TCP最佳实践【响应式】
小伙伴们,你们好呀,我是老寇,跟我一起学习使用Vertx实现TCP-Server 实现TCP-Server[响应式] Vertx-Core地址 实现过程 查看源码 代码比较简单,懒得讲解啦 代码比较简 ...
- React Native开发鸿蒙Next---图片浏览与保存的问题交流
React Native开发鸿蒙Next---图片浏览与保存的问题交流 之前介绍过利用鸿蒙三方RN组件@react-native-camera-roll/camera-roll保存图片到相册. Rea ...
- 腾讯云对象存储工具类和demo
使用 package com.ruoyi; import java.io.File; public class mytest { private static String secretId = &q ...
- ElasticSearch介绍及单机版安装
概述 ElasticSearch官网:https://www.elastic.co/cn/elasticsearch GitHub地址:https://github.com/elastic/elast ...
- CRD的简单介绍
介绍 Custom Resource Define 简称 CRD,是 Kubernetes(v1.7+)为提高可扩展性,让开发者去自定义资源的一种方式. CRD 资源可以动态注册到集群中,注册完毕后, ...
- 详解鸿蒙Next仓颉开发语言中的全屏模式
大家好,今天跟大家分享一下仓颉开发语言中的全屏模式. 和ArkTS一样,仓颉的新建项目默认是非全屏模式的,如果你的应用颜色比较丰富,就会发现屏幕上方和底部的留白,这是应用自动避让了屏幕上方摄像头区域和 ...
- 利用 Kubernetes 降本增效?EasyMR 基于 Kubernetes 部署的探索实践
Kubernetes 是用于编排容器化应用程序的云原生系统.最初由 Google 创建,如今由 Cloud Native Computing Foundation(CNCF)维护更新. Kuberne ...
- DRF之频率组件源码分析
DRF之频率组件源码分析 [一]频率组件介绍 Django Rest Framework(DRF)中的频率组件是用于限制API端点的访问频率的一种机制. 频率组件可以帮助你控制用户对API的请求频率, ...