Linux 데이터베이스 서버를 관리할 때 mysqld 서비스가 예기치 않게 종료되면 상당한 불편을 겪을 수 있습니다. 이 튜토리얼에서는 스크립트와 crontab을 사용하여 다양한 이유로 MySQL이 중지되는 경우 MySQL 시작을 자동화하는 방법을 살펴보겠습니다.
불분명한 이유로 인해 mysqld 데몬이 갑자기 중지되고 특정 상황이나 시간에 자동으로 다시 시작되지 않을 수 있습니다. 이와 관련하여 서버 로그 파일은 유용한 정보를 제공하지 않기 때문에 mysqld 서비스의 상태를 모니터링하는 솔루션을 찾았습니다. 따라서 활성화되지 않은 상황에서는 cronjob을 통해 자동 재시작을 시작해야 합니다.
이 문제를 해결하기 위한 단계별 튜토리얼을 살펴보겠습니다. (테스트됨 Linux Debian 12)
MySQL이 중지된 경우 자동으로 시작하는 방법은 무엇인가요?
첫 번째 단계는 mysqld 서비스가 중지된 경우 다시 시작하는 스크립트를 생성하는 것입니다.
1. 텍스트 편집기(예: nano
또는 vi
) 아래 스크립트를 새 파일에 복사합니다. 예를 들어 다음을 사용할 수 있습니다.
nano /path/to/your/script.sh
스크립트를 복사합니다.
#!/bin/bash
if systemctl is-active mysqld > /dev/null; then
echo "The mysqld service is running."
else
echo "The mysqld service is not running. Restarting..."
systemctl start mysqld
fi
텍스트 편집기를 저장하고 닫습니다.
2. 스크립트가 실행될 수 있도록 스크립트에 실행 권한을 부여하십시오.
chmod +x /path/to/your/script.sh
3. 아래 스크립트를 crontab (명령: crontab -e
편집할 수 있습니다):
*/3 * * * * /path/to/your/script.sh
위 줄은 스크립트가 3분마다 실행되도록 지정합니다. 상징 */3
"3분마다"를 의미합니다. 기본적으로 이 줄을 사용하면 MySQL 시작을 자동화할 수 있습니다. script.sh
.
4. 파일을 저장하고 닫습니다. crontab.
이제 스크립트 script.sh
3분마다 자동으로 실행되어 서비스 상태를 확인합니다. mysqld
필요한 경우 다시 시작하세요.
문제가 발생하여 도움이 필요한 경우 귀하의 의견에 기꺼이 답변해 드리겠습니다.