programing

업데이트 후 MariaDB를 시작할 수 없음: [경고] 테스트 파일 /home/mysql/beta.lower-test를 생성할 수 없습니다.

goodjava 2022. 12. 20. 21:21

업데이트 후 MariaDB를 시작할 수 없음: [경고] 테스트 파일 /home/mysql/beta.lower-test를 생성할 수 없습니다.

방금 apt-get dist-upgrade를 사용하여 MariaDB를 업데이트했습니다.이제 service mysql start를 사용하지 않게 되었습니다.

단, root 또는 do: sudo - u mysql mysqld_safe로 실행할 수 있습니다.그 후 MariaDB는 정상적으로 기동합니다./home/mysql 폴더는 mysql 사용자와 그룹이 소유하고 있습니다.

이 함수에서 오류가 발생하였습니다.https://github.com/MariaDB/server/blob/7ff44b1a832b005264994cbdfc52f93f69b92cdc/sql/mysqld.cc#L9865

다음에 뭘 해야 할지 모르겠어요.조언 좀 해주시겠어요?

파일에서 /home에서 MariaDB SQL을 실행하려면/usr/lib/systemd/system/mariadb.service또는/lib/systemd/system/mariadb.service변경만 하면 됩니다.

ProtectHome=true

대상:

ProtectHome=false

Thomas의 답변은 맞지만, 몇 달마다 업데이트를 통해 재설정됩니다.영구적인 해결책은 다음과 같습니다.

사용하다systemctl edit mariadbmariadb 서비스의 기본 설정을 덮어쓰는 파일을 만듭니다.(데비안에서는 다음 위치에 있습니다)./etc/systemd/system/mariadb.service.d/override.conf)

파일에서 Thomas가 변경한 것과 동일한 설정을 설정합니다.

[Service]
ProtectHome=false

사용하다systemctl daemon-reloadsystemctl 설정을 새로고침합니다.

debian 9에서는 Protect를 변경해야 합니다.둘 다 거짓의 홈/lib/systemd/system/mariadb.service 그리고. /lib/systemd/system/mariadb@.service그런 다음 sudo systemctl daemon-daemon-daemon

어쩌면 도망갈 수도 있어sudo grep -Ri "protecthome" /lib/systemd/system보호의 다른 인스턴스를 찾으려면그래도 작동하지 않는 경우 mysql 관련 파일의 홈

이 문제를 해결하려면 /var/lib/mysql로 홈에 디렉토리를 마운트합니다.

mount --bind /home/mysql/var/lib/mysql /var/lib/mysql

Debian 8(Jessie)과 9(Stretch) 업데이트 후에도 마찬가지입니다."apt-get upgrade" 후 명령어

  • service mysql 시작

서버가 기동하지 않고, 다음의 에러가 기록됩니다.

[경고] 테스트 파일 /home/johndoe/UserDatabases/mypcname을 생성할 수 없습니다.저시험의

해결책은 /lib/systemd/system/systemadb 파일을 변경하는 것입니다.서비스 가치:

ProtectHome=true

로.

ProtectHome=false

상기와 같이

@RedGiant, 응, 풀었어.여기에 게시하는 것을 잊었습니다.

.1 릴리즈 이후 /home에서 SQL을 실행할 수 없게 되었습니다.이 문제를 해결할 방법이 있을 텐데 아직 찾지 못했어요.

MySQL은 /home을 제외한 모든 위치에서 실행할 수 있습니다.저는 /home을 마운트 해제하고(SSD RAID를 /home에 마운트) 디스크를 /ssd로 다시 마운트했습니다.설정에서 경로를 변경했는데 바로 작동했습니다.

SELinux 또는 Apparmor를 실행하지 않았습니다.

저는 질문에서 언급한 것과 같은 문제에 직면해 있습니다.제 경우 MariaDB Data Directory를 /home/mysql 폴더로 이동하려고 했는데 my.cnf 파일을 변경한 후 MariaDB 서비스가 시작되지 않았습니다.

파일 /lib/systemd/system/mariadb를 다음과 같이 변경하였습니다.서비스

ProtectHome=true to ProtectHome=false

Mariadb 서비스를 다시 시작할 때 데몬을 다시 로드하라는 메시지가 떴습니다.하지만 서버를 재부팅하고 마리아DB 서비스를 아무 문제 없이 시작했습니다.

언급URL : https://stackoverflow.com/questions/38529205/mariadb-cannot-start-after-update-warning-cant-create-test-file-home-mysql