如何在Linux下调试PostgreSQL
由于工作关系,需要调试postgreSQL源码,恰好同事写了这样一个文档,贴出来共享。在Linux下面调试Postgres,需要进行如下几个步骤
由于工作关系,需要调试postgreSQL源码,,恰好同事写了这样一个文档,贴出来共享。
在Linux下面调试Postgres,需要进行如下几个步骤:
1. 安装Linux操作系统
注意把gdb、Emacs或DDD这些开发工具都安装上。如果是在虚拟机上安装,依然需要设置Linux系统的网络环境;另外需要设置文件共享,方便windows下面的postgreSQL源码能在Linux下面访问到。
2. 安装PostgreSQL
useradd postgre
(自动建立 postgre 组;设计人员为了安全考虑,PostgreSQL 不能以root 用户运行,所以必须建立对应的用户和组。)
解压到 /usr/local/src
tar xvfz postgresql-8.4.tar.gz
cd postgresql-8.4
./configure --prefix=/usr/local/pgsql --enable-debug --enable-assert --without-readline --without-zlib
make
make install
chown -R postgre.postgre /usr/local/pgsql
3. 设置Postgres环境变量(非必须)
vi ~postgre/.bash_profile
添加:
PGLIB=/usr/local/pgsql/lib
PGDATA=$HOME/data
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
export PGLIB PGDATA PATH MANPATH
4. 建立数据库
以 postgres 用户登录:
su postgre
建立数据库目录:
mkdir data
启动数据库引擎:
initdb –D “数据库目录”
之后可以根据提示,通过psql进入数据库
5. 构造PostgreSQL调试环境
先 psql template1进去,然后
select pg_backend_pid();
获得id,就是gdb后面用到的数字
gdb /usr/local/pgsql/bin/postgres 997(pid的数字)
如果只使用gdb,全部是命令行界面;而Emac、DDD分别是彩色、黑白用户交互式图形界面。
6. 使用gdb进行调试
下一篇: PHP的排序函数的总结
推荐阅读
-
如何在linux centos 环境下运行.exe文件
-
详解Win10 Bash/WSL调试Linux环境下的.NET Core应用程序
-
如何在SQL Server 2008下轻松调试T-SQL语句和存储过程
-
如何在Linux下修改Mysql的用户(root)密码
-
如何在Linux 命令行下浏览天气预报
-
Linux下如何使用gdb调试core文件
-
如何在linux的vi编辑器下删除前N行
-
如何在无数据线USB连接, 只有wifi情况下使用android studio build app到手机进行调试?
-
【PostgreSQL学习之旅】第一篇:Linux和Windows下安装PostgreSQL9.4
-
linux 下用netbeans调试sqlite3