这部份内容覆盖了PostgreSQL数据库管理员应该掌握的知识。包括软件安装、搭建和配置一个服务器、管理用户和数据库以及维护任务。任何想要运行一个PostgreSQL服务器的人都应该熟悉这一部分覆盖的主题。 介绍一下如何源码安装PostgreSQL 12数据库,源码安装可以根据自身需求进行合理的目录、编程语言、动态库等设置,其他安装方式这里就不多做说明。 从官网https://www.postgresql.org/获取源码,我们使用postgresql-12.6.tar.gz进行安装。16.1.1 上传并解压postgresql-12.6.tar.gz源码16.1.2 编译PostgreSQL需要下列软件包,如果没有可以使用yum进行安装:16.2.1 默认安装目录直接运行./configure说明:./configure 参数不止能够指定安装目录,你可以通过给出下面的configure命令行选项中的一个或更多的选项来自定义编译和安装过程,比如指定默认端口、指定各子目录路径、动态库、perl服务器变编程语言、python编程语言、本地语言支持等等,详见 《PostgreSQL 12 手册 16.4安装过程》。例如:./configure --prefix=/opt/pg12 --with-pgport=5666 --with-python --with-tcl --enable-nls --with-openssl --with-wal-blocksize=1616.3. 编译(不管选择哪种安装,执行完configure后都要执行编译) 编译前最好先执行make clean删除已编译文件 make/make all:依你的硬件而异,编译过程可能需要 5 分钟到半小时。显示的最后一行应该是:All of PostgreSQL successfully made. Ready to install. 如果你希望编译所有能编译的东西,包括文档(HTML和手册页)以及附加模块(contrib),这样键入:make world显示的最后一行应该是:PostgreSQL, contrib, and documentation successfully made. Ready to install. 要安装PostgreSQL,输入:make install 这条命令将把文件安装到在步骤1中指定的目录。确保你有足够的权限向该区域写入。通常你需要用 root 权限做这一步。或者你也可以事先创建目标目录并且分派合适的权限。 要安装文档(HTML和手册页),输入:make install-docs 如果你按照上面的方法编译了所有东西,输入:make install-world 如果你只想装客户应用和接口,那么你可以用下面的命令: make -C src/include install make -C src/interfaces install src/bin中有一些服务器专用的二进制文件,但是它们很小。 卸载:要撤销安装可以使用命令make uninstall对应make install。不过这样不会删除任何创建出来的目录。 清理:在安装完成以后,你可以通过在源码树里面用命令make clean删除编译文件对应make。这样会保留configure程序生成的文件,这样以后你就可以用make命令重新编译所有东西。 要把源码树恢复为发布时的状态,可用make distclean命令对应./configure。如果你想从同一棵源码树上为多个不同平台制作,你就一定要运行这条命令并且为每个编译重新配置(另外一种方法是在每种平台上使用一套独立的编译树,这样源代码树就可以保留不被更改)。 如果你执行了一次制作,然后发现你的configure选项是错误的, 或者你修改了任何configure所探测的东西(例如,升级了软件), 那么在重新配置和编译之前运行一下make distclean是个好习惯。如果不这样做, 你修改的配置选项可能无法传播到所有需要变化的地方。 export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH 或者在./configure时设置的--libdir。 或者如果你用的系统是Linux,并且你还有 root 权限,那么你可以在安装之后运行:ldconfig /opt/pg12/lib/(或者等效的目录)以便让运行时链接器更快地找到共享库。 如果你安装到/usr/local/pgsql或者其他默认不在搜索路径中的地方, 那你应该在你的PATH环境变量里面增加一个/usr/local/pgsql/bin(或者是你在./configure时给选项--bindir设置的任何值) 。严格来说,这些都不是必须的,但这么做可以让你使用PostgreSQL更方便。 PATH=/usr/local/pgsql/bin:$PATH 为了让你的系统找得到man文档,你需要加类似下面的一行到一个shell启动文件里 (除非你安装到了默认搜索的位置): MANPATH=/usr/local/pgsql/share/man:$MANPATH 环境变量PGHOST和PGPORT为客户端应用指定了数据库服务器的主机和端口, 它们会覆盖编译时的默认项。如果你想从远程运行客户端应用, 那么为每个准备使用该数据库的用户都设置PGHOST将会非常方便。但这不是必须的,而且大部分客户端程序也可以通过命令行选项替换这些设置。 PostgreSQL支持在这些操作系统上工作:Linux(所有最近的发布)、Windows(Win2000 SP4及以上)、 FreeBSD、OpenBSD、NetBSD、macOS、AIX、HP/UX和 Solaris。PostgreSQL 12.2 官方手册(第 17 章 在Windows上从源代码安装 --生产与测试环境均不用windows,所以略)
最后修改时间:2021-06-22 10:20:53