PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

PostgreSQL-Prozessnamen auf Solaris

PostgreSQL-Prozesse sind sehr wenige und zählbar, wie z. B. Writer-Prozess, Wall-Writer-Prozess, Statistiksammler, Autovacuum-Prozess, Syslogger-Prozess, Archivierungsprozess und Daemon-Postmaster. Wenn die Replikation aktiviert ist, gibt es einen Wal-Sender- und einen Wal-Empfänger-Prozess. In meinen Schulungen zeige ich Prozessinformationen an, indem ich „ps -ef | grep postgres“, aber wie könnte ich dasselbe auf Solaris zeigen. Also habe ich in der Solaris-Dokumentation nachgesehen und festgestellt, dass es sehr einfach und leicht ist, die Prozessnamen als Linux zu erhalten.

In der PostgreSQL-Dokumentation heißt es, /usr/ucb/ps mit den Optionen -ww zu verwenden, um Prozessnamen anstelle des regulären /usr/bin/ps zu erhalten, die meisten Informationen werden jedoch auch durch die Option /usr/ucb/ps verborgen. Sehen wir uns an, wie vollständige Postgres-Prozessnamen in Solaris abgerufen werden.

Unten sind meine Postgres 9.1-Instanzprozesse auf Solaris:

bash-3.00$ /usr/ucb/ps -awwx | grep postgres
7778 ? S 0:04 /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
7779 ? S 0:01 /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
7780 ? S 0:00 /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
7781 ? S 0:00 /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
7776 pts/5 S 0:00 /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data

Erweiterter Weg mit pargs:

bash-3.00$  pargs `/usr/ucb/ps -awwx | grep postgres | awk '{print $1}'`
7778: /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
argv[0]: postgres: writer process
argv[1]:
argv[2]:

7779: /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
argv[0]: postgres: wal writer process
argv[1]:
argv[2]:

7780: /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
argv[0]: postgres: autovacuum launcher process
argv[1]:
argv[2]:

7781: /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
argv[0]: postgres: stats collector process
argv[1]:
argv[2]:

7776: /Desktop/postgres/9.1-pgdg/bin/64/postgres -D /Desktop/postgres/9.1-pgdg/data
argv[0]: /Desktop/postgres/9.1-pgdg/bin/64/postgres
argv[1]: -D
argv[2]: /Desktop/postgres/9.1-pgdg/data

7776 ist ein Postmaster-Daemon-Prozess.

bash-3.00$ cat /Desktop/postgres/9.1-pgdg/data/postmaster.pid
7776
/Desktop/postgres/9.1-pgdg/data
1339917119
5432
/tmp
localhost
5432001 50331683

Obwohl es einfach erscheint, glaube ich, dass es wert ist, es zu wissen :).