首页 > 学院 > 开发设计 > 正文

Centos 6.5 Postgresql搭建eclipse开发环境

2019-11-08 20:40:25
字体:
来源:转载
供稿:网友

Centos 6.5 Postgresql搭建eclipse开发环境

Alex Wu   2015年11月28日   Centos6.5Postgresql搭建eclipse开发环境无评论

环境Centos 6.5 GNOME 2.28.2

1.安装git

#mkdir /home/src#cd src#yum install git2015-11-23_22-08-452015-11-23_22-08-13

2.eclipse搭建

#yum install eclipse2015-11-26_20-48-17#yum install eclipse-cdt2015-11-26_20-50-09#yum install readline-devel2015-11-26_20-54-28

3.安装编译postgresql

#su – postgres//使用git下载postgresql源代码#git clone git://git.postgresql.org/git/postgresql.git2015-11-24_7-26-40//切换到一个发布版本#cd postgresql#git checkout REL9_3_42015-11-26_20-35-46#cd ..//重新copy一个目录,确保服务器上拉下来的代码不受影响#cp -rf postgresql/ pgsql2015-11-26_20-38-39#yum install bison#yum install flex#cd pgsql#./configure –enable-depend –enable-cassert –enable-debug系统默认安装至/usr/local/pgsql,我们可以使用下面命令安装至其他目录#./configure –PRefix=/usr/local/pgsqldev –enable-depend –enable-cassert –enable-debug2015-11-26_21-26-41#make#make all2015-11-26_21-53-19

4.使用eclipse调试

4.1 import源码

//我们postgres用户名打开eclipse,选择workspace2015-11-28_13-27-11选择”C/C++ » Existing Code as Makefile Project”2015-11-28_13-28-43点击Next2015-11-28_13-29-33选择linux GCC2015-11-28_13-29-59这样我们就建立了一个postgres源码的项目。

4.2调试Initdb

//建立data目录#mkdir /home/data#chown postgres:postgres -R /home/data选择initdb右键,debug as,在C/C++ application下选择新建,Arguments输入-D /home/data2015-11-28_13-51-42点击Apply按钮,然后点击Debug按钮。在这里我们可以设置断点,启动调试。2015-11-28_13-54-59

4.3调试postgres

首选启动postgres#/usr/local/pgsql/bin/pg_ctl -D /home/data -l /home/data/logfile start#/usr/local/pgsql/bin/psql2015-11-28_15-10-28在eclipse选择postgre debug as,在Attach下新建debug2015-11-28_15-07-06我们看到进程5787,5788就是刚才我们运行的psql,双击5788进程,设置断点。2015-11-28_15-09-29命令行输入SQL语句select current_time;2015-11-28_15-33-49断点处我们看到刚才输入的SQL语句2015-11-28_15-33-22

4.4 postgres测试框架

测试框架包含在postgres源码目录中src/test2015-11-28_16-17-03主要用例都放在regress目录下,有data、expected、input、output、sql等目录和parallel_schedule、serial_schedule、standby_schedule等设置测试用例并行、串行执行的文件,如下图:2015-11-28_16-17-30postgres的regress test的流程为:逐个执行sql/目录下的sql脚本,将执行的结果重定向到results/目录下。而expected/目录下则是预期的执行结果。将results目录下的文件逐个与expected中文件进行diff。若文件不一致,则判定为对应的sql脚本执行结果为失败,反之为成功。


上一篇:spring 使用redis集群配置

下一篇:SQL where

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表