O MySQL não inicia após alterar o datadir (14.04, mysql 5.7)

O MySQL não inicia após alterar o datadir (14.04, mysql 5.7)

Montei um disco rígido separado em/mnt/temp e mudeidiretório de dadospara apontar para isso. Adicionei as configurações corretas no apparmor e trabalhei com o mysql por algumas horas. Depois de performance_schemaadicionarmeu.cnfe tentando reiniciar o mysql, estou recebendo os erros:

[Warning] Can't create test file /mnt/temp/some_dir/blah.lower-test
...
[ERROR] InnoDB: The innodb_system data file 'ibdata1' must be writable
...

Desde então chmod -R 777 /mnt/temp, desliguei o App Armor, remontei a partição, eliminei manualmente todos os processos que estariam interagindo com a partição e removi performance_schemada minha configuração.

Alguma sugestão?

Responder1

DeAprendendo MySQL: AppArmor e MySQL

Se você deseja realocar o diretório de dados no MySQL (neste exemplo, para /data/directory), e o AppArmor não permite, adicione as duas linhas a seguir ao final de /etc/apparmor.d/local/usr.sbin.mysqld:

/data/ r,
/data/** rwk, 

...e recarregue os perfis do AppArmor:

sudo service apparmor reload 

Responder2

Encontrei o mesmo e percebi que era um problema de propriedade (isso também me deu a ilusão de um problema com o AppArmor).

Talvez você possa tentar isso (mude /var/lib/mysqlse não corresponder ao seu):

sudo chown -R mysql /var/lib/mysql
sudo chgrp -R mysql /var/lib/mysql

Como observação explicativa, os IDs de usuário e grupo do MySQL mudaram desde a versão mais antiga do Ubuntu. O ID de usuário e o ID de grupo anteriores agora pareciam hplipe pulse-access. Como o diretório de dados é uma ligação de montagem para mim (em outra partição), ele ainda tinha esses IDs anteriores cuja atribuição foi alterada.

informação relacionada