Допустим, у меня есть 2 базы данных, «foo» и «bar», и я хочу, чтобы MySQL хранил «foo» в «/ media / foo», а «bar» в «/ media / bar», можно ли это сделать в MySQL 5.5 или новее?
Обычно каждая база данных уже находится в собственном подкаталоге. Из руководство :
База данных в MySQL реализована как каталог, содержащий файлы, соответствующие таблицам в базе данных. Поскольку при первоначальном создании в базе данных нет таблиц,
CREATE DATABASE
оператор создает только каталог в каталоге данных MySQL и файле db.opt.
...
Если вы вручную создаете каталог в каталоге данных (например, сmkdir
), сервер считает его каталогом базы данных, и он отображается в выводеSHOW DATABASES
.
С участием InnoDB с DATA DIRECTORY = absolute_path_to_directory
предложения CREATE TABLE вы даже можете создавать таблицы вне обычных структур каталогов MySQL (под)