MySQL 서버용 시스템 서비스 단위 구성 파일을 어떻게 생성합니까?

MySQL 서버용 시스템 서비스 단위 구성 파일을 어떻게 생성합니까?

업데이트 Robert Longson이 제안한 /etc/systemd/system을 사용하여 mysqld.service 파일을 생성할 수 있었습니다.

이제 내 문제는 바뀌었습니다. 서비스를 시작하면 실패합니다. 나는 실행했고 systemctl status mysqld.service결과는 다음과 같습니다.

   Loaded: loaded (/etc/systemd/system/mysqld.service; enabled; vendor preset: enabled)
   Active: failed (Result: exit-code) since Sun 2020-03-29 19:01:25 CDT; 38s ago
     Docs: man:mysqld(7)
           http://dev.mysql.com/doc/refman/en/using-systemd.html
  Process: 9251 ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --daemonize --pid
mysqld.service: Service hold-off time over, scheduling restart.
mysqld.service: Scheduled restart job, restart counter is at 5.
Stopped MySQL Server.
mysqld.service: Start request repeated too quickly.
mysqld.service: Failed with result 'exit-code'.
mysqld.service: Failedto start MySQL Server

MySQL Server 5.7을 설치한 후 처음으로 systemd를 사용하여 시작하려고 합니다. 매뉴얼에는 /usr/lib/systemd/system에 구성 파일을 생성하라고 나와 있습니다.하지만 그 하위 디렉토리는 존재하지 않습니다(저는 우분투 18.04를 사용하고 있습니다.) 나는 이 가이드를 따르고 있습니다:

https://dev.mysql.com/doc/mysql-secure-deployment-guide/5.7/en/secure-deployment-post-install.html#secure-deployment-systemd-startup

systemd와 함께 작동하도록 MySQL 설치를 구성하려면 다음을 수행하십시오.

  1. MySQL 서비스에 대한 세부정보가 포함된 시스템 서비스 단위 구성 파일을 추가합니다. 파일 이름은 mysqld.service이며 /usr/lib/systemd/system에 있습니다.
shell> cd /usr/lib/systemd/system
shell> touch mysqld.service
shell> chmod 644 mysqld.service

systemd의 'system' 하위 디렉터리가 없기 때문에 방금 mysql.service 파일을 만들었습니다.곧장/usr/lib/systemd에 있습니다. 나머지 지침을 따른 후 다음을 수행했습니다.

shell> systemctl start mysqld

하지만 다음과 같이 실패했습니다.

Failed to enable unit: Unit file mysqld.service does not exist.

누군가 내가 뭘 잘못했는지 설명해 주시겠습니까? 감사합니다.

답변1

서비스 파일은 실제로 /usr/lib/systemd/system이 아닌 /etc/systemd/system에 있습니다.

서비스가 실패한 이유를 알아내려면 systemctl status mysqld더 완전한 로그를 확인하거나 Journalctl 명령(예: )을 살펴보십시오 journalctl -u mysqld -S today.

관련 정보