mysql non si aggiorna a causa di un errore nel profilo di apparmor


9

Ho ricevuto un errore mysql dopo l'aggiornamento.

Questo è il registro.

(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

Se qualcuno può aiutare. Ho provato a rimuovere il server mysql e mi dice questo.

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

TRADUZIONE INGLESE AGGIUNTA AL LOG FILE:

(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

Aggiunta una traduzione in inglese questa volta. Prova a inserire una versione inglese in futuro in quanto attirerà più risposte. Puoi tradurli utilizzando Google Translate translate.google.com/#auto/it
soluzioni EXIT

Risposte:


13

Sembra che tu abbia un errore nel tuo profilo di apparmor per mysql. Durante la correzione, puoi disabilitare il profilo apparmor per mysql e mysql dovrebbe funzionare:

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

e riavvia apparmor con: sudo /etc/init.d/apparmor restart

Quando il profilo mysql apparmor è stato riparato, è possibile rimuovere il collegamento simbolico e riavviare apparmor.

UPDATE2:

Nuovi passaggi per rimuovere e reinstallare 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

(dovrebbe chiedere una nuova password amministratore)

Controlla se funziona:

sudo service mysql status

Se non funziona, controlla se hai un file /etc/mysql/my.cnf. In caso contrario, copiarlo da quello predefinito e riavviare mysql:

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

Non ho funzionato. Quando avvio mysql viene visualizzato l'errore successivo paste.ubuntu.com/1147496 start mysql start: messaggio di invio rifiutato, 1 regole corrispondenti; type = "method_call", mittente = ": 1,93" (uid = 1000 pid = 32188 comm = "start mysql") interface = "com.ubuntu.Upstart0_6.Job" member = "Start" error name = "(unset)" request_reply = "0" destination = "com.ubuntu.Upstart" (uid = 0 pid = 1 comm = "/ sbin / init")
Diego

devi iniziare con mysql sudo start mysql. L'errore che ricevi è lo stesso di quando provi ad avviare mysql senza sudo (ID utente = 1000 nel messaggio di errore).
laurent

Mi dà ancora un errore. paste.ubuntu.com/1147618
Diego

Se mysql è stato installato / configurato correttamente, dovrebbe essere avviato ora. Vorrei provare a rimuovere / reinstallare mysql come il tuo primo errore è stato durante l'installazione di mysql e probabilmente non è stato installato o configurato correttamente perché si è interrotto nel mezzo a causa di apparmor che non gli consente di scrivere da qualche parte.
laurent

1
Buona! :) - mysql non è il più facile da reinstallare dopo un'installazione non riuscita ...
laurent

0

Credo che sia legato a questi problemi: https://bugs.launchpad.net/ubuntu/+source/mysql-dfsg-5.1/+bug/375371 https://bugs.launchpad.net/ubuntu/+source/mysql -dfsg-5.0 / + bug / 227615

Ho dovuto cambiare la posizione della directory tmp che mysql stava usando:

Modifica /etc/mysql/my.cnf

Modificare:

tmpdir      = /tmp

Per:

tmpdir      = /var/tmp/mysql

E assicurati di creare quella directory e impostare le autorizzazioni in modo appropriato:

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

Quindi puoi provare una reinstallazione e dovrebbe funzionare (per me andava bene):

sudo apt-get install -f
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.