
安装和配置JIT
安装PGDG存储库并获取PostgreSQL服务器包:
发布日期:2021-05-08 12:28:28
浏览次数:18
分类:精选文章
本文共 1854 字,大约阅读时间需要 6 分钟。
PostgreSQL 11 JIT 功能的安装与配置指南
引言
Just-in-Time(JIT)编译是PostgreSQL 11版本中的一个重要新特性,它能够显著提升数据库性能。通过本文,你将学会如何在CentOS 7环境中安装和配置带有JIT支持的PostgreSQL。
方法一:从PGDG存储库安装PostgreSQL
如果你希望避免从源代码编译复杂的依赖关系,可以选择从PGDG存储库中获取PostgreSQL包。以下是详细的安装步骤:
[root@localhost ~]# yum install https://download.postgresql.org/pub/repos/yum/11/redhat/rhel-7-x86_64/pgdg-centos11-11-2.noarch.rpm[root@localhost ~]# yum install postgresql11-server
- 初始化数据目录并启动PostgreSQL服务:
- 安装EPEL存储库:
- 安装带有LLVM JIT支持的PostgreSQL包:
- 下载并解压PostgreSQL源代码:
- 安装SCL存储库和开发工具:
- 设置环境变量:
- 安装其他依赖库:
- 编译PostgreSQL并启用JIT支持:
- 登录PostgreSQL:
- 启用JIT:
[root@localhost ~]# /usr/pgsql-11/bin/postgresql*-setup initdb[root@localhost ~]# systemctl start postgresql-11
[root@localhost ~]# yum install epel-release
[root@localhost ~]# yum install postgresql11-llvmjit
方法二:从源代码编译PostgreSQL
如果你需要更高级的配置或对依赖关系有更深入的控制,可以从源代码编译PostgreSQL。
[root@localhost ~]# tar -zxvf postgresql-11.0.tar.gz
[root@localhost ~]# yum install centos-release-scl[root@localhost ~]# yum install llvm-toolset-7 llvm-toolset-7-llvm-devel.x86_64
[postgres@localhost ~]# vim .bash_profile
添加以下行:
PATH=/opt/rh/devtoolset-7/root/usr/bin/:/opt/rh/llvm-toolset-7/root/usr/bin/:$PATH
然后使环境变量生效:
[postgres@localhost ~]# source .bash_profile
[root@localhost ~]# yum install readline-devel zlib-devel libxml2-devel openssl-devel gcc
[root@localhost postgresql-11.0]# ./configure --prefix=/usr/local/pgsql/pg11 --with-openssl --with-libxml --with-zlib --with-llvm[root@localhost postgresql-11.0]# make[root@localhost postgresql-11.0]# make install
启用JIT功能
默认情况下,PostgreSQL 11禁用了JIT功能。你需要手动启用它。
postgres=# SHOW jit; # 查看JIT状态jit ----- off # 输出示例
postgres=# ALTER SYSTEM SET jit=on;postgres=# SELECT pg_reload_conf(); # 重新加载配置postgres=# SHOW jit; # 查看JIT状态是否已启用jit ----- on # 输出示例
通过以上步骤,你已经成功安装并配置了带有JIT支持的PostgreSQL 11。JIT功能能够显著提升数据库性能,尤其是在处理复杂查询和高并发场景时。
发表评论
最新留言
很好
[***.229.124.182]2025年03月26日 04时52分46秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
shell echo单行和多行文字定向写入到文件中
2019-03-06
AtCoder Beginner Contest 100 题解
2019-03-06
【数据结构】可持久化线段树初步
2019-03-06
后缀树
2019-03-06
Java高性能编程之CAS与ABA及解决方法
2019-03-06
从BIO到Netty的演变
2019-03-06
《算法导论》第二章笔记
2019-03-06
HTML节点操作
2019-03-06
HTML5新特性
2019-03-06
async/await剖析
2019-03-06
cmp命令
2019-03-06
一次编辑
2019-03-06
长按键入
2019-03-06
JavaScript中的链式调用
2019-03-06
day-04-列表
2019-03-06
Linux 磁盘管理(df fu fdisk mkfs mount)
2019-03-06
空间向量
2019-03-06
第一类曲面积分
2019-03-06
Redis简介(数据结构,哨兵、集群和SpringDataRedis)
2019-03-06
MySQL锁机制
2019-03-06