환경설정

Tibero 서비스를 systemd로 관리하기: 리눅스에서 자동 재기동 설정하기

wooyit 2023. 7. 7. 10:37

안녕하세요, 오늘은 Tibero 서비스를 systemd를 통해 관리하는 방법에 대해 알아볼 것입니다. 

 

Tibero는 높은 성능과 안정성을 제공하는 RDBMS(Relational Database Management System)로, 여러분의 리눅스 시스템에서 중요한 역할을 수행합니다. 

 

systemd는 리눅스의 기본 init 시스템으로, 서비스의 시작, 중지 및 재시작과 같은 작업을 담당합니다.

 

Tibero 서비스를 systemd에 등록하기

 

Tibero를 systemd에 등록하려면 먼저 서비스 유닛 파일을 작성해야 합니다.

sudo vi /etc/systemd/system/tibero.service

 

아래의 내용을 해당 파일에 입력합니다.

[Unit]
Description=The Tibero Database Service
After=syslog.target network.target

[Service]
LimitMEMLOCK=infinity
LimitNOFILE=65535
Type=forking
RemainAfterExit=yes
Restart=no
ExecStop=/bin/bash -c '/root/tibero6/scripts/stop.sh'
ExecStart=/bin/bash -c '/root/tibero6/scripts/start.sh'
User=root

[Install]
WantedBy=multi-user.target

이 파일은 systemd에 Tibero 서비스에 대한 정보를 제공하며, 서비스가 어떻게 시작하고 중지되는지 정의합니다.

위의 설정 파일에서는 'ExecStart'와 'ExecStop' 명령을 사용하여 Tibero가 시작되고 중지되는 방법을 정의하고 있습니다. 

 

이 두 가지 명령은 각각 Tibero를 시작하고 중지하는 bash 스크립트를 참조합니다. 

 

'User=root' 설정은 이 스크립트가 root 사용자로 실행되도록 합니다.

 

스크립트 작성하기

 

이제 필요한 스크립트를 작성해야 합니다.

 

stop.sh
Tibero를 중지하는 스크립트를 작성해 보겠습니다.

#!/bin/bash
su - root -c "tbdown immediate"
exit

start.sh
Tibero를 시작하는 스크립트도 마찬가지로 작성합니다.

#!/bin/bash
su - root -c "tbdown clean << __EOF__ y __EOF__"
su - root -c "tbboot"
exit 0

 

systemd 서비스 활성화하기

 

마지막으로, Tibero 서비스가 시스템 부팅 시 자동으로 시작되도록 설정해야 합니다. 아래의 명령어를 사용해 서비스 파일에 대한 권한을 설정하고, systemd 데몬을 리로드하고, 서비스를 활성화합니다.

sudo chmod 644 /etc/systemd/system/tibero.service
sudo systemctl daemon-reload
sudo systemctl enable tibero.service

 

이상으로 Tibero 서비스를 systemd로 관리하는 방법에 대해 살펴보았습니다. 이를 통해 서버 재부팅 시에도 Tibero 서비스가 자동으로 재기동되도록 설정할 수 있습니다. 만약 서비스 설정이 변경된 경우에는 서버를 재부팅하는 것이 좋습니다. 이렇게 하면 변경사항이 적용되어 서비스가 올바르게 작동하게 됩니다.

이 글이 도움이 되셨기를 바라며, 추가 질문이나 더 알고 싶은 내용이 있다면 댓글로 남겨주세요.