Назад | Перейти на главную страницу

Как сохранить базу данных MySQL на другом диске?

В своем приложении я использую MySQL в качестве базы данных (приложение использует несколько баз данных MySQL, все используют таблицы MyISAM). По соображениям производительности я хочу переместить одну из баз данных на твердотельный накопитель (на основе DRAM), но только эту базу данных, остальные базы данных должны оставаться на диске SATA, который я использую. Как вы знаете, в MySQL вы можете указать каталог данных только в настройках MySQL, и вы не можете контролировать, где будет сохранена каждая база данных. Есть ли обходной путь для этого? Я надеюсь, что может быть какой-нибудь трюк, о котором я не знаю, который поможет выполнить работу.

Любые предложения будут очень признательны, спасибо

Предполагая, что ваш SSD имеет букву диска G: \, вы перемещаете конкретную подкаталог базы данных на новый диск и создаете символическую ссылку в каталоге 'datadir'.

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

С наилучшими пожеланиями, Фабиан

Предполагая, что вы работаете на сервере Linux и настроены для отдельных файлов для каждой базы данных, вы можете попробовать переместить подкаталог базы данных и создать символическую ссылку на подкаталог файла базы данных.

Предположим, что каталог данных MySQL C: \ MySQL \ данные и вы хотите иметь базу данных фу расположен в D: \ данные \ foo. Настройте символическую ссылку, используя эту процедуру:

  1. Убедитесь, что D: \ данные \ foo каталог существует, создав его при необходимости. Если у вас уже есть каталог базы данных с именем фу в каталоге данных вы должны переместить его в D: \ данные. В противном случае символическая ссылка будет неэффективной. Во избежание проблем убедитесь, что сервер не запущен при перемещении каталога базы данных.
  2. Создать текстовый файл C: \ mysql \ data \ foo.sym который содержит имя пути D: \ data \ foo.

Чтобы получить больше информации, http://dev.mysql.com/doc/refman/5.0/en/windows-symbolic-links.html