Обсуждение: Question about servicescript for stopping and starting postgresql instance
Hi,
I have a question about creating a service script to start/stop/status postgresql instance ( version 9.6.8) on Red Hat 7.
I have read the explanation of how to create such a service script on https://www.postgresql.org/docs/9.6/static/server-start.html .
Stopping and Starting works.
However when I stop the service with:
systemctl stop postgresq.service and than ask for the status with systemctl status postgresql.service, the service gets started again.
Is this normal functionality on Red Hat 7?
I have searched on the Internet ( including the Red Hat site) for a parameter to replace this behavior, but did not find anything.
Your help is much appreciated.
Thanks in advance.
Regards,
Marian
Re: Question about servicescript for stopping and starting postgresqlinstance
От
Adrian Klaver
Дата:
On 10/30/18 5:09 AM, Marian Forums wrote: > Hi, > > I have a question about creating a service script to start/stop/status > postgresql instance ( version 9.6.8) on Red Hat 7. How did you install Postgres on the machine? > > I have read the explanation of how to create such a service script on > https://www.postgresql.org/docs/9.6/static/server-start.html . Did you use the example at the above link or did you write your own? If you wrote your own can you show it? > > Stopping and Starting works. > However when I stop the service with: > systemctl stop postgresq.service and than ask for the status with > systemctl status postgresql.service, the service gets started again. > > Is this normal functionality on Red Hat 7? > I have searched on the Internet ( including the Red Hat site) for a > parameter to replace this behavior, but did not find anything. > > Your help is much appreciated. > Thanks in advance. > Regards, > Marian -- Adrian Klaver adrian.klaver@aklaver.com
Re: Question about servicescript for stopping and starting postgresql instance
От
Marian Forums
Дата:
Hi Adrain,
Thanks for your reply.
My script looks like this:
# cat /usr/lib/systemd/system/postgresql-9.6.pg-tstxxx.service
[Unit]
Description=postgresql_pg-tstxxx
After=syslog.target
After=network.target
[Service]
Type=forking
User=postgresql
Group=postgresqlg
Environment=PGDATA=/data/pg-tstxxx/data-01/
# Run ExecStartPre with root-permissions
PermissionsStartOnly=true
ExecStartPre=/bin/chown postgresql:postgresqlgroup /var/run/postgresql
ExecStart=/usr/pgsql-9.6/bin/pg_ctl start -D ${PGDATA}
ExecStop=/usr/pgsql-9.6/bin/pg_ctl stop -D ${PGDATA} -s -m fast
ExecReload=/usr/pgsql-9.6/bin/pg_ctl reload -D ${PGDATA} -s
Restart=on-failure
KillMode=control-group
ExecStop=/bin/kill -SIGTERM $MAINPID
RestartSec=10s
[Install]
WantedBy=multi-user.target
thanks in advance.
regards,
Marian
Op di 30 okt. 2018 om 14:30 schreef Adrian Klaver <adrian.klaver@aklaver.com>:
On 10/30/18 5:09 AM, Marian Forums wrote:
> Hi,
>
> I have a question about creating a service script to start/stop/status
> postgresql instance ( version 9.6.8) on Red Hat 7.
How did you install Postgres on the machine?
>
> I have read the explanation of how to create such a service script on
> https://www.postgresql.org/docs/9.6/static/server-start.html .
Did you use the example at the above link or did you write your own?
If you wrote your own can you show it?
>
> Stopping and Starting works.
> However when I stop the service with:
> systemctl stop postgresq.service and than ask for the status with
> systemctl status postgresql.service, the service gets started again.
>
> Is this normal functionality on Red Hat 7?
> I have searched on the Internet ( including the Red Hat site) for a
> parameter to replace this behavior, but did not find anything.
>
> Your help is much appreciated.
> Thanks in advance.
> Regards,
> Marian
--
Adrian Klaver
adrian.klaver@aklaver.com
Re: Question about servicescript for stopping and starting postgresqlinstance
От
Adrian Klaver
Дата:
On 10/30/18 9:27 AM, Marian Forums wrote:
> Hi Adrain,
> Thanks for your reply.
How was Postgres installed on this machine?
Have you tried the script from the docs?
> My script looks like this:
I am no systemd expert, still the Type=forking does not seem right to me.
> # cat /usr/lib/systemd/system/postgresql-9.6.pg-tstxxx.service
> [Unit]
> Description=postgresql_pg-tstxxx
> After=syslog.target
> After=network.target
>
> [Service]
> Type=forking
> User=postgresql
> Group=postgresqlg
> Environment=PGDATA=/data/pg-tstxxx/data-01/
> # Run ExecStartPre with root-permissions
> PermissionsStartOnly=true
> ExecStartPre=/bin/chown postgresql:postgresqlgroup /var/run/postgresql
> ExecStart=/usr/pgsql-9.6/bin/pg_ctl start -D ${PGDATA}
> ExecStop=/usr/pgsql-9.6/bin/pg_ctl stop -D ${PGDATA} -s -m fast
> ExecReload=/usr/pgsql-9.6/bin/pg_ctl reload -D ${PGDATA} -s
> Restart=on-failure
> KillMode=control-group
> ExecStop=/bin/kill -SIGTERM $MAINPID
> RestartSec=10s
>
> [Install]
> WantedBy=multi-user.target
>
> thanks in advance.
> regards,
> Marian
>
> Op di 30 okt. 2018 om 14:30 schreef Adrian Klaver
> <adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>>:
>
> On 10/30/18 5:09 AM, Marian Forums wrote:
> > Hi,
> >
> > I have a question about creating a service script to
> start/stop/status
> > postgresql instance ( version 9.6.8) on Red Hat 7.
>
> How did you install Postgres on the machine?
>
> >
> > I have read the explanation of how to create such a service
> script on
> > https://www.postgresql.org/docs/9.6/static/server-start.html .
>
> Did you use the example at the above link or did you write your own?
>
> If you wrote your own can you show it?
>
>
> >
> > Stopping and Starting works.
> > However when I stop the service with:
> > systemctl stop postgresq.service and than ask for the status with
> > systemctl status postgresql.service, the service gets started again.
> >
> > Is this normal functionality on Red Hat 7?
> > I have searched on the Internet ( including the Red Hat site) for a
> > parameter to replace this behavior, but did not find anything.
> >
> > Your help is much appreciated.
> > Thanks in advance.
> > Regards,
> > Marian
>
>
> --
> Adrian Klaver
> adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>
>
--
Adrian Klaver
adrian.klaver@aklaver.com
Re: Question about servicescript for stopping and starting postgresql instance
От
Marian Forums
Дата:
Hi,
Postgres was installed through a repo with yum install.
I will try to run it with another type.
Regards
Marian
> Op 30 okt. 2018 om 21:56 heeft Adrian Klaver <adrian.klaver@aklaver.com> het volgende geschreven:
>
>> On 10/30/18 9:27 AM, Marian Forums wrote:
>> Hi Adrain,
>> Thanks for your reply.
>
>
> How was Postgres installed on this machine?
>
> Have you tried the script from the docs?
>
>
>> My script looks like this:
>
> I am no systemd expert, still the Type=forking does not seem right to me.
>
>> # cat /usr/lib/systemd/system/postgresql-9.6.pg-tstxxx.service
>> [Unit]
>> Description=postgresql_pg-tstxxx
>> After=syslog.target
>> After=network.target
>> [Service]
>> Type=forking
>> User=postgresql
>> Group=postgresqlg
>> Environment=PGDATA=/data/pg-tstxxx/data-01/
>> # Run ExecStartPre with root-permissions
>> PermissionsStartOnly=true
>> ExecStartPre=/bin/chown postgresql:postgresqlgroup /var/run/postgresql
>> ExecStart=/usr/pgsql-9.6/bin/pg_ctl start -D ${PGDATA}
>> ExecStop=/usr/pgsql-9.6/bin/pg_ctl stop -D ${PGDATA} -s -m fast
>> ExecReload=/usr/pgsql-9.6/bin/pg_ctl reload -D ${PGDATA} -s
>> Restart=on-failure
>> KillMode=control-group
>> ExecStop=/bin/kill -SIGTERM $MAINPID
>> RestartSec=10s
>> [Install]
>> WantedBy=multi-user.target
>> thanks in advance.
>> regards,
>> Marian
>> Op di 30 okt. 2018 om 14:30 schreef Adrian Klaver <adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>>:
>> On 10/30/18 5:09 AM, Marian Forums wrote:
>> > Hi,
>> >
>> > I have a question about creating a service script to
>> start/stop/status
>> > postgresql instance ( version 9.6.8) on Red Hat 7.
>> How did you install Postgres on the machine?
>> >
>> > I have read the explanation of how to create such a service
>> script on
>> > https://www.postgresql.org/docs/9.6/static/server-start.html .
>> Did you use the example at the above link or did you write your own?
>> If you wrote your own can you show it?
>> >
>> > Stopping and Starting works.
>> > However when I stop the service with:
>> > systemctl stop postgresq.service and than ask for the status with
>> > systemctl status postgresql.service, the service gets started again.
>> >
>> > Is this normal functionality on Red Hat 7?
>> > I have searched on the Internet ( including the Red Hat site) for a
>> > parameter to replace this behavior, but did not find anything.
>> >
>> > Your help is much appreciated.
>> > Thanks in advance.
>> > Regards,
>> > Marian
>> -- Adrian Klaver
>> adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>
>
>
> --
> Adrian Klaver
> adrian.klaver@aklaver.com
Re: Question about servicescript for stopping and starting postgresqlinstance
От
Adrian Klaver
Дата:
On 10/30/18 2:09 PM, Marian Forums wrote:
>
>
> Hi,
> Postgres was installed through a repo with yum install.
So did you disable the start/stop scripts that the package installed?
> I will try to run it with another type.
> Regards
> Marian
>
>> Op 30 okt. 2018 om 21:56 heeft Adrian Klaver <adrian.klaver@aklaver.com> het volgende geschreven:
>>
>>> On 10/30/18 9:27 AM, Marian Forums wrote:
>>> Hi Adrain,
>>> Thanks for your reply.
>>
>>
>> How was Postgres installed on this machine?
>>
>> Have you tried the script from the docs?
>>
>>
>>> My script looks like this:
>>
>> I am no systemd expert, still the Type=forking does not seem right to me.
>>
>>> # cat /usr/lib/systemd/system/postgresql-9.6.pg-tstxxx.service
>>> [Unit]
>>> Description=postgresql_pg-tstxxx
>>> After=syslog.target
>>> After=network.target
>>> [Service]
>>> Type=forking
>>> User=postgresql
>>> Group=postgresqlg
>>> Environment=PGDATA=/data/pg-tstxxx/data-01/
>>> # Run ExecStartPre with root-permissions
>>> PermissionsStartOnly=true
>>> ExecStartPre=/bin/chown postgresql:postgresqlgroup /var/run/postgresql
>>> ExecStart=/usr/pgsql-9.6/bin/pg_ctl start -D ${PGDATA}
>>> ExecStop=/usr/pgsql-9.6/bin/pg_ctl stop -D ${PGDATA} -s -m fast
>>> ExecReload=/usr/pgsql-9.6/bin/pg_ctl reload -D ${PGDATA} -s
>>> Restart=on-failure
>>> KillMode=control-group
>>> ExecStop=/bin/kill -SIGTERM $MAINPID
>>> RestartSec=10s
>>> [Install]
>>> WantedBy=multi-user.target
>>> thanks in advance.
>>> regards,
>>> Marian
>>> Op di 30 okt. 2018 om 14:30 schreef Adrian Klaver <adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>>:
>>> On 10/30/18 5:09 AM, Marian Forums wrote:
>>> > Hi,
>>> >
>>> > I have a question about creating a service script to
>>> start/stop/status
>>> > postgresql instance ( version 9.6.8) on Red Hat 7.
>>> How did you install Postgres on the machine?
>>> >
>>> > I have read the explanation of how to create such a service
>>> script on
>>> > https://www.postgresql.org/docs/9.6/static/server-start.html .
>>> Did you use the example at the above link or did you write your own?
>>> If you wrote your own can you show it?
>>> >
>>> > Stopping and Starting works.
>>> > However when I stop the service with:
>>> > systemctl stop postgresq.service and than ask for the status with
>>> > systemctl status postgresql.service, the service gets started again.
>>> >
>>> > Is this normal functionality on Red Hat 7?
>>> > I have searched on the Internet ( including the Red Hat site) for a
>>> > parameter to replace this behavior, but did not find anything.
>>> >
>>> > Your help is much appreciated.
>>> > Thanks in advance.
>>> > Regards,
>>> > Marian
>>> -- Adrian Klaver
>>> adrian.klaver@aklaver.com <mailto:adrian.klaver@aklaver.com>
>>
>>
>> --
>> Adrian Klaver
>> adrian.klaver@aklaver.com
--
Adrian Klaver
adrian.klaver@aklaver.com