5.6. Вопросы, относящиеся к диску
5.6.1.1. Использование символических ссылок для баз данных
Для создания символической ссылки для базы данных вначале следует создать каталог на некотором диске, где имеется свободное место, а затем создать символическую ссылку на него из каталога баз данных MySQL.
shell> mkdir /dr1/databases/test
shell> ln -s /dr1/databases/test mysqld-datadir
MySQL не поддерживает ссылку из одного каталога на несколько баз данных. Замещение каталога базы данных символической ссылкой будет хорошо работать только в случае, если вы не создаете символическую ссылку между базами данных. Предположим, имеется база данных db1 в каталоге данных MySQL и создается символическая ссылка db2 , указывающая на db1 :
shell> cd /path/to/datadir
shell> ln -s db1 db2
Теперь для любой таблицы tbl_a в db1 должна существовать таблица tbl_a в db2 . Если один поток обновляет db1.tbl_a , а другой поток - db2.tbl_a , то возникнут проблемы.
Если описанная выше возможность действительно необходима, то нужно изменить следующий код в mysys/mf_format.c :
if (flag & 32 || (!lstat(to,&stat_buff) && S_ISLNK(stat_buff.st_mode)))
на
if (1)
Под Windows можно использовать внутренние символические ссылки на каталоги (путем компиляции MySQL с -DUSE_SYMDIR ). Это позволяет размещать различные базы данных на различных дисках (see Раздел 2.6.2.5, «Распределение данных в Windows между несколькими различными дисками»).
Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
|