【MySQL技术内幕】3.3-套接字文件、pid文件和表结构定义文件

237 阅读1分钟

欢迎大家关注 github.com/hsfxuebao/j… ,希望对大家有所帮助,要是觉得可以的话麻烦给点一下Star哈

转自:blog.csdn.net/shenchaohao…

1、套接字文件

前面提到过,在UNIX系统下本地连接 MySQL可以采用UNIX域套接字方式,这种方式需要一个套接字(socket)文件。套接字文件可由参数socket控制。一般在/tmp目录下,名为 mysql.sock:

mysql> SHOW VARIABLES LIKE 'socket';
+---------------+-----------------+
| Variable_name | Value           |
+---------------+-----------------+
| socket        | /tmp/mysql.sock |
+---------------+-----------------+
1 row in set (0.00 sec)

2、pid文件

当 MySQL实例启动时,会将自己的进程ID写入一个文件中——该文件即为pid文件。该文件可由参数pid_fle控制,默认位于数据库目录下,文件名为主机名.pid:

mysql> show variables like 'pid_file';
+---------------+----------------------------------------+
| Variable_name | Value                                  |
+---------------+----------------------------------------+
| pid_file      | /usr/local/mysql/data/mysqld.local.pid |
+---------------+----------------------------------------+
1 row in set (0.00 sec)

3、表结构定义文件

因为 MySQL插件式存储引擎的体系结构的关系, MySQL数据的存储是根据表进行的,每个表都会有与之对应的文件。但不论表采用何种存储引擎, MySQL都有一个以frm为后缀名的文件,这个文件记录了该表的表结构定义。
frm还用来存放视图的定义,如用户创建了一个v_a视图,那么对应地会产生个 v_a.frm文件,用来记录视图的定义,该文件是文本文件。