Предположим что у вас FreeBSD, где установлен mysql. По умолчанию все базы mysql расположены в папке /var/db/mysql. (Узнать где расположены базы можно с помощью команды mysqladmin variables grep datadir). И предположим также, что вы сразу не выделили много места под папку /var, и в один прекрасный день у вас стало не хватать места под работу mysql и стали появляться ошибки вида:
"kernel: pid 2941 (mysqld), uid 88 inumber 71662 on /var: filesystem full".
Одно из решений этого вопроса состоит в переносе всех баз на другой диск. Сделать это можно следующим образом.
Допустим вы смонтировали новый диск в папку /var/db2/.
Прежде всего скопируем все базы в новую папку
1) cp -a (или -pfR) /var/db/mysql /var/db2
Далее изменим настройки mysql, добавив следующую запись в /etc/rc.conf:
2) mysql_dbdir="/var/db2/mysql"
3) Перезагружаем mysqld или лучше весь сервер.
4) Проверяем что все работает и удаляем папку /var/db/mysql: rm -Rf /var/db/mysql.
Далее работает уже без ошибок :)
Комментариев нет:
Отправить комментарий