首页 > 数据库 >PostgreSQL源码编译安装指南

PostgreSQL源码编译安装指南

时间:2024-04-20 14:44:40浏览次数:20  
标签:enable PostgreSQL postgres 12.2 -- 编译 源码 postgresql

一、版本说明

centos 7.9
postgresql 12.2

二、配置系统基本环境

# 1.创建postgres用户
groupadd postgres
useradd -g postgres postgres
echo "666666" | passwd postgres --stdin

# 2.配置用户环境变量
su - postgres
cat >> ~/.bash_profile << EOF
export PGPORT=1922
export PG_HOME=/usr/local/pg12.2
export PATH=$PG_HOME/bin:$PATH
export PGDATA=/data
export LD_LIBRATY_PATH=$PG_HOME/lib
export LANG=en_US.utf8
EOF
exit

# 3. root用户创建目录
mkdir -m 755 -p /data /usr/local/pg12.2
chown -R postgres:postgres /data
chown -R postgres:postgres /usr/local/pg12.2

# 3. 配置系统参数
vi /etc/sysctl.conf
# (默认) 最大共享内存段大小
kernel.shmmax=68719476736 
#(默认)可以使用的共享内存的总量
kernel.shmall=4294967296 
#整个系统共享内存段的最大数目
kernel.shmmni=4096
#每个信号对象集的最大信号对象数
kernel.sem=50100 64128000 50100 1280
#文件句柄的最大数量。
fs.file-max=7672460
#应用程序可使用的IPv4端口范围
net.ipv4.ip_local_port_range=9000 65000
#套接字接收缓冲区大小的缺省值
net.core.rmem_default=1048576
#套接字发送缓冲区大小的缺省值
net.core.wmem_default=262144
#套接字发送缓冲区大小的最大值
net.core.wmem_max=1048576
#配置生效
sysctl-p

# 4. 安装依赖包
yum install -y gcc gcc-c++ zib-devel readline-devel perl-ExtUtils-Embed pam-devel libxml22-devel libxslt-devel openldap-devel python-devel openssl--devel cmake

三、源码安装

1. 下载源码
yum install -y wget bzip2
su - postgres
wget https://ftp.postgresql.org/pub/source/v12.2/postgresql-12.2.tar.bz2
tar xjvf postgresql*.bz2
cd postgresql-12.2
2. 编译安装
# --with-blocksize :如果数据库需要经常做插入的操作,数据量增长非常快,尽量把此参数设大一点,经常做小数据查询、更新且内存不是非常大的时候可以设小一点,默认8K即可。
# 生产环境不要加 -enable-dtrace-enable-debug
./configure --prefix=/usr/local/pg12.2 --with-pgport=1922 --enable-thread-safety --with-wal-blocksize=16 --with-blocksize=8 --enable-dtrace --enable-debug

make && make install

四、数据库集簇初始化流程

initdb -D $PGDATA -W --data-checksums

# 启动数据库集簇
pg_ctl -D $PGDATA start

标签:enable,PostgreSQL,postgres,12.2,--,编译,源码,postgresql
From: https://www.cnblogs.com/K0m0rebi/p/18147687

相关文章

  • postgresql数据定时转存mongodb方案
    案例背景很多事件记录在最初一段时间读写比较频繁,存储在postgresql比较合适,后期数据量变大,且仅作为历史记录查询,更适合存储在mongodb中,可能需要定期将postgresql中的数据转存到mongodb。案例分析postgresql数据定时转存mongodb,可以采用jdbc方式将postgresql读入内存,对每条......
  • 短视频源码,高效异常处理让您的代码更完美
    在编写Python代码的过程中,我们常常会遇到各种错误和异常。学会有效地处理这些异常,可以让短视频源码更加健壮、稳定。本文将带您深入了解Python异常处理的艺术,让您的短视频源码更加完美!一.异常简介异常是在短视频源码执行过程中发生的事件,通常表示代码中存在错误或异常情况......
  • LightDB兼容扫描 - 事前SQL兼容迁移评估工具24.1支持MySQL --> TDSQL-PostgreSQL兼容
    兼容扫描工具下载地址:事前SQL兼容迁移评估工具使用说明:LightDB-事前SQL兼容迁移评估工具使用手册本次24.1版本新增了对MySQL迁移到TDSQL-pg的兼容性扫描。工具的具体使用方法请阅读使用说明文档,针对本次更新,涉及配置项targetDataBase改为MySQL-to-TDSQL-PostgreSQL。以下是......
  • 企业微信hook 最新版 、企微输入验证码,二次扫码方案、发名片收消息功能,企业微信hook源
    ​产品说明在PC端企业微信客户端上发送自定义名片、封装企业微信功能为DLL,可与其他语言调用实现功能。DLL可以监听企业微信的所有消息接收和群消息,根据需求实现机器人、群发、自动消息推送、聊天机器人、监管数据收集等功能企业微信hook,企业微信功能api,自定义开发功能清......
  • java 编译问题
    背景我在maven中配置了私有仓库地址后,发现一些包还是会从外网拉,耗时很长。mirror配置为:<mirrors><id>mynexus</id><name>mynexusname</name><mirrorOf>central</mirrorOf><url>http://mynexus.aaa.com/nexus/repositry/test/</url><......
  • Ubuntu22.04安装PostgreSQL15
    Ubuntu22.04安装PostgreSQL15启用PostgreSQL包存储库sudosh-c'echo"debhttp://apt.postgresql.org/pub/repos/apt$(lsb_release-cs)-pgdgmain">/etc/apt/sources.list.d/pgdg.list'wget-qO-https://www.postgresql.org/media/keys/ACCC4CF8......
  • 马扎克,海德汉,哈斯,兄弟,发那科,三菱,西门子,华中数控,knd,广数,宝元,发格,无授权源码采集。机床
    机床联网cnc采集设备联网车间数字化生产追踪 无需授权可跨平台运行任何平台Linuxwindows等 可+:cnccaiji机床数据采集MDC,DNC,可定制开发,有采集驱动支持多品牌cnc系统多设备采集支持转发mqtt推送HTTP马扎克机床数据采集海德汉机床数据采集哈斯机床数据采集......
  • LSI 9560-8i RAID卡驱动编译
    下载驱动包:https://www.broadcom.cn/products/storage/raid-controllers/megaraid-9560-8i第一步:将压缩包上传到系统内,进行解压[FriApr1908:44:25root@localhost~]#unzip07.728.04.00-1_Linux_Driver.zip[FriApr1908:44:30root@localhost~]#cdmrlinuxdrv_......
  • Spring 源码阅读(一)环境搭建
    注意事项:使用2024-03-14发布的Spring5.3.33版本IDE工具使用了IntellijIDEA,同时为了简化不必要的内容没单独配置Gradle环境JDK版本采用EclipseTemurin1.8/11均可下载源码下载SpringFramework源码,本次选择5.3.33版本,发布日期2024-03-14,通过IntellijIDE......
  • LibreCAD源码编译过程记录
    获取源码远程仓库https://github.com/LibreCAD/LibreCAD.git将源码从GitHub克隆到本地将仓库源码检出到提交节点:4b91d9b0f919be41f7e7568c87c5c67dfac189aa,这是LibreCADv2.2.0稳定版的提交节点,如果用更新的普通节点有可能编译出错(已踩坑)部署编译环境Qt5.9.7注意......