База данных MySQL была без проблем в течение нескольких месяцев. Сегодня, когда я проверял наличие обновляемых пакетов с помощью Synaptic Package Manager, он обнаружил различные компоненты MySQL (-common, -client, -server и т. Д.). Поэтому я решил обновить (забыл отметить установленную версию, но думаю, что это 5.6.21) до 5.6.25-1-ubuntu2.0. После этого, когда я отправил запрос к базе данных, я получил сообщение: -
Error occured: Can't connect to MySQL server on '127.0.0.1' (111)
Затем я обнаружил, что сервер не работает. В лог-файле я обнаружил, что сообщение: -
Can't create file /var/lib/mysql/user.lower-test
Я потратил около часа на поиск в сети, и, хотя о проблеме уже сообщалось ранее, я не видел ее в контексте проблемы после обновления, поэтому не уверен в своем следующем шаге.
apparmor
автоматически устанавливается и включается при установкеmysql-server-5.6
. Даже если вы ранее отключили его. Вы не можете удалитьapparmor
пакет, потому что это зависимостьmysql-server-5.6
. Вы можете решить ошибку «Не удается создать файл /var/lib/mysql/user.lower-test», выполнивservice apparmor stop; service apparmor teardown; update-rc.d -f apparmor remove
Я столкнулся с этой проблемой при попытке запустить несколько экземпляров MySQL, но вместо удаления apparmor я обновил файл usr.sbin.mysqld:
Например, так выглядит мой файл, и как только я добавил папки, для которых нужны разрешения на запись, все заработало как надо.
источник
Эта проблема произошла со мной, когда я попытался переместить / var / lib / mysql на другой диск и заменить исходный каталог символической ссылкой.
Apparmor запретит доступ в этой конфигурации, см.
почему это не считается ошибкой разработчиков Apparmor. Обходной путь должен использовать крепление связывания. Видеть
для объяснения.
Так
исправил проблему для меня.
источник
У меня была аналогичная проблема. Я переустановил Ubuntu Server на своем компьютере, сделал полную резервную копию / etc / на жестком диске, после переустановки я сделал копию всех важных файлов из / drive / etc / в мои системы / etc.
При этом я создал bak для файла usr.sbin.mysqld с именем usr.sbin.mysqld.bak и сохранил его в том же каталоге /etc/apparmor.d/.
После дальнейшего поиска я нашел это сообщение в блоге: https://blogs.oracle.com/jsmyth/apparmor-and-mysql
Установил apparmor-utils и попытался отправить жалобу в / usr / sbin / mysqld, и он сказал, что у меня определены 2 конфигурации apparmor (оба моих файла).
Я знаю, что это может быть не та проблема, с которой вы сталкиваетесь, но просто для ясности, не будьте настолько глупы, как я, создавая резервную копию файла в том же каталоге каталога apparmor sbin.
источник
Также проверьте, не заполнен ли ваш раздел, как было в моем случае.
По неизвестной причине перемещение данных в другой раздел также не сработало.
Поэтому для быстрого исправления, вместо того, чтобы возиться с llvm или gparted, я уменьшил свой
/swapfile
размер.источник