ocp考试资料群:569933648 验证码:ocp ocp 12c 19c考试题库解析与资料群:钉钉群号:35277291
全部博文(486)
分类: mysql/postgresql
2023-02-20 14:51:08
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(默认) #{banned}最佳大共享内存段大小
kernel.shmall = 4294967296(默认) #可以使用的共享内存的总量
kernel.shmmni = 4096 #整个系统共享内存段的{banned}最佳大数目
kernel.sem = 50100 64128000 50100 1280 #每个信号对象集的{banned}最佳大信号对象数
fs.file-max = 7672460 #文件句柄的{banned}最佳大数量。
net.ipv4.ip_local_port_range = 9000 65000 #应用程序可使用的ipv4端口范围
net.core.rmem_default = 1048576 #套接字接收缓冲区大小的缺省值
net.core.wmem_default = 262144 #套接字发送缓冲区大小的缺省值
net.core.wmem_max = 1048576 #套接字发送缓冲区大小的{banned}最佳大值
# sysctl -p #配置生效
3、安装方式-linux
二进制安装包安装
通过yum安装
yum search postgresql && yum install postgresql
通过源码编译安装
重要的依赖:readline,flex,bison
3.1、依赖包检查
编译前依赖包,以redhat/centos为例:
{banned}最佳小依赖: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用户可读写权限