加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL中数据目录的组织架构

发布时间:2016-08-08 09:51:52 所属栏目:MySql教程 来源:站长网
导读:归根到底,MySQL是运行在操作系统上的一个软件,它需要借助于文件系统存储数据,本文主要介绍MySQL数据目录的 组织架构。 数据目录的位置 可以通过以下几个方法
归根到底,MySQL是运行在操作系统上的一个软件,它需要借助于文件系统存储数据,本文主要介绍MySQL数据目录的 组织架构。

数据目录的位置

可以通过以下几个方法查看MySQL数据目录的位置:

1)对于一个正在运行的MySQL服务器来说,可以通过查看mysqld的进程获取MySQL数据目录的位置,如下所示:

[root@lx202 /data/mysql/data ]# ps -ef|grep mysqld  
root      5841  7337  0 15:09 pts/1    00:00:00 grep --color=auto mysqld  
root     27034     1  0  2012 ?        00:00:00 /bin/sh /opt/mysql/bin/mysqld_safe --

datadir=/data/mysql/data --pid-file=/data/mysql/data/lx202.pid  
mysql    27889 27034 30  2012 ?        111-03:03:55 /opt/mysql/bin/mysqld --basedir=/opt/mysql --

datadir=/data/mysql/data --plugin-dir=/opt/mysql/lib/mysql/plugin --user=mysql --log-

error=/data/mysql/log/alert.log --open-files-limit=65535 --pid-file=/data/mysql/data/lx202.pid --

socket=/opt/mysql/run/mysql.sock --port=3306

其中的--datadir指定的就是数据目录的位置。

2)查看my.cnf的配置信息:

[mysqld]  

datadir = /data/mysql/data

3)登陆数据库,运行show variables命令查看:

mysql> show variables like 'datadir';  
+---------------+-------------------+  
| Variable_name | Value             |  
+---------------+-------------------+  
| datadir       | /data/mysql/data/ |   
+---------------+-------------------+  
1 row in set (0.00 sec)

数据库在文件系统的表示方法

MySQL里,每个数据库都对应一个数据目录里的一个字目录,当你用create database db_name语句创建一个数据库时 ,将在数据目录下创建一个同名的子目录,在该子目录下,有一个db.opt文件,用于记录数据库默认的字符集和排序方 式,如下所示:

[root@lx202 /data/mysql/data/portal ]# cat db.opt  
default-character-set=utf8  
default-collation=utf8_general_ci

表在文件系统的表示方式

因为MySQL支持多个存储引擎,所以表在文件系统的表示方式根据存储引擎的不同而不同 。但无论哪种存储引擎,每个表至少对应一个同名的.frm文件,该文件用于描述表结构信息。除了.frm文件之外,各个 存储引擎用于存储数据的文件各不相同,下面我们介绍几种常见的存储引擎:

MyISAM

- table_name.MYD:数据文件

- table_name.MYI:索引文件

MERGE

- table_name.MRG:文本文件

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读