天天看點

PostgreSQL的 initdb 源代碼分析之一

開始第一段:

PostgreSQL的 initdb 源代碼分析之一
PostgreSQL的 initdb 源代碼分析之一

上述程式部分運作後,get_progname的傳回值是:

progname ----------initdb

而我傳遞給 get_progname的參數 argv[0] 是 : /home/pgsql/project/bin/initdb 

再來看 set_pglocale_pgservice函數:

此時傳遞的第一個參數是:  /home/pgsql/project/bin/initdb  傳遞的第二個參數是:initdb-9.1 

由于  set_pglocale_pgservice 也會被postgres程序所調用,是以需要第二個參數來明确調用者。

PostgreSQL的 initdb 源代碼分析之一
PostgreSQL的 initdb 源代碼分析之一

實際上,運作時,得到的 

my_exec_path :          /home/pgsql/project/bin/initdb

env_path :                  PGSYSCONFDIR=/home/pgsql/project/etc

本文轉自健哥的資料花園部落格園部落格,原文連結:http://www.cnblogs.com/gaojian/p/3173776.html,如需轉載請自行聯系原作者

繼續閱讀