Quando instalamos o PostgreSQL à partir dos fontes o sistema não cria o script de start/stop. Para isso vou mostrar como configurar para utilizarmos o systemctl para iniciar e parar o banco de dados e também permitindo que ele seja iniciado automaticamente com o sistema operacional.

Crie um arquivo com seu editor preferido (vi, nano) e salve como /usr/lib/systemd/system/postgresql.service

Copie e cole as linhas abaixo dentro do script.

[Unit]
Description=PostgreSQL database server
After=network.target

[Service]
Type=forking

User=postgres
Group=postgres

OOMScoreAdjust=-1000

Environment=PG_OOM_ADJUST_FILE=/proc/self/oom_score_adj
Environment=PG_OOM_ADJUST_VALUE=0
Environment=PGSTARTTIMEOUT=270
Environment=PGDATA=/usr/local/pgsql/data


ExecStart=/usr/local/pgsql/bin/pg_ctl start -D ${PGDATA} -s -w -t ${PGSTARTTIMEOUT}
ExecStop=/usr/local/pgsql/bin/pg_ctl stop -D ${PGDATA} -s -m fast
ExecReload=/usr/local/pgsql/bin/pg_ctl reload -D ${PGDATA} -s

TimeoutSec=300

[Install]
WantedBy=multi-user.target

 

Execute o reload para o systemd para atualizar a lista de serviços e logo depois você já pode iniciar/parar o banco de dados com systemctl.

# Atualizando a lista de serviços
systemctl daemon-reload

# Habilitando o PostgreSQL para iniciar junto com o sistema operacional
systemctl enable postgresql

# Startando o banco de dados
systemctl start postgresql

Pronto, agora iniciar e parar o banco de dados ficou muito mais simplificado.

 


Cleberson

Casado, pai de família, autodidata e amante de tecnologia. Especialista em PHP, MySQL e PostgreSQL, certificado em RedHat e formando em Gestão de TI.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *