调试postgresql9.5.2最新源码

最近在考量数据库的选型,考虑后期把数据切换到postgresql ,postgresql源码用c实现,代码很精炼完美,值得学习下

首先去pgsql官网下载最新的源码 ,然后还需要perl,bison

调试postgresql9.5.2最新源码

先安装ActiverPerl-5.22.1.2201x64.msi 默认装在c盘,一路点next安装。

我是将Perl是安装到了C盘,则在系统环境变量中添加Perl的C盘路径位置。

打开postgresql9.5.2 文件夹,找到MKVcbuild.pm文件(如下图所示),用文本编辑器打开,修改其中my $vsVersion = DetermineVisualStudioVersion()该行,变为my $vsVersion = “12.0.0”,VS2013 对应的version版本是12.0

调试postgresql9.5.2最新源码

反键编辑

调试postgresql9.5.2最新源码

打开cmd或用vs2013自带的x64 cmd命令工具打开, 切换到源码msvc目录

MSVC目录下,输入perl build.pl DEBUG  然后开始编译代码,这里需要5-6分钟,速度根据跟人的电脑配置来定

生成源码完成后最后如图所示

调试postgresql9.5.2最新源码

接着在命令编辑器中继续输入perl install.pl path,例如:

perl install.pl D:\pgbin

生成后的效果如图

调试postgresql9.5.2最新源码

这里很关键 如果没有下面的操作 你就需要去源码里面去掉管理员权限的判断,如果用超级管理员运行 会报错

我们用cmd命令添加一个 postgres用户

net user postgres postgres /add

打开运行输入 runas /user:postgres cmd.exe

此时会以postgres权限打开cmd [一定要按此操作]

我们先直接打开cmd 初始化数据库DB,注意下图是没有用postgres用户打开的cmd 也能初始化,但是接下来的连接等就会有问题了,不稳定

调试postgresql9.5.2最新源码

用postgres用户打开cmd

postgres.exe -D DB 这里就启动了一个server实例,开始监听所有的链接

调试postgresql9.5.2最新源码

这里就开始监听了

调试postgresql9.5.2最新源码

输入postgres.exe -D DB   (注意-D中的D一定要大写),这里不一定是DB,你也可以自己定

以上几次测试

下面我 输入 postgres.exe -D pgsql 

我这里用的数据库pgsql

调试postgresql9.5.2最新源码

到这里pgsql服务器算是启动好了。

然后我们用navcat 连接一下试试,建一个数据库

调试postgresql9.5.2最新源码

调试postgresql9.5.2最新源码

打开源码项目,这里加载会要几分钟时间

调试postgresql9.5.2最新源码

backend\executor\execMain.c ,依次打上断点

调试postgresql9.5.2最新源码

最后我们这里打开 psql源码, 打开pquery.c,里面设置好断点调试postgresql9.5.2最新源码

调试postgresql9.5.2最新源码

启动调试,进断点了。

调试postgresql9.5.2最新源码

今天还有点晚了,接下来有时间再分享源码结构的学习

关于源码的说明有专门的网站 http://doxygen.postgresql.org/

接下来就可以开始postgresql的源码学习之旅了,你就可以通过navcat建表,删表,插入数据,update,多种操作,尽情的揉虐 pgsql源码了。希望此文能给大家学习pgsql一些帮助,这款数据库真的很优秀,如果你去用了会有一种相见恨晚的感觉

上一篇:jupyter运行py文件(py文件和ipynb文件互转)


下一篇:(转) 史上最简单的 SpringCloud 教程 | 第一篇: 服务的注册与发现(Eureka)