PostgreSQL源码安装及配置指南

需积分: 9 0 下载量 195 浏览量 更新于2024-08-05 1 收藏 19KB DOCX 举报
"该文档详细描述了在Linux环境中如何源码安装PostgreSQL数据库,并涵盖了从下载安装包、安装依赖、修改系统参数、创建用户和路径,到编译、安装、初始化数据库、设置服务开机启动等一系列步骤。" 在安装PostgreSQL数据库时,首先需要从其官方网站(https://www.postgresql.org/ftp/source/)下载对应版本的源码安装包,并将其上传到服务器的指定路径,例如`/softmedia`。源码安装允许更灵活地配置和定制安装过程,适合那些需要特定功能或对系统有特殊需求的场合。 在源码安装前,需要确保系统已经安装了所有必要的依赖包。可以使用`yum`命令安装RPM依赖包,例如`perl-ExtUtils-Embed`, `readline-devel`, `zlib-devel`, `pam-devel`, `libxml2-devel`, `libxslt-devel`, `openldap-devel`, `python-devel`, `gcc-c++`, `openssl-devel`, 和 `cmake`等。这些依赖是编译和运行PostgreSQL所必需的。 接下来,为了优化PostgreSQL的性能,需要修改系统的内核参数。文档中给出了多个内核参数的示例,如`fs.file-max`, `kernel.sem`, `kernel.shmmni`, `kernel.shmall`, `kernel.shmmax`, `net.ipv4.ip_local_port_range`, `net.core.rmem_default`, `net.core.wmem_default`, `fs.aio-max-nr`, `vm.dirty_ratio`, `vm.dirty_background_ratio`, 等等。这些参数的调整有助于提高文件句柄限制、内存使用、网络性能和异步I/O能力。 在系统参数调整后,还需要对用户和用户组进行设置。创建一个名为`postgres`的用户,同时为这个用户分配适当的资源限制,例如`nofile`(打开文件的最大数量)和`nproc`(可同时运行的进程数)。这可以通过修改`/etc/security/limits.conf`文件来实现,例如增加`postgressoftnofile 1048576`和`postgreshardnproc 131072`等设置。 安装过程中,`prefix`参数用于指定PostgreSQL的安装路径,而创建符号链接是为了后续版本升级的便利。在编译和安装源码之前,别忘了修改`postgres`用户的环境变量,如`PATH`,并使用`source`命令使这些修改生效。 编译源码后,执行安装步骤。然后,切换到`postgres`用户,使用初始化脚本创建数据库集群。初始化参数可以根据实际需求进行调整。完成初始化后,作为`root`用户,将PostgreSQL服务添加到系统服务列表中,并设置为开机启动。这通常可以通过`systemctl enable postgresql`等命令完成。 最后,文档中列出的`yum install`命令用于一次性安装所有依赖,而`echo`命令则展示了如何通过修改`/etc/sysctl.conf`文件并将改动应用到系统(使用`sysctl --system`命令)来调整内核参数。 总结来说,这个文档提供了一套完整的PostgreSQL源码安装流程,涵盖了从准备环境到系统调优的每一个环节,对于需要手动安装PostgreSQL的管理员来说是一份宝贵的指南。