백그라운드에서 postgres 실행을 중지할 수 있나요?

백그라운드에서 postgres 실행을 중지할 수 있나요?

쿠분투 20.04에서

내 컴퓨터에서 Docker 컨테이너를 성공적으로 시작하려면 Postgres 프로세스를 종료해야 합니다. 나는 이것을 다음과 같이 한다:

  1. sudo ss -lptn 'sport = :5432'

, 출력은 다음과 같습니다. State Recv-Q Send-Q Local Address:Port Peer Address:Port Process LISTEN 0 244 127.0.0.1:5432 0.0.0.0:* users:(("postgres",pid=1003,fd=5))

  1. kill <pid>

이제 Postgres 데이터베이스가 있는 Docker 컨테이너를 실행할 수 있습니다. Postgres 데이터베이스를 실행하기 전에 이러한 단계를 따를 필요가 없도록 하고 싶습니다. 어떤 이유로 lsof -i :5432프로세스를 반환하지 않습니다.

Postgres가 백그라운드에서 실행되는 것이 표준 동작입니까? 이 프로세스를 중지해도 안전합니까? 그렇다면 이 프로세스가 백그라운드에서 자동으로 실행되는 것을 어떻게 중지할 수 있습니까?

나는 성공하지 못한 채 다음 명령을 시도했습니다.
sudo systemctl disable postgresql
sudo update-rc.d postgresql disable

답변1

데이터베이스 프로세스를 종료하는 것은 데이터베이스를 파괴하는 정말 좋은 방법입니다. PostgreSQL은 기본적으로 설치되지 않으므로뭔가 또는 누군가이유가 있어서 기계에 올려놓은 게 틀림없어요. 시스템에 필요한 항목이 있는지 확인하고 싶을 것입니다.

하지만 질문에 대답하려면 다음과 같이 PostgreSQL을 안전하게 중지할 수 있습니다.

sudo service postgresql stop

다음과 같이 부팅 시 PostgreSQL이 시작되지 않도록 할 수 있습니다.

sudo service postgresql disable

시스템에 데이터베이스 엔진을 로컬로 설치할 필요가 없는 경우 이를 제거할 수 있습니다.

sudo apt --purge remove postgresql

메모:이렇게 하면 서버 요소만 제거되고 클라이언트 라이브러리는 그대로 유지되어 PostgreSQL 설치에 연결됩니다.

관련 정보