当前位置: hlflowers->优技培训 > 从小白到专家 PG技术大讲堂 - Part 2:PG源代码安装

从小白到专家 PG技术大讲堂 - Part 2:PG源代码安装

2022-12-30作者:hlflowers来源:www.hlflowers.com

PostgreSQL从小白到专家,是从入门逐渐能力提升的一个系列教程,内容包括对PG基础的认知、包括安装使用、包括角色权限、包括维护管理、、等内容,希望对热爱PG、学习PG的同学们有帮助,欢迎持续关注CUUG PG技术大讲堂。

Part 2:PG源代码安装

步骤1

创建用户与环境配置

步骤2

系统内核参数配置

步骤3

PostgreSQL 安装


1、创建用户与环境配置

创建用户:

# groupadd postgres# useradd -g postgres postgres

环境变量配置(.bash_profile)

export PGPORT=1922

export PG_HOME=/usr/local/pg12.2

export PATH=$PG_HOME/bin:$PATH

export PGDATA=$PG_HOME/data

export LD_LIBRARY_PATH=$PG_HOME/lib

export LANG=en_US.utf8


2、内核参数配置

vi /etc/sysctl.conf

kernel.shmmax = 68719476736(默认) #最大共享内存段大小

kernel.shmall = 4294967296(默认) #可以使用的共享内存的总量

kernel.shmmni = 4096 #整个系统共享内存段的最大数目

kernel.sem = 50100 64128000 50100 1280 #每个信号对象集的最大信号对象数

fs.file-max = 7672460 #文件句柄的最大数量。

net.ipv4.ip_local_port_range = 9000 65000 #应用程序可使用的IPv4端口范围

net.core.rmem_default = 1048576 #套接字接收缓冲区大小的缺省值

net.core.wmem_default = 262144 #套接字发送缓冲区大小的缺省值

net.core.wmem_max = 1048576 #套接字发送缓冲区大小的最大值

# sysctl -p #配置生效


3、安装方式-linux

二进制安装包安装

https://ftp.postgresql.org/pub/source

通过yum安装

yum search postgresql && yum install postgresql

通过源码编译安装

https://www.postgresql.org/ftp/source/

重要的依赖:readline,flex,bison


3.1、依赖包检查

编译前依赖包,以RedHat/CentOS为例:

最小依赖:gcc、gcc-c++、zlib-devel、readline-devel

其他依赖:perl-ExtUtils-Embed、pam-devel、libxml2-devel、libxslt-devel、openldap-devel、python-devel、openssl-devel、cmake


3.2、源代码安装

源代码安装步骤

--使用postgres用户安装

$ cd /soft/postgresql-12.2

$ ./configure --prefix=/usr/local/pg12.2

$ make

$ make install

Configure常用配置选项:

prefix:指定安装路径

with-openssl:对openssl进行扩展支持

with-python:对python进行扩展支持

with-perl:对perl进行扩展支持

with-libxml:对xml进行扩展支持


3.3、配置可选项

配置示例:

./configure --prefix=/usr/local/pg12.2 --with-pgport=1922 --with-openssl --with-perl --with-tcl --with-python --with-pam --without-ldap --with-libxml --with-libxslt --enable-thread-safety --with-wal-blocksize=16 --with-blocksize=8 --enable-dtrace --enable-debug

注意:

--with-blocksize

如果数据库需要经常做插入的操作,数据量增长非常快,尽量把此参数设大一点;

经常做小数据查询、更新且内存不是非常大的时候可以设小一点,默认8K即可。

生产环境不要加--enable-dtrace --enable-debug


3.4、编译可选项

编译与安装:

gmakeworld包括第三方插件全部编译

gmakecheck-world需要使用普通用户执行,可选,耗时较长

gmakeinstall包括第三方插件全部安装

#gmakeworld安装包含了文档,所有的contirb

#安装前先创建好/usr/local/pg12.2目录,同时授权postgres用户可读写权限


相关阅读:

从小白到专家 PG技术大讲堂 - Part 1:PG简介

以上就是Part 2 - PG源代码安装的内容,大家熟练操作起来吧,如果遇到困难,可以进群一起探讨,QQ交流群:752027153微信交流群:联系客服拉你进微信PG交流群钉钉交流群:35822460

  • PostgreSQL技术大讲堂 - 第28讲:索引内部结构
  • 7月20日 恭喜CUUG 韩同学获得Oracle OCP 19c证书
  • 8月,CUUG常同学PostgreSQL能力评价认证证书!
  • 8月,CUUG代同学PostgreSQL能力评价认证证书!
  • 8月,CUUG刘同学PostgreSQL能力评价认证证书!
  • 8月,CUUG马同学PostgreSQL能力评价认证证书!
  • 8月,CUUG王同学PostgreSQL能力评价认证证书!
  • 8月,CUUG于同学PostgreSQL能力评价认证证书!
  • 8月,CUUG臧同学PostgreSQL能力评价认证证书!
  • 8月,CUUG赵同学PostgreSQL能力评价认证证书!
  • PostgreSQL 14中文手册发布
  • 恭喜CUUG 陈同学获得Oracle OCP 19c证书
  • 恭喜CUUG 赵同学获得Oracle OCP 19c证书
  • PG认证--PostgreSQL管理员能力提升培训班
  • PostgreSQL手册-》sql语法-》值表达式-》聚合表达式
  • PostgreSQL手册-》sql语法-》值表达式-》函数调用
  • PostgreSQL手册-》sql语法-》值表达式-》下标-》域选择-》操作符调用
  • PolarDB for PostgreSQL简介
  • PolarDB For PostgreSQL跨机并行查询功能
  • PolarDB PostgreSQL版产品架构(图)
  • PolarDB-PG 架构之存储计算分离架构
  • PolarDB MySQL版和PostgreSQL版相同产品架构
  • PolarDB分布式版产品架构
  • PolarDB数据库优势何在
  • 什么是PolarDB数据库
  • PolarDB数据库有几种引擎
  • OceanBase 体系结构及系统架构
  • OceanBase与Oracle对比:SQL引擎 比较
  • OceanBase与Oracle对比:OB暂不支持的功能
  • OceanBase与Oracle对比:数据字典视图和性能视图
  • OceanBase与Oracle对比:备份恢复
  • OceanBase与Oracle对比:安全特性 比较
  • OceanBase与Oracle对比:数据库对象管理
  • OceanBase与Oracle对比:字符集和字符序【表格】
  • OceanBase与Oracle对比:过程性语言 比较
  • OceanBase与Oracle对比:SQL语法 比较
  • OceanBase与Oracle对比:内建函数【表格比较】
  • OceanBase与Oracle对比:SQL 数据类型【表格比较】
  • OceanBase企业版和社区版的功能差异
  • PolarDB for PostgreSQL 云原生数据库的优势
  • OceanBase 数据库简介概述
  • 8月份证书来啦!工信人才PostgreSQL能力提升证书!
  • PostgreSQL技术大讲堂 - 第26讲:PG-FDW部署
  • 工业和信息化部人才交流中心与国家发展和改革委员会价格监测中心签署战略合作协议
  • 国内唯一 · PostgreSQL认证红头文件(8月) - 工信人才 [2023] 185号
  • PostgreSQL和MySQL对比:数据复制
  • 国内唯一PostgreSQL认证培训红头文件【2023年】
  • PostgreSQL技术大讲堂 - 第27讲:Oracle-FDW部署
  • PG中级认证 红头文件
  • PostgreSQL认证培训红头文件【2023-08】