zoukankan      html  css  js  c++  java
  • 用eclipse开发和调试postgresql-8.4.1

    按照书本《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的子进程,或者进程Aroot运行,否则进程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



    重启之后可以生效。


  • 相关阅读:
    Team Foundation Server 2010完整装机过程
    Horovod介绍
    学习笔记 【Min_25 筛】
    Educational Codeforces Round 117
    C#打造秒杀腾讯的仿QQ界面,从此独孤求败
    C# ListView控件的间隔色和自动适应宽度
    jQuery1.6.1源码分析系列
    优雅框架授权验证页面
    多个DataTable的合并成一个新表
    教你自定义绘制TreeView
  • 原文地址:https://www.cnblogs.com/pingandezhufu/p/4227745.html
Copyright © 2011-2022 走看看