PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Noms de processus PostgreSQL sur Solaris

Les processus PostgreSQL sont très peu nombreux et dénombrables, comme le processus d'écriture, le processus d'écriture wal, le collecteur de statistiques, le processus autovacuum, le processus syslogger, le processus d'archivage et le démon postmaster. Si la réplication est activée, il y aura un processus wal sender &wal receiver. Dans mes formations, j'utilise pour afficher les informations de processus en exécutant "ps -ef | grep postgres », mais comment pourrais-je montrer la même chose sur Solaris. J'ai donc vérifié auprès de la documentation Solaris et j'ai trouvé qu'il était très simple et facile d'obtenir les noms de processus sous linux.

Dans la documentation PostgreSQL, il est dit d'utiliser /usr/ucb/ps avec les options -ww pour obtenir les noms de processus au lieu de /usr/bin/ps, mais la plupart des informations sont également masquées par l'option /usr/ucb/ps. Voyons comment récupérer les noms complets des processus postgres dans solaris.

Voici mes processus d'instance postgres 9.1 sur 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

Manière plus étendue avec les 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 est le processus du démon postmaster.

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

Bien que cela semble simple, je pense que cela vaut la peine de le savoir :).