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

本文涉及的产品
云原生数据库 PolarDB PostgreSQL 版,标准版 2核4GB 50GB
云原生数据库 PolarDB MySQL 版,通用型 2核4GB 50GB
简介: Part 2:PG源代码安装步骤1创建用户与环境配置步骤2系统内核参数配置步骤3PostgreSQL 安装

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用户可读写权限

以上就是Part 2 - PG源代码安装的内容,大家熟练操作起来吧,如果遇到困难,可以进群一起探讨

相关实践学习
使用PolarDB和ECS搭建门户网站
本场景主要介绍基于PolarDB和ECS实现搭建门户网站。
阿里云数据库产品家族及特性
阿里云智能数据库产品团队一直致力于不断健全产品体系,提升产品性能,打磨产品功能,从而帮助客户实现更加极致的弹性能力、具备更强的扩展能力、并利用云设施进一步降低企业成本。以云原生+分布式为核心技术抓手,打造以自研的在线事务型(OLTP)数据库Polar DB和在线分析型(OLAP)数据库Analytic DB为代表的新一代企业级云原生数据库产品体系, 结合NoSQL数据库、数据库生态工具、云原生智能化数据库管控平台,为阿里巴巴经济体以及各个行业的企业客户和开发者提供从公共云到混合云再到私有云的完整解决方案,提供基于云基础设施进行数据从处理、到存储、再到计算与分析的一体化解决方案。本节课带你了解阿里云数据库产品家族及特性。
目录
相关文章
|
4月前
|
关系型数据库 分布式数据库 数据库
PolarDB产品使用问题之如何进行PostgreSQL(简称PG)的全量和增量备份管理
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
5月前
|
自然语言处理 关系型数据库 数据库
技术经验解读:【转】PostgreSQL的FTI(TSearch)与中文全文索引的实践
技术经验解读:【转】PostgreSQL的FTI(TSearch)与中文全文索引的实践
66 0
|
6月前
|
关系型数据库 数据库 PostgreSQL
|
6月前
|
负载均衡 监控 关系型数据库
PostgreSQL从小白到高手教程 - 第48讲:PG高可用实现keepalived
PostgreSQL技术大讲堂 - 第48讲:PG高可用实现keepalived
226 1
|
6月前
|
缓存 运维 关系型数据库
PostgreSQL技术大讲堂 - 第43讲:流复制原理
PostgreSQL技术大讲堂 - 第43讲:流复制原理
287 2
|
6月前
|
SQL 关系型数据库 数据库
PostgreSQL从小白到高手教程 - 第44讲:pg流复制部署
PostgreSQL技术大讲堂 - 第44讲:pg流复制部署
183 0
|
6月前
|
安全 关系型数据库 数据库
上新|阿里云RDS PostgreSQL支持PG 16版本,AliPG提供丰富自研能力
AliPG在社区版16.0的基础上,在安全、成本、可运维性等多个方面做了提升,丰富的内核/插件特性支持,满足业务场景的需求
|
6月前
|
SQL 关系型数据库 数据库
postgresql|数据库|pg数据库的文件系统详解---最全面的解析
postgresql|数据库|pg数据库的文件系统详解---最全面的解析
650 0
|
11月前
|
关系型数据库 数据库 PostgreSQL
flink postgresql cdc实时同步(含pg安装配置等)
flink postgresql cdc实时同步(含pg安装配置等)
444 0
|
SQL Cloud Native 关系型数据库
ADBPG(AnalyticDB for PostgreSQL)是阿里云提供的一种云原生的大数据分析型数据库
ADBPG(AnalyticDB for PostgreSQL)是阿里云提供的一种云原生的大数据分析型数据库
1258 1

热门文章

最新文章