apparmor 프로파일의 오류로 인해 mysql이 업데이트되지 않습니다


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

mysql의 apparmor 프로파일에 오류가있는 것 같습니다. 수정하는 동안 mysql에 대한 apparmor 프로파일을 비활성화 할 수 있으며 mysql이 작동해야합니다.

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

다음을 사용하여 의류를 다시 시작하십시오. sudo /etc/init.d/apparmor restart

mysql apparmor 프로파일이 수정되면 symlink를 제거하고 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을 시작하십시오. mysql start를 시작하십시오. 거부 된 메시지 보내기, 일치하는 규칙 1 개; type = "method_call", sender = ": 1.93"(uid = 1000 pid = 32188 comm = "start mysql") interface = "com.ubuntu.Upstart0_6.Job"member = "Start"error name = "(unset)" requested_reply = "0"destination = "com.ubuntu.Upstart"(uid = 0 pid = 1 comm = "/ sbin / init")
Diego

로 mysql을 시작해야합니다 sudo start mysql. 당신이받는 오류는 sudo없이 mysql을 시작하려고 할 때와 같습니다 (오류 메시지에서 사용자 ID = 1000).
laurent

여전히 오류가 발생합니다. paste.ubuntu.com/1147618
Diego

mysql이 올바르게 설치 / 구성 되었다면 지금 시작해야합니다. 첫 번째 오류는 mysql 설치 중 이었으므로 mysql을 제거 / 다시 설치하려고 시도하고 어딘가에 쓸 수없는 복장으로 인해 중간에 중지되었으므로 올바르게 설치 또는 구성되지 않았을 수 있습니다.
laurent

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

mysql이 사용하고있는 tmp 디렉토리의 위치를 ​​변경해야했습니다.

/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
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.