PostgreSQL(一) 编译安装运行
原创,如转发需注明出处。
多年没写博客,一直用的个人笔记软件,最近准备阅读PostgreSQL源码,故记录。(这两年PostgreSQL数据库在某些环境下是比较火的,原因想必大家都清楚。)
PostgreSQL是开放源码的数据库,支持Windows、Linux、Unix等多种操作系统。下面将会介绍PostgreSQL的编译、安装与运行。
一、Windows环境
1、环境准备
Windows10、Virtual Studio 2019社区版、PostgreSQL 14.3、MinGW(https://osdn.net/projects/mingw/downloads/68260/mingw-get-setup.exe)
MinGW安装后需要安装以下依赖包:
安装perl:https://strawberryperl.com/download/5.32.1.1/strawberry-perl-5.32.1.1-64bit.msi(注意配置环境变量)
修改文件编码,改成UTF-8 BOM编码,可以使用VS2019另存或者Notepad++修改:
postgresql-14.3\src\fe_utils\print.c 和 postgresql-14.3\src\backend\access\brin\brin_bloom.c
避免出现如下类似错误:
“D:\postgresql-14.3\pgsql.sln”(默认目标) (1) ->
“D:\postgresql-14.3\postgres.vcxproj”(默认目标) (2) ->
(ClCompile 目标) ->
D:\postgresql-14.3\src\backend\access\brin\brin_bloom.c(1,1): warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicod
e 格式以防止数据丢失 [D:\postgresql-14.3\postgres.vcxproj]
然后打开:
进入D:\postgresql-14.3\src\tools\msvc目录,执行命令perl build.pl DEBUG,此处使用DEBUG是方便后面调试跟踪:
编译完成后,可以执行:perl vcregress.pl check命令跑下测试。然后,执行perl install.pl D:\PostgreSQL\pg14 进行安装,需要保证安装目录已存在。
进入到pg安装目录:cd D:\PostgreSQL\pg14\bin,执行建库操作:initdb.exe -D ../data,建库完成后,启动pg数据库:pg_ctl.exe -D ../data -l logfile start,启动完成后进入数据库:psql.exe -d postgres,如下:
接下来,即可通过VS2019 Attach到进程调试pgsql了,可以通过select pg_backend_pid();查询pid,也可以直接搜索进程名称。
二、Linux编译安装
接下来,既可以通过gdb进行调试pgsql代码。
PostgreSQL(一) 编译安装运行的更多相关文章
- Phonegap项目创建 编译 安装 运行
一.创建 Phonegap项目 1. cd workspace 2.创建phonegap项目 cordova create 目录 识别符 显示名 例如:cordova create hello com ...
- rehat7.X下postgresql 11编译安装
文档目录结构: 一.准备 操作系统版本:rehat7.6 Postgresql:11.2 软件安装目录:/pgsql11/basedir 数据文件存放目录:/pgsql11data/ 11.2的下载地 ...
- postgresql编译安装与调试(二)
接前文postgresql编译安装与调试(一),继续说说postgresql的编译安装与调试. 上一篇已经详细说明了如何在Linux系统上编译安装postgresql,这次我们在此基础上简单讲讲如何在 ...
- Linux环境PostgreSQL源码编译安装
Linux环境PostgreSQL源码编译安装 Linux版本: Red Hat 6.4 PostgreSQL版本: postgresql-9.3.2.tar.gz 数据存放目录: /var/post ...
- Ubuntu下编译安装postgreSQL 10.5
Ubuntu下编译安装postgreSQL 10.5 ubuntu 16.04 LTS系统postgreSQL 10.5 安装包准备 1.从PostgreSQL官网下载PostgreSQL的安装包 安 ...
- 2-21-源码编译安装LAMP
编译安装LAMP所需要及其所使用的源码版本: httpd version:httpd-2.4.16 apr version:apr-1.5.2 pcre version:pcre-8.37 apr ...
- postgresql编译安装与调试(一)
因为最近组里的项目和postgresql有关,并且需要查看和调试源码,所以专门学习了一下如何安装和调试postgresql,此博文用来记录自己的安装和调试过程.安装环境是CentOS6(CentOS7 ...
- postgreSQL在Centos6下编译安装
1.准备安装源 下载地址:https://www.postgresql.org/ftp/source/ 下载并解压. 2.软件编译安装 配置.检查安装环境 ./configure --prefix=/ ...
- CentOS 7 源码编译安装PostgreSQL 9.5
下载 在postgresql的官方即可找到源码文件目录,地址如下:https://www.postgresql.org/ftp/source/,在下载列表中根据需求选择版本,进入子目录后,可以看到文件 ...
随机推荐
- 使用Javascript获取剪贴板图片的DataURL
最近写博客需要插入一些截图,想着用DataURL会方便点,于是需要一个把图片转成DataURL的工具.搜索一番后发现这个功能用HTML就能实现,通过paste事件. 先尝试在Chrome上实现,Chr ...
- sticker-footer 布局
sticker-footer 1.嵌套层级不深,可直接继承自 body width:100%: height:100%; // html <body> <div id="s ...
- java中内部类中还有内部类请给实例!
2.当内部类中还有一个内部类,下面给出了一个实例.[新手可忽略不影响继续学习](以下多出代码, 用蓝色标记)例2.2:class ShellMark_to_win { int shell_x = ...
- 大数据学习之路之ambari配置(二)
按照网上的教程配置,发现配置到hadoop虚拟机内存就开始不够了,心累
- git clone 遇到的问题
经常遇到这个问题, 所以今天决定把它记录下来 当使用git clone时,会报Please make sure you have the correct access rights and the r ...
- Blazor组件自做三 : 使用JS隔离封装ZXing扫码
Blazor组件自做三 : 使用JS隔离封装ZXing扫码 本文基础步骤参考前两篇文章 Blazor组件自做一 : 使用JS隔离封装viewerjs库 Blazor组件自做二 : 使用JS隔离制作手写 ...
- [ Skill ] map mapc mapcan mapcar mapcon maplist mapinto
https://www.cnblogs.com/yeungchie/ 几种 map 函数的差异 map map( lambda(( a b ) println( list( a b )) ) list ...
- 「实践篇」解决微前端 single-spa 项目中 Vue 和 React 路由跳转问题
前言 本文介绍的是在做微前端 single-spa 项目过程中,遇到的 Vue 子应用和 React 子应用互相跳转路由时遇到的问题. 项目情况:single-spa 项目,基座用的是 React,目 ...
- RTSP可用网络流
推荐个音视频学习的网站 https://www.zzsin.com,里面有音视频学习资料和测试视频提供下载B站搜乔红 rtsp://wowzaec2demo.streamlock.net/vod/mp ...
- Hystrix熔断初体验
<dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring ...