有没有办法将一个 MySQL DB 放在一个位置,而将其他 DB 放在另一个位置?

有没有办法将一个 MySQL DB 放在一个位置,而将其他 DB 放在另一个位置?

在 Ubuntu 22.04 机器上安装任何现有的 MySQL 8.0 服务器。现有服务器运行正常,但想要导入一个非常大的数据库,但在当前数据目录中执行此操作会耗尽我可用的硬盘空间。

因此,我想将新的大型数据库导入到辅助位置(在外部硬盘上),最好无缝使用现有的 MySQL 服务器安装(即可以使用 MySQL“USE db_name;”命令在数据库之间来回移动,并且只需重定向到新大型数据库的辅助位置)(可能是某种符号链接?)。

有什么方法可以实现这个吗?

答案1

您想向现有的 mysql 实例添加新的数据库但使用不同的路径?

您使用 innodb 吗?您使用表 1. innodb_file_per_table? 如果没有(即大多数安装的默认值),那么实现此目的的最简单方法是重写导入文件以指定数据目录。

或者,您可以将其导入到 myISAM/Aria - 每个数据库都位于其自己的目录中,并且您可以使用符号链接迁移目录 - 创建数据库,停止 mysql,移动目录并从原始位置创建符号链接,然后启动 mysql。

相关内容