千家信息网

MySQL中建表DATA DIRECTORY 、INDEX DIRECTORY有什么用

发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,小编给大家分享一下MySQL中建表DATA DIRECTORY 、INDEX DIRECTORY有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,
千家信息网最后更新 2025年11月08日MySQL中建表DATA DIRECTORY 、INDEX DIRECTORY有什么用

小编给大家分享一下MySQL中建表DATA DIRECTORY 、INDEX DIRECTORY有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

介绍:

MySQL 创建表默认在放在datadir路径下,当datadir空间不足时,可再建表时指定DATA DIRECTORY、INDEX DIRECTORY将新表数据存在其他磁盘例如:/data/lottery/;

提示:

1、INNODB 表要是独立表空间(innodb_file_per_table=1)。

2、目前只有5.6后才支持单表指定目录,且目录是mysql:mysql。

3、在Windows中将忽略DATA DIRECTORY和INDEX DIRECTORY选项

4、DATA/INDEX DIRECTORY不支持开启skip-symbolic-links参数http://www.51edu.com/it/bckf/117508.html

5、普通表 DATA/INDEX DIRECTORY只在建表时指定,不可以alter table更改;

分区表可alter add PARTITIONS data DIRECTORY....

实验:

MYSQL> CREATE TABLE t_1 engine=innodb DATA DIRECTORY="/data/lottery/" INDEX DIRECTORY="/data/lottery/" as select * from zabbix.history;

系统层查看/data/lottery/

[root@localhost test]# ll /data/db/test/t_1.*

-rw-rw---- 1 mysql mysql 17070 3月 31 15:06 /data/db/test/t_1.frm

-rw-rw---- 1 mysql mysql 24 3月 31 15:06 /data/db/test/t_1.isl

[root@localhost test]#

--文件中的内容指向了上面的.ibd文件,实际这就相当于是一个连接

[root@localhost test]#cat /data/db/test/t_1.isl

/data/lottery/test/t_1.ibd

[root@localhost test]# ll

-rw-rw---- 1 mysql mysql 212992 3月 31 15:06 /data/lottery/test/t_1.ibd --->真正数据存放位置

[root@localhost test]#

以上是"MySQL中建表DATA DIRECTORY 、INDEX DIRECTORY有什么用"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0