Изменение каталога данных MySQL на EC2

Изменение каталога данных MySQL на EC2

У меня настроен экземпляр EC2, и я пытаюсь переместить каталог данных MySQL в смонтированное хранилище.

Каталог данных по умолчанию:

/opt/bitnami/mysql/data

Я полностью скопировал этот каталог в

/mnt/mysql_data

Затем я изменил путь в my.cnf на следующий:

datadir=/mnt/mysql_data

и переименовал старый каталог, чтобы быть уверенным, что использую новый.

Я дал MySQL соответствующие разрешения на новый каталог - но я не думаю, что MySQL даже пытается туда попасть. Когда я пытаюсь перезапустить mysql, я получаю ошибки о предыдущем каталоге данных:

sudo /opt/bitnami/ctlscript.sh start mysql
111122 18:50:50 mysqld_safe Logging to '/opt/bitnami/mysql/data/mysqld.log'.
touch: cannot touch `/opt/bitnami/mysql/data/mysqld.log': No such file or directory
chown: cannot access `/opt/bitnami/mysql/data/mysqld.log': No such file or directory
111122 18:50:50 mysqld_safe Starting mysqld.bin daemon with databases from /opt/bitnami/mysql/data
/opt/bitnami/mysql/bin/mysqld_safe: 739: cannot create /opt/bitnami/mysql/data/mysqld.log: Directory nonexistent
eval: 1: cannot create /opt/bitnami/mysql/data/mysqld.log: Directory nonexistent
111122 18:50:50 mysqld_safe mysqld from pid file /opt/bitnami/mysql/data/ip-10-120-253-190.pid ended
/opt/bitnami/mysql/bin/mysqld_safe: 783: cannot create /opt/bitnami/mysql/data/mysqld.log: Directory nonexistent

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

решение1

Оказывается, управляющий скрипт Amazon "/opt/bitnami/ctlscript.sh" выполняет скрипт конфигурации MySQL по адресу /opt/bitnami/mysql/scripts/ctl.sh

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

решение2

Вам необходимо настроить mysql для использования нового каталога журналов, отредактируйте /etc/mysql/my.cnf (в данном случае я использую Debian) и обновите

general_log_file = /mnt/data/log

Удачи.

Связанный контент