大佬教程收集整理的这篇文章主要介绍了PostgreSQL源码目录结构及其相关模块功能分析,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
目录 | 功能 |
---|---|
BACkend@H_419_67@ | 服务器端程序源码.c文件,对应于后台@H_419_67@ |
bin@H_419_67@ | 可执行文件,如initdb命令、pg_ctl命令,对应于前台@H_419_67@ |
common@H_419_67@ | @H_419_67@ |
include@H_419_67@ | 服务器端程序(BACkend)源码中的.h文件@H_419_67@ |
interfaces@H_419_67@ | libpq,POSTGResql的C语言接口,对应于前台@H_419_67@ |
源代码编译文件makefile@H_419_67@ | |
pl@H_419_67@ | 提供除C语言之外的支持,其中包括plpgsql、plpythoon、plperl@H_419_67@ |
port@H_419_67@ | 平台移植的相关代码@H_419_67@ |
template@H_419_67@ | 平台相关的设置值@H_419_67@ |
test@H_419_67@ | 测试用例,当我们队源代码进行修改之后,需要用该文件夹中的测试用例进行测试,其中包含各种测试脚本@H_419_67@ |
timezone@H_419_67@ | 时区信息相关代码@H_419_67@ |
tools@H_419_67@ | 工具包,包括可以使用vim连接psql@H_419_67@ |
tutorial@H_419_67@ | 编译该文件夹中的Makefile文件,将生成.sql文件,该文件用于练习简单的使用PostgreSQL数据库,简单的说就是教程,其中的脚本帮助你学习POSTGResql@H_419_67@ |
目录 | 功能 |
---|---|
access@H_419_67@ | 提供各种存取方法,所有的索引文件都在其中,包括gist、gin、hash、btree等,支持数据存取的需求@H_419_67@ |
bootstrap@H_419_67@ | 用来支持bootstrap运行模式,该模式主要用来创建初始的模板数据库@H_419_67@ |
catalog@H_419_67@ | 系统表操作,包含用于操作系统表的专用函数,也就是说该目录包含系统表以及操作系统表的函数@H_419_67@ |
commands@H_419_67@ | 执行非计划查询的sql命令,如创建表命令等@H_419_67@ |
executor@H_419_67@ | 查询执行器@H_419_67@ |
foreign@H_419_67@ | FDW(foreign data wrapper)处理@H_419_67@ |
lib@H_419_67@ | 共同函数@H_419_67@ |
libpq@H_419_67@ | C/S交互的库文件@H_419_67@ |
POSTGResql的主函数@H_419_67@ | |
nodes@H_419_67@ | 定义系统内部所用到的节点、链表等结构,以及处理这些机构的函数@H_419_67@ |
optimizer@H_419_67@ | 优化器@H_419_67@ |
parser@H_419_67@ | 查询解析器@H_419_67@ |
po@H_419_67@ | 暂时不知道其作用@H_419_67@ |
port@H_419_67@ | 平台兼容性处理相关函数@H_419_67@ |
postmaster@H_419_67@ | postmaster的主函数@H_419_67@ |
regex@H_419_67@ | 正则表达式库及其相关函数,用于支持正则表达式处理@H_419_67@ |
Replication@H_419_67@ | 流复制@H_419_67@ |
rewrite@H_419_67@ | 查询重写,根据规则系统对查询进行重写@H_419_67@ |
snowball@H_419_67@ | 全文检索相关(语干处理)@H_419_67@ |
storage@H_419_67@ | 管理各种类型的存储系统(如磁盘、闪存等),存储相关,包括缓冲管理、文件管理、空闲空间管理、page管理、大对象管理等@H_419_67@ |
tcop@H_419_67@ | POSTGRes(数据库引擎的进程)主要部分,它调用parser、optimizer、executor、commands中的函数@H_419_67@ |
tsearch@H_419_67@ | 全文检索@H_419_67@ |
utils@H_419_67@ | 各种支持函数,如排序、错误处理等函数@H_419_67@ |
./configure --enable-deBUG #仅仅在飞生产环境下才能这么做,否则会导致性能的降低
@H_874_8@
CFLAGS = -O2 -Wall -Wmissing-prototypes -Wpointer-arith \
-Wdeclaration-after-statement -Wendif-labels -Wformat-security \
-fno-Strict-aliasing -fwrapv
@H_674_47@将上述部分’-02’选项删除,然后加上’-g’参数,-02是编译器的优化选项,如果打开了,代码的执行顺序会改变,追踪起来比较困难,所以要修改。当然这样的话,编译后的可执行文件会比较大,而且会比较慢,生产环境不太适合。将-02改为-g,如下:
CFLAGS = -g -Wall -Wmissing-prototypes -Wpointer-arith \
-Wdeclaration-after-statement -Wendif-labels -Wformat-security \
-fno-Strict-aliasing -fwrapv
以上是大佬教程为你收集整理的PostgreSQL源码目录结构及其相关模块功能分析全部内容,希望文章能够帮你解决PostgreSQL源码目录结构及其相关模块功能分析所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。