在 Mac 上编译安装并运行 PostgreSQL
记录在 MacOS 上编译、安装、运行、调试 PostgreSQL 的步骤。
下载代码
git clone https://github.com/postgres/postgres.git
cd postgres
编译安装
在 mac 上通常是要定位一些代码问题,因此把 debug 打开,默认将程序安装到 /usr/local/pgsql,可通过 ./configure --prefix=<path>
修改安装路径。
CFLAGS="-Og -fno-inline-functions -fno-omit-frame-pointer" ./configure --enable-debug --without-icu --enable-tap-tests
make -j8
sudo make install
初始化数据库并运行
- 创建一个当前用户拥有的目录,并在该目录初始化数据库
mkdir -p ~/pgdata /usr/local/pgsql/bin/initdb -D ~/pgdata
- 启动数据库
/usr/local/pgsql/bin/pg_ctl -D ~/pgdata -l ~/pgdata/logfile start
- 停止数据库
/usr/local/pgsql/bin/pg_ctl -D ~/pgdata stop
调试
- 调试 postmaster
lldb -p `head -n1 ~/pgdata/postmaster.pid`
- 调试 postgres
lldb -p <postgres_pid>
- 忽略 SIGUSR1 信号的处理:
(lldb) pro hand -p true -s false SIGUSR1
building postgres with meson
社区在 2022/9/22 合入了 meson based build system
用于替代 Autoconf,详见 ref [2]。
mkdir -p build && cd build
meson setup -Ddebug=true . ..
meson compile
sudo meson install
Copyright © 2016-2024 by 赵军旺