В моей установке MySQL у меня есть одна база данных InnoDB, которая, как я знаю, станет очень большой, поэтому я решил переместить ее на отдельный диск. Я надеялся сделать это, переместив файлы на другой диск и затем создав символическую ссылку, но я столкнулся с ошибками!
Вот что я сделал:
1) В my.cnf я установил
В моей установке MySQL есть одна база данных InnoDB, которая, как я знаю, станет очень большой, поэтому я решил переместить ее на отдельный диск. Я надеялся сделать это, переместив файлы на другой диск и затем создав символическую ссылку, но я столкнулся с ошибками!
Вот что я сделал:
1) В my.cnf я установил
В моей установке MySQL есть одна база данных InnoDB, которая, как я знаю, станет очень большой, поэтому я решил переместить ее на отдельный диск. Я надеялся сделать это, переместив файлы на другой диск и затем создав символическую ссылку, но я столкнулся с ошибками!
Вот что я сделал:
1) В my.cnf я установил
[mysqld] innodb_file_per_table
(Это работает, у меня есть один .ibd на .frm в папке базы данных.)
2) Я проверил, подходят ли символьные ссылки с ПОКАЗАТЬ ПЕРЕМЕННЫЕ, КАК "have_symlink";
(I знайте, что в документации сказано:
Символьные ссылки полностью поддерживаются только для Таблицы MyISAM. Для файлов, используемых столы для других систем хранения, вы могут возникнуть странные проблемы, если вы попытаетесь используйте символические ссылки.
Но мне нужны внешние ключи ...)
3) Я переместил папку базы данных и создал символическую ссылку.
4) Перезапустил mysql и попробовал:
mysql> USE db_name
Database changed
mysql> SHOW TABLES;
ERROR 1018 (HY000): Can't read dir of './db_name/' (errno: 13)
mysql> exit
user@comp# perror 13
OS error code 13: Permission denied
символическая ссылка (как и ожидалось) lrwxrwxrwx mysql mysql db_name -> / path-to / db_name /
права доступа к папке базы данных drwx ------ mysql mysql
все права доступа к файлам -rw-rw- --- mysql mysql
Я использую сервер Ubuntu 10.04 с MySQL 5.1.41 (по умолчанию из apt).
Кто-нибудь из вас сделал это успешно?