PG守护进程(Postmaster)——主进程文件postmaster.pid

网友投稿 258 2022-12-02

PG守护进程(Postmaster)——主进程文件postmaster.pid

PostgresSQL的主进程是Postmaster,当我们启动PostgresSQL后,会在PostgreSQL中的数据文件夹下生产一个postmaster.pid的文件,那么这个文件记录了什么信息呢,我通过查阅源代码以及相关文档,对此文件进行内容进行说明:

postmaster内容

使用cat -n 命令可以查看postmaster.pid文件内容:

根据每一行进行解释,并给出对应的源代码说明

/* The socket number we are listening for connections on */int PostPortNumber;

/tmp: 代表是unix socket的监听目录,在postgresql.conf中对应 unix_socket_directory = ‘/tmp’ 来自源代码说明:

/* The directory names for Unix socket(s) */char *Unix_socket_directories;

*** **: 代表数据库监听地址,对应postgresql.conf的listen_addresses = '* ’ 来自源代码说明:

/* The TCP listen address(es) */char *ListenAddresses;

typedef enum{ PM_INIT, /* postmaster starting */ PM_STARTUP, /* waiting for startup subprocess */ PM_RECOVERY, /* in archive recovery mode */ PM_HOT_STANDBY, /* in hot standby mode */ PM_RUN, /* normal "database is alive" state */ PM_WAIT_BACKUP, /* waiting for online backup mode to end */ PM_WAIT_READONLY, /* waiting for read only backends to exit */ PM_WAIT_BACKENDS, /* waiting for live backends to exit */ PM_SHUTDOWN, /* waiting for checkpointer to do shutdown * ckpt */ PM_SHUTDOWN_2, /* waiting for archiver and walsenders to * finish */ PM_WAIT_DEAD_END, /* waiting for dead_end children to exit */ PM_NO_CHILDREN /* all important children have exited */} PMState;

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Greenplum数据库故障分析——利用GDB调试多线程core文件
下一篇:Java泛型模拟scala实现自定义ArrayList方式
相关文章

 发表评论

暂时没有评论,来抢沙发吧~