小白入门必知必会-PostgreSQL-15.2源码编译安装

liftword1个月前 (05-11)技术文章13

一 PostgreSQL编译安装

1.1 下载源码包

在PostgreSQL官方主页
https://www.postgresql.org/ftp/source/下载区选择所需格式的源码包下载。

cd /web

wget https://ftp.postgresql.org/pub/source/v15.2/postgresql-15.2.tar.gz --no-check-certificate

下载之后解压

tar xf postgresql-15.2.tar.gz

1.2 运行configure程序配置编译选项

安装必要的依赖包

yum groupinstall "Development tools" -y

yum install -y bison flex readline-devel zlib-devel

编译

./configure --prefix=/web/pgsql15/ --with-pgport=5432

1.3 编译选项解释

在源代码目录中运行configure --help命令查看支持的配置编译选项:

cd postgresql-15.2

./configure --help|less

PostgreSQL支持的编译选项众多,常用的编译选项有:

  • --prefix=PREFIX:指定安装目录,默认的安装目录为”/usr/local/pgsql“;
  • --includedir=DIR:指定C和C++的头文件目录,默认的安装目录为”PREFIX/include“;
  • --with-pgport=PORTNUM:指定初始化数据目录时的默认端口,这个值可以在安装之后进行修改(需要重启数据库),修改它只在自行制作RPM包时有用,其它时候意义并不大;
  • --with-blocksize=BLOCKSIZE:指定数据文件的块大小,默认的是8kB,如果在OLAP场景下可以适当增加这个值到32kB,以提高OLAP的性能,但在OLTP场景下建议使用8kB默认值;
  • --with-segsize=SEGSIZE:指定单个文件的大小,默认是1GB;
  • --with-wal-blocksize=BLOCKSIZE:指定WAL文件的块大小,默认是8kB;
  • --with-wal-segsize=SEGSIZE:指定单个WAL文件的大小,默认是16MB。

由于”--with-xxx-size“这4个参数都只能在编译的时候指定,所以在修改它们之前,请提前做好规划和严格的测试,否则后期再做调整,只能将数据导出重新导入,如果数据量很大会令人抓狂。

1.4 编译安装

在Linux中,PostgreSQL的编译和安装使用GNU make程序,编译使用gmake命令,安装使用gmake install命令。

执行gmak或gmake world程序进行编译,如下所示:

gmake

gamke install

查看安装的PostgreSQL版本的命令如下所示:

/web/pgsql15/bin/postgres --version

1.5 设置软链接

有时候我们为了方便工作,会自己写一些shell或Python脚本处理一些定时任务,经常会通过类似/web/pg15.x这样的全路径调用一些工具,使用环境变量也会有一些其它的问题存在,为了尽可能的避免这种麻烦,创建一个/web/pgsql的软链接指向当前版本即可,命令如下:

ln -s /web/pgsql15 /web/pgsql

当进行了版本变更之后,不需要调整大量的脚本,只需要修改这个软链接即可。

tree -L 1 /web/pgsql15/

1.6 创建操作系统用户

groupadd -g 1005 postgres

useradd -g 1005 -u 1005 postgres

id postgres

1.7 创建数据目录

也就是在磁盘上初始化一个数据的存储区域,通常我们称之为数据目录。

mkdir -p /web/data_5432

chown -R postgres.postgres /web/data_5432

1.8 初始化数据目录

su - postgres

/web/pgsql15/bin/initdb -D /web/data_5432/

1.9 启动和停止数据库服务

启动

su - postgres

/web/pgsql15/bin/pg_ctl -D /web/data_5432/ start

查看状态

/web/pgsql15/bin/pg_ctl -D /web/data_5432/ status

停止

/web/pgsql15/bin/pg_ctl -D /web/data_5432/ stop

登录数据库并查看所有数据库

/web/pgsql/bin/psql

\l

至此,PostgreSQL数据库安装完成。感谢观看。

相关文章

php源码安装(php源码安装扩展)

php介绍PHP即“超文本预处理器”。PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。php的应用服...

【Python深度学习系列】Win10下CUDA+cuDNN+Tensorflow安装与配置

这是我的第292篇原创文章。一、前置知识安装GPU版本的pytorch和tensorflow之前需要理清楚这几个关系:显卡(电脑进行数模信号转换的设备,有的电脑可能是双显卡,一个是inter的集成显卡...

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

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

源码安装包管理(源码安装是什么意思)

1. 源码包基本概述2. 源码包的好处3. 源码包的获取4. 源码包分类5. 源码包的安装5.1 configure脚本的功能5.2 编译安装注意事项5.3 源码包编译实例1. 源码包基本概述在lin...

Python RPC 之 Thrift(Python rpc)

thrift-0.12.0 python3.4.3Thrift 简介:Thrift 是一款高性能、开源的 RPC 框架,产自 Facebook 后贡献给了 Apache,Thrift 囊括了整个 RP...

「Python入门」之Python和Pycharm的安装教程

Python简介Python是一种计算机程序设计语言,它结合了解释性、编译性、互动性和面向对象的脚本语言,非常简单易用。Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的...