mysql не обновляется из-за ошибки в профиле apparmor


9

Я получил ошибку MySQL после его обновления.

Это журнал.

(Leyendo la base de datos ... 559752 ficheros o directorios instalados actualmente.)
Desinstalando mysql-server ...
Configurando mysql-server-5.5 (5.5.24-0ubuntu0.12.04.1) ...
Error del analizador AppArmor para /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld en la l?nea 40: syntax error, unexpected TOK_END_OF_RULE, expecting TOK_MODE
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error al procesar mysql-server-5.5 (--configure):
 el subproceso instalado el script post-installation devolvió el código de salida de error 1
No se escribió ningún informe «apport» porque ya se ha alcanzado el valor de «MaxReports»
         Se encontraron errores al procesar:
 mysql-server-5.5
E: Sub-process /usr/bin/dpkg returned an error code (1)
Un paquete no se pudo instalar. Tratando de recuperarlo:
Configurando mysql-server-5.5 (5.5.24-0ubuntu0.12.04.1) ...
Error del analizador AppArmor para /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld en la l?nea 40: syntax error, unexpected TOK_END_OF_RULE, expecting TOK_MODE
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error al procesar mysql-server-5.5 (--configure):
 el subproceso instalado el script post-installation devolvió el código de salida de error 1
Se encontraron errores al procesar:
 mysql-server-5.5

Если кто-то может помочь. Я попытался удалить сервер MySQL, и он говорит мне об этом.

Se encontraron errores al procesar:
mysql-server-5.5
mysql-server
E: Sub-process /usr/bin/dpkg returned an error code (1

ДОБАВЛЕН АНГЛИЙСКИЙ ПЕРЕВОД К ФАЙЛУ:

(Reading database ... 559752 files and directories currently installed.)
Removing mysql-server ...
Setting up mysql-server-5.5 (5.5.24-0ubuntu0.12.04.1) ...
AppArmor parser error for /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld in the l? Line 40: syntax error, unexpected TOK_END_OF_RULE, expecting TOK_MODE
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing mysql-server-5.5 (--configure):
  subprocess installed post-installation script returned error exit code 1
Do not write any report "dumbbell" because it has already reached the value of "MaxReports»
          Errors were encountered while processing:
  mysql-server-5.5
E: Sub-process /usr/bin/dpkg Returned an error code (1)
A package failed to install. Trying to recover:
Setting up mysql-server-5.5 (5.5.24-0ubuntu0.12.04.1) ...
AppArmor parser error for /etc/apparmor.d/usr.sbin.mysqld in /etc/apparmor.d/usr.sbin.mysqld in the l? Line 40: syntax error, unexpected TOK_END_OF_RULE, expecting TOK_MODE
start: Job failed to start
invoke-rc.d: initscript mysql, action "start" failed.
dpkg: error processing mysql-server-5.5 (--configure):
  subprocess installed post-installation script returned error exit code 1
Errors were encountered while processing:
  mysql-server-5.5

На этот раз добавлен перевод на английский. Попробуйте разместить английскую версию в будущем, так как это привлечет больше ответов. Вы можете перевести их с помощью Google Translate translate.google.com/#auto/en
exIT Solutions

Ответы:


13

Кажется, у вас есть ошибка в вашем профиле apparmor для MySQL. Исправляя это, вы можете отключить профиль apparmor для mysql, и mysql должен работать:

sudo ln -s /etc/apparmor.d/usr.sbin.mysqld /etc/apparmor.d/disable/usr.sbin.mysqld

и перезапустите apparmor с помощью: sudo /etc/init.d/apparmor restart

Когда у вас исправлен профиль mysql apparmor, вы можете удалить символическую ссылку и перезапустить apparmor.

UPDATE2:

Новые шаги для удаления и переустановки mysql:

sudo apt-get purge mysql-server mysql-client mysql-common mysql-client-5.5 mysql-server-5.5
sudo apt-get autoremove
sudo apt-get autoclean

sudo rm -rf /etc/mysql

sudo apt-get install mysql-server mysql-common mysql-client

(следует запросить новый пароль администратора)

Проверьте, работает ли это:

sudo service mysql status

Если это не работает, проверьте, есть ли у вас файл /etc/mysql/my.cnf. Если нет, скопируйте его из файла по умолчанию и перезапустите mysql:

sudo cp /etc/mysql/my.cnf.dpkg-dist /etc/mysql/my.cnf

Это не сработало. Когда я запускаю mysql, получаю следующую ошибку paste.ubuntu.com/1147496 start mysql start: Отклонено отправленное сообщение, 1 соответствует правилам; type = "method_call", sender = ": 1.93" (uid = 1000 pid = 32188 comm = "start mysql") interface = "com.ubuntu.Upstart0_6.Job" member = "Пуск" error name = "(unset)" required_reply = "0" destination = "com.ubuntu.Upstart" (uid = 0 pid = 1 comm = "/ sbin / init")
Диего

Вы должны начать MySQL с sudo start mysql. Ошибка, которую вы получаете, такая же, как и при попытке запустить mysql без sudo (идентификатор пользователя = 1000 в сообщении об ошибке).
Лоран

Это все еще дает мне ошибку. paste.ubuntu.com/1147618
Диего

Если mysql был правильно установлен / настроен, он должен был начаться сейчас. Я бы попытался удалить / переустановить mysql, так как ваша первая ошибка была во время установки mysql и, вероятно, она не установлена ​​или не настроена правильно, потому что остановилась посередине из-за apparmor, не позволяющей ей что-либо записать.
Лоран

1
Хорошо! :) - MySQL не так просто переустановить после неудачной установки ...
Laurent

0

Я считаю, что это связано с этими проблемами: https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.1/+bug/375371 https://bugs.launchpad.net/ubuntu/+source/mysql -dfsg-5,0 / + ошибка / 227615

Мне пришлось изменить расположение каталога tmp, который использовал mysql:

Редактировать /etc/mysql/my.cnf

Изменить:

tmpdir      = /tmp

Для того, чтобы:

tmpdir      = /var/tmp/mysql

И убедитесь, что вы создали этот каталог и соответственно установили права доступа:

sudo mkdir -m 0770 /var/tmp/mysql
sudo chown mysql:mysql /var/tmp/mysql

Тогда вы можете попробовать переустановить, и он должен работать (было хорошо для меня):

sudo apt-get install -f
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.