如何在另一个驱动器上保存MySQL数据库?

在我的应用程序中,我使用MySQL作为数据库后端(应用程序使用多个MySQL数据库,全部使用MyISAM表)。 出于性能原因,我想将其中一个数据库移动到固态驱动器(基于DRAM),但只有该数据库,其他数据库应该留在我使用的SATA驱动器上。 如您所知,在MySQL中,您只能在MySQL设置中指定数据目录,并且无法控制每个数据库的保存位置。 有没有解决方法? 我希望有一些技巧我不知道可以完成工作。

任何build议将非常感激,谢谢

假设您的SSD具有驱动器盘符G:\,请将您的特定数据库子目录移至新驱动器,并在“datadir”目录中创build符号链接。

mklink /D database_subdir G:\path\to\database 

祝福,Fabian

假设您正在Linux服务器上运行,并为每个数据库设置了独立文件,则可以尝试移动数据库子目录和symlinking数据库文件子目录。

假设MySQL的数据目录是C:\ mysql \ data,并且你想让数据库foo位于D:\ data \ foo 。 使用此过程设置符号链接:

  1. 确保D:\ data \ foo目录存在,必要时创build它。 如果在数据目录中已经有一个名为foo的数据库目录,则应将其移动到D:\ data 。 否则,这个符号链接将是无效的。 为避免出现问题,请确保在移动数据库目录时服务器未运行。
  2. 创build一个包含path名D:\ data \ foo的文本文件C:\ mysql \ data \ foo.sym

有关更多信息,请参阅http://dev.mysql.com/doc/refman/5.0/en/windows-symbolic-links.html