
编写开机自动启动服务脚本:
# cat >> /usr/lib/systemd/system/postgresql.service >> EOF
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
[Unit]Description=PostgreSQL database serverAfter=network.target[Service]Type=forkingUser=postgresGroup=postgres# Port number for server to listen onEnvironment=PGPORT=5432# Location of database directoryEnvironment=PGDATA=/usr/local/pgsql9.4/data# Where to send early-startup messages from the server (before the logging# options of postgresql.conf take effect)# This is normally controlled by the global default set by systemd# StandardOutput=syslog# Disable OOM kill on the postmasterOOMScoreAdjust=-1000#ExecStartPre=/usr/local/pgsql9.4/bin/postgresql-check-db-dir ${PGDATA}ExecStart=/usr/local/pgsql9.4/bin/pg_ctl start -D ${PGDATA} -s -o "-p ${PGPORT}" -w -t 300ExecStop=/usr/local/pgsql9.4/bin/pg_ctl stop -D ${PGDATA} -s -m fastExecReload=/usr/local/pgsql9.4/bin/pg_ctl reload -D ${PGDATA} -s# Give a reasonable amount of time for the server to start up/shut downTimeoutSec=300[Install]WantedBy=multi-user.target |
EOF
添加可执行权限:
|
1
|
chmod 754 /usr/lib/systemd/system/postgresql.service |
设置为开机自启动:
|
1
|
systemctl enable postgresql.service |
常用指令(以postgresql服务为例):
启动某服务:
|
1
|
systemctl start postgresql.service |
停止某服务:
|
1
|
systemctl stop postgresql.service |
重启某服务:
|
1
2
|
systemctl restart postgresql.serviceservice postgresql restart |
使某服务自动启动(如tomcat服务):
|
1
|
systemctl enable postgresql.service |
使某服务不自动启动:
|
1
|
systemctl disable postgresql.service |
检查服务状态:
|
1
2
|
systemctl status postgresql.service (服务详细信息)systemctl is-active postgresql.service(仅显示是否Active) |
显示所有已启动的服务:
|
1
|
systemctl list-units --type=service |