PostgreSQL学习笔记YY(2)--Ubuntu下使用DDD调试查看源码(原创)

说明:前一段时间一直在FreeBSD的操作系统环境下进行实验,但是由于多次安装桌面系统失败,所以无法及时更新日志。昨天换了Ubuntu系统,在Unix

环境下摸索了3天之后,终于在Ubuntu上编译,安装PostgreSQL数据库,并且成功利用图形化调试程序DDD(Data Display Debugger)来以调试的方式运行程序,这对阅读代码十分有帮助。

 

过程在孙振兴同学转载的帖子(http://www.cnblogs.com/tjdx415/archive/2010/01/18/1650837.html)里,前面两步都可以顺利通过,但是运行第3步时,输入命令ddd /usr/local/pgsql/bin/postgres 会出现找不到ddd命令的错误,其原因是因为Ubuntu不会默认安装这个软件,可以通过一下两种方式来安装:

1。命令行模式输入:sudo apt-get install ddd。

2。利用Ubuntu自带的Synaptic Package Manager来搜索安装。

  在安装数据库和安装好DDD之后,输入ddd /usr/local/pgsql/bin/postgres语句,会发现是用当前用户窗口来使用DDD,而不是Postgres用户,这样的后果是在DDD中没有权限来使用数据库。因为PostgreSQL是一定要用Postgres用户来管理的。遇到这种情况想到过两种解决方案:

1。切换到Postgres用户,来启用DDD

2。将访问权限赋予当前用户

   先说第一种解决方案需要注意的地方:如果在当前用户下来使用su - postgres 然后用postgres来启用DDD 会出现 can’t display的错误,原因是显示器被当前用户锁定,无法再提供给Postgres使用,所以想切换到Postgres用户登陆,再执行,此时又会出现无法登陆桌面的情况,原因是在添加用户Postgres是使用了命令行的usradd的方式,使用这种方式的缺点是无法完整配置桌面启动程序和用户默认的文件夹,这样Postgres用户就无法使用桌面模式,更无法使用DDD的图形化界面。所以添加Postgres用户要特别注意,应该使用Ubuntu

桌面提供的Usrs and Groups来添加Postgres用户,这样就可以切换到Postgres用户的桌面模式,然后就可以使用DDD,ddd /usr/local/pgsql/bin/postgres 来调试程序!第二种解决方案,应该要修改postgresql数据库中的配置文件,尚未尝试~~~

结论以上就是如何使用Ubuntu和DDD来调试Postgresql程序,大家如果有什么安装调试的问题,都请留言,我一定会帮忙解决。另外用insight这个软件也可以来调试程序。

 

PS:如果是要阅读源码的话以下这个网站: http://doxygen.postgresql.org/是很好的地方,他给出了各个函数之间调用依赖等关系,还有许多源码的注释,程序的框架。另外http://neilconway.org/talks/hacking/这个网站,是07年postgresql大会上neilconway说明了为什么要阅读postgresql源码,以及相关开发工具和一些开发者规定等。

 

姓名:杨阳,主题:调试程序

 

转载于:https://www.cnblogs.com/tjdx415/archive/2010/01/21/1653562.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值