按照书本《PostgreSQL数据库内核分析》根据第一章讲解的linux下,编译 安装;不同的是libreadline5-dev版本没有了,就用新的版本代替;我的ubuntu 14 所以必须重新安装gcc-4.7版本,超过4.7版本编译会报错。

./configure

gmake

su

gmake install

adduserpostgres

mkdir /usr/local/pgsql/data

chownpostgres /usr/local/pgsql/data

su - postgres

/usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

/usr/local/pgsql/bin/postgres -D /usr/local/pgsql/data >logfile 2>&1 &

/usr/local/pgsql/bin/createdb test

/usr/local/pgsql/bin/psql test

这样就可以安装完成了,但是不能够用eclipse调试,因为按照书本附录A
用eclipse开发和调试postgresql
时候,Make
Target时,总是报错:比如/bin/tar:
sql-createdatabase.html:无法 open:
文件已存在。具体原因不是很清楚。

解决方法是,卸载原来在shell模式下编译安装的postgresql,方法就是直接删除postgresql安装的目录--pgsql这个文件夹(/usr/local/pgsql)。这样按照书本附录A就可以操作了。

我的配置代码:

 ./configure
--prefix=$HOME/pgsql --enable-depend --enable-cassert --enable-debug

尝试运行数据库

export
PATH=$HOME/pgsql/bin:$PATH

export
PGDATA=$HOME/pgsql/data

initdb

在P440,”Arguments”中输入”-D
~/pgsql/data”。

服务进程调试

“先输入psql进行登录,由于是本机,可以直接登录数据库。此时画面会停住”,不过我的画面没有停住,直接登录进去了。

在调试工具挂上postgre进程,回报错

Could
not attach to process.  If your uid matches the uid of the
target process, check the setting of
/proc/sys/kernel/yama/ptrace_scope, or try again as the root user.
 For more details, see /etc/sysctl.d/10-ptrace.conf

http://blog.csdn.net/fkdtzlzb/article/details/8783249有解决方法:

经过查阅有关资料发现,从ubuntu10.10开始,除非进程B是进程A的子进程,或者进程A为root运行,否则进程A不能调试进程B。这样一来增加了进程的安全。这个安全限制是默认的,但是可以通过修改配置文件来达到任意进程A可以调试进程B的目的。

1.可以通过下面的命令对这个限制进行临时修改,但是重启后限制依旧存在。

echo
0 | sudo tee /proc/sys/kernel/yama/ptrace_scope

2.可以通过修改配置文件来接触限制

修改前:

kernel.yama.ptrace_scope
= 1

修改后:

kernel.yama.ptrace_scope
= 0

重启之后可以生效。

用eclipse开发和调试postgresql-8.4.1的更多相关文章

  1. 搭建Eclipse开发和调试环境(真机)

    由于工作原因,最近开始了Android开发.之前接触过一段时间Android,还是在2.x时代. 那个时候搭建开发环境还是挺麻烦的.又是Eclipse,又是ADT的,不同的版本还要安装对应开发包.现在 ...

  2. tomcat开发远程调试端口以及利用eclipse进行远程调试

    一.tomcat开发远程调试端口 方法1 WIN系统 在catalina.bat里:  SET CATALINA_OPTS=-server -Xdebug -Xnoagent -Djava.compi ...

  3. 突破瓶颈,对比学习:Eclipse开发环境与VS开发环境的调试对比

    曾经看了不少Java和Android的相关知识,不过光看不练易失忆,所以,还是写点文字,除了加强下记忆,也证明我曾经学过~~~ 突破瓶颈,对比学习: 学习一门语言,开发环境很重,对于VS的方形线条开发 ...

  4. Eclipse开发环境debug模式调试断点从jar跳到源码

    Eclipse开发环境debug模式调试断点从jar跳到源码 说明:本案例使用jsch-0.1.54.jar和源码做test,项目分成两个,一个是jsch的源码,另一个是测试案例 一.下载JSch.的 ...

  5. Eclipse IDE配置PHP开发、调试环境

    前言 使用java语言开发的朋友想必对Eclipse开发工具已经不陌生了,那么Eclipse作为java主流的开发工具,是否能够开发PHP项目呢?答案如你所想,肯定是可以的!以下就是该IDE下如何配置 ...

  6. 【转】使用NetBeans和Eclipse开发PHP应用程序

    [51CTO独家特稿]各位用户如果单独看NetBeans和Eclipse的市场占有率,你可能会认为使用其中任何一种IDE开发PHP应用程序都没有 问题,例如: 1.NetBeans:一款开源的集成开发 ...

  7. iDempiere 使用指南 windows下eclipse开发环境配置及打包下载

    Created by 蓝色布鲁斯,QQ32876341,blog http://www.cnblogs.com/zzyan/ iDempiere官方中文wiki主页 http://wiki.idemp ...

  8. 使用Eclipse进行远程调试

    转自:http://blog.csdn.net/sunyujia/article/details/2614614 今天决定做件有意义的事,写篇图文并茂的blog,为什么要图文并茂?因为很多事可能用语言 ...

  9. Linux上搭建Hadoop2.6.3集群以及WIN7通过Eclipse开发MapReduce的demo

    近期为了分析国内航空旅游业常见安全漏洞,想到了用大数据来分析,其实数据也不大,只是生产项目没有使用Hadoop,因此这里实际使用一次. 先看一下通过hadoop分析后的结果吧,最终通过hadoop分析 ...

随机推荐

  1. centos7安装docker并设置开机启动

    版本要求:查看内核版本,需大于3.10 [root@localhost ~]# uname -r -.el7.x86_64 更新内核:如果是生产机器务必慎重更新内核,避免出现不必要的问题. sudo ...

  2. ios iphone6 Plus 的适配问题

    最近更新一个老程序,发现在iphone6 plus上用nslog打印出的screen 的frame还是320*568, 不是414*736, 查了一下,原来需要设置iphone6 plus的启动画面才 ...

  3. ios中的addChildViewController 和 android中的fragment

    刚才突然感觉这2个东西的功能特别像,记录一下,待研究!

  4. 【QT】视频播放

    在网上没找到,在书上也没有.后来突然想直接在官网的类里面找Video 居然就有了. 把http://qt-project.org/doc/qt-5/qmediaplayer.html的例子补充完整后就 ...

  5. 【linux】nohup运行守护进程

    来源:http://www.cnblogs.com/allenblogs/archive/2011/05/19/2051136.html nohup 命令 用途:不挂断地运行命令. 语法:nohup ...

  6. HDU 1087 Super Jumping! Jumping! Jumping! --- DP入门之最大递增子序列

    DP基础题 DP[i]表示以a[i]结尾所能得到的最大值 但是a[n-1]不一定是整个序列能得到的最大值 #include <bits/stdc++.h> using namespace ...

  7. 解决Idea创建maven-archetype-webapp项目无java目录的问题

    一.背景 在适用IDEA创建maven-archetype-webapp项目的时候,创建完成后发现在main文件夹下没有java源文件夹,不少小伙伴也遇到该问题,但不知道怎么解决,下面我就来分享解决步 ...

  8. MD(markdown)语法

    #标题1 ##标题2 段落->空行分隔 `加背景` [超链接](https://www.baidu.com) **加粗** _斜体_ ~~删除线~~ . 列表一 . 列表二 图片: ![alt ...

  9. 20145206邹京儒《Java程序设计》第4周学习总结

    20145206 <Java程序设计>第4周学习总结 教材学习内容总结 第六章 6.1 何谓继承 继承基本上就是避免多个类间重复定义共同行为 package cc.openhome; pu ...

  10. 转:不再以讹传讹,GET和POST的真正区别

    如果有人问你,GET和POST,有什么区别?你会如何回答? 我的经历 前几天有人问我这个问题.我说GET是用于获取数据的,POST,一般用于将数据发给服务器之用. 这个答案好像并不是他想要的.于是他继 ...