datadir을 변경한 후 MySQL이 시작되지 않습니다(14.04, mysql 5.7).

datadir을 변경한 후 MySQL이 시작되지 않습니다(14.04, mysql 5.7).

별도의 HDD를 /mnt/temp에 마운트하고 변경했습니다.데이터디렉터리이것을 지적하기 위해. 나는 의류에 올바른 설정을 추가하고 몇 시간 동안 mysql을 사용하여 작업했습니다. performance_schema에 추가한 후내.cnfmysql을 다시 시작하려고 하면 오류가 발생합니다.

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

그 이후로 chmod -R 777 /mnt/temp앱 아머를 종료하고 파티션을 다시 마운트하고 파티션과 상호 작용하는 모든 프로세스를 수동으로 종료하고 performance_schema구성에서 제거했습니다.

어떤 제안이 있으십니까?

답변1

에서MySQL 학습: AppArmor 및 MySQL

MySQL에서 데이터 디렉터리(이 예에서는 /data/directory)를 재배치하려고 하는데 AppArmor에서 허용하지 않는 경우 다음 두 줄을 맨 아래에 추가하세요 /etc/apparmor.d/local/usr.sbin.mysqld.

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

...그런 다음 AppArmor 프로필을 다시 로드합니다.

sudo service apparmor reload 

답변2

나는 똑같은 문제를 겪었고 그것이 소유권 문제라고 생각할 수 있었습니다(이것은 또한 AppArmor에 문제가 있다는 착각을 불러일으켰습니다).

이것을 시도해 볼 수 있습니까? ( /var/lib/mysql귀하의 것과 일치하지 않으면 변경하십시오):

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

설명을 추가하자면 이전 Ubuntu 릴리스 이후 MySQL의 사용자 및 그룹 ID가 변경되었습니다. 이전 사용자 ID와 그룹 ID는 이제 hplip및 로 표시됩니다 pulse-access. 데이터 디렉토리는 다른 파티션에 있는 마운트 바인드이므로 할당이 변경된 이전 ID가 여전히 남아 있습니다.

관련 정보