gpt4 book ai didi

多个驱动器上的MYSQL数据

转载 作者:行者123 更新时间:2023-12-05 04:25:28 27 4
gpt4 key购买 nike

我的 SDA 上有一个 MYSQL 数据库。它主要是一个带有“流行”表的模式。我想在我的 SDB 分区上存储模式中不太“流行”的表(占用另外 1TB 左右)。

enter image description here

正确的做法是什么?我需要在该驱动器上运行另一个 MYSQL 服务器吗?或者我可以简单地设置 DATA_DIRECTORY= 之类的吗?这是 Ubuntu 和 MYSQL 5.7.38。感谢您的帮助,非常感谢。

最佳答案

从 MySQL 8.0.21 开始,终于改进了为每个表指定数据目录的能力。

CREATE TABLE t1 (c1 INT PRIMARY KEY) DATA DIRECTORY = '/external/directory';

阅读https://dev.mysql.com/doc/refman/8.0/en/innodb-create-table-external.html#innodb-create-table-external-data-directory了解详情。

在早期版本的 MySQL 中,您可以使用符号链接(symbolic link)。也就是说,链接仍然必须位于默认数据目录下,但链接可以指向另一个物理设备上的文件。

以这种方式对单个表使用符号链接(symbolic link)是不可靠的,因为 OPTIMIZE TABLE 或许多形式的 ALTER TABLE 会在没有符号链接(symbolic link)的情况下重新创建文件,有效地将其移回主存储设备。为解决此问题,建议对架构子目录使用符号链接(symbolic link)而不是单个表。

老实说,我从未发现需要使用这两种技术中的任何一种的情况。保持简单:一个文件系统上有一个数据目录,并且不要将数据目录与根文件系统放在同一设备上。确保数据存储量足够大以容纳您的所有数据。如果您需要使用多个设备来制作一个更大的文件系统,请使用软件 RAID。

关于多个驱动器上的MYSQL数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73253021/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com