MySQL изменить datadir, проблема с mysqld.sock

Я попытался изменить каталог базы данных, datadir, я сделал следующие шаги. Моя машина: Ноутбук Ubuntu 11.10 64-bit

Установка:

sudo apt-get install mysql-server mysql-client

Все в порядке, я могу создавать базы данных, таблицы, все в порядке. Измените datadir:

1) $ /etc/init.d/mysql stop
2) $ cp -R -p /var/lib/mysql /new_path
3) $ rm /new_path                      (this only remove files unnecessary)
4) $ gedit /etc/mysql/my.cnf

Измените «datadir = var / lib / mysql» на новый путь.

5) $ gedit /etc/apparmor.d/usr.sbin.mysqld

Измените "/ var / lib / mysql" на новые строки с помощью "/ new_path / mysql"

6) $ /etc/init.d/apparmor reload
7) $ /etc/init.d/mysql restart
8) $ service mysql status     (is Ok)

Ошибка следующая.

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (111)

Я пытался изменить разрешения в / new_path / mysql и не работал.

Я пытался скопировать только базы данных (не все файлы в mysql dir), и это не сработало

Я видел на другом форуме, что мне нужно изменить /etc/apparmor.d/usr. sbin.mysqld следующее

/var/run/mysqld/mysqld.pid w,
/var/run/mysqld/mysqld.sock w,

Заменить "/ var / run / mysqld / mysqld" на "/ {, var /} run / mysqld / mysqld", но в моем случае это было с "/ {, var /} запустить / mysqld / mysqld "по умолчанию.

Пожалуйста, мне нужна помощь, у меня есть 2 недели с этой проблемой.

Спасибо.

5
задан 3 February 2012 в 02:27

2 ответа

Чтобы это сработало, мне нужно было изменить файлы mysql в /etc/apparmor.d/usr.sbin.mysqld . Символическая ссылка по какой-то причине была недостаточно хороша. Возможно, ссылка не существовала до запуска apparmor. Поэтому я сделал следующее:

nano /etc/apparmor.d/usr.sbin.mysqld

и изменил

  #/var/lib/mysql/ r,
  #/var/lib/mysql/** rwk,
  /mysql/mysql/ r,
  /mysql/mysql/** rwk,

, где / mysql была моей точкой монтирования для всего моего хранилища данных mysql (SSD-накопитель).

Я получил подсказку от поста walli в: Re: MySQL ERROR 2002 (HY000): не могу подключиться к локальной

Мне повезло, что я нашел решение этой проблемы проблема. Для меня было все время найти решение. Я надеюсь, это поможет вам. Было бы неплохо опубликовать заметку об этой проблеме непосредственно в файле my.cnf . Я просто не знаю, кому это отправить.

0
ответ дан 3 February 2012 в 02:27

Вы можете сделать это:

CD /var/lib/

tar -cf - mysql | (cd /new_path ; tar -xvf -)

затем (потому что это всегда хорошая идея) сделать резервную копию.

 mv /var/lib/mysql /var/lib/mysql.old

затем символическая ссылка

 ln -s /new_path/mysql/ /var/lib

в этом случае вам не нужно прикасаться к /etc/mysql/my.cnf.

0
ответ дан 3 February 2012 в 02:27

Другие вопросы по тегам:

Похожие вопросы: