操作系统
修改/boot/grub2/grub.cfg
定位到第一个‘menuentry 'CentOS Linux’,在“linux16 /vmlinuz”最后面添加
numa=off transparent_hugepage=never default_hugepagesz=2M hugepagesz=2M hugepages=1536
*hugepagesz表示页面大小,2M和1G选其一,默认为2M。
hugepages表示大页面数
总共大页面内存量为hugepagesz*hugepages,这里为3G
例子:
menuentry 'CentOS Linux (3.10.0-693.5.2.el7.x86_64) 7 (Core)' --class centos --class gnu-linux --class gnu --class os --unrestricted $menuentry_id_option 'gnulinux-3.10.0-693.el7.x86_64-advanced-d8179b22-8b44-4552-bf2a-04bae2a5f5dd' {
load_video
set gfxpayload=keep
insmod gzio
insmod part_msdos
insmod xfs
set root='hd0,msdos1'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1 --hint='hd0,msdos1' 34f87a8d-8b73-4f80-b0ff-8d49b17975ca
else
search --no-floppy --fs-uuid --set=root 34f87a8d-8b73-4f80-b0ff-8d49b17975ca
fi
linux16 /vmlinuz-3.10.0-693.5.2.el7.x86_64 root=/dev/mapper/centos-root ro rd.lvm.lv=centos/root rhgb quiet LANG=en_US.UTF-8 numa=off transparent_hugepage=never default_hugepagesz=2M hugepagesz=2M hugepages=1536
initrd16 /initramfs-3.10.0-693.5.2.el7.x86_64.img
}
重启系统
重启后可以使用grep Huge /proc/meminfo查看配置情况。看到下面的数据表示已经生效
HugePages_Total: 1536
HugePages_Free: 1499
HugePages_Rsvd: 1024
HugePages_Surp: 0
Hugepagesize: 2048 kB
数据库配置
postgresql.conf
huge_pages = on
shared_buffers = 2GB # 使用2G内存,这个值需要小于总共大页面内存量
注意
如果postgresql.conf配置huge_pages=on时,且shared_buffers值等于huge_page总内存量(hugepagesz*hugepages)时,数据库无法启动,报如下错误:
This error usually means that PostgreSQL's request for a shared memory segment exceeded available memory or swap space.
解决办法shared、_buffers值要小于huge_page总内存量
分享到:
相关推荐
2. 配置文件(如`postgres_exporter.yml`):用于配置Postgres_exporter,包括连接数据库的参数、暴露的指标和监控频率等。 3. 证书和密钥(如果支持SSL连接):用于安全地连接到PostgreSQL服务器。 4. 文档或README...
postgres_vectorization_test, 矢量执行器,用于加速 PostgreSQL 向量执行器今年夏天我在Citus数据上暂存,并实现了sql的矢量执行器。 我们观察到了 3 -4x的性能改进,对于简单的选择查询,并决定打开我的项目。本文...
该指南覆盖了JDBC连接器的安装、配置、使用以及高级功能,为Java应用与Postgres Plus数据库之间的通信提供了坚实的基础。 #### JDBC连接器概述 JDBC是Java平台上的标准数据库访问API,允许Java应用程序与广泛的...
在压缩包子文件的文件名称列表中,只列出了 "postgres-REL_14_5",这意味着压缩包可能包含整个 PostgreSQL 14.5 的安装结构,包括可执行文件、配置文件、文档、库文件等。安装或编译 PostgreSQL 时,用户需要解压此...
5. Prometheus配置中添加Postgres Exporter作为目标,设置拉取间隔。 使用Postgres Exporter时,可以自定义监控项,例如: - `pg_stat_database`: 显示每个数据库的统计信息,如连接数、缓存命中率等。 - `pg_stat_...
压缩包子文件的文件名"vscode-postgres-master.zip"和"vscode-postgres-master"暗示了扩展的主要源代码可能包含在这个目录结构中,其中可能包括了扩展的源码文件、配置文件、README文档、许可证信息等。 这个扩展的...
标题中的"Python库 | is_valid_postgres_column_name-0.0.1-py3-none-any.whl"指的是一款Python库,名为`is_valid_postgres_column_name`,版本号为0.0.1。该库专门用于验证是否符合PostgreSQL数据库的列名规则。...
ArcSDE 配置 ST_Geometry 使用 大全
将硬件传感器数据 暴露给 Graphite / InfluxDB / Prometheus / Postgres / Timescaledb OhmGraphite 是一项 Windows 服务,可将硬件传感器数据公开给度量存储,允许人们在Grafana或其他时间序列 UI 中创建信息丰富...
为了部署`check_postgres`,管理员需要将其安装在Nagios服务器上,并根据实际环境调整配置文件。配置文件中可以设定要监控的数据库实例、检查频率、报警阈值等参数。一旦设置完成,Nagios将按照预设的间隔自动运行...
【event_bus_postgres:event event_bus的Postgres事件存储】 在软件开发中,事件驱动架构是一种常见的设计模式,它允许应用程序通过发布和订阅事件来进行通信。`event_bus_postgres` 是一个针对 Elixir 语言的库,...
quartz定时任务框架,数据库脚本pgsql版本,tables_postgres.sql; quartz定时任务框架
首先,你需要准备一个包含所有必需软件包的压缩文件,如"centos7离线安装postgres10"。这个压缩包应该包括以下内容: 1. PostgreSQL 10的RPM包:通常包括`postgresql10`, `postgresql10-server`, `postgresql10-...
CI测试的PostgreSQL版本: 9.4 , 9.5 , 9.6 , 10 , 11 , 12 , 13 快速开始 该软件包可用于Docker: # Start an example database docker run --net=host -it --rm -e POSTGRES_PASSWORD=password postgres #...
7. **安装与使用**: 使用wasmer-postgres可能涉及安装扩展、配置PostgreSQL以及编写和运行WASM模块。开发者需要了解PostgreSQL的扩展机制和WASM的编译流程。 8. **集成示例与测试**: 项目中的例子和测试用例可以...
Ansible 角色:Postgres 在 CentOS 6.5 上安装最小的 Postgres 9.3 要求 没有任何。 角色变量 默认值: postgres_port: 5432 postgres_listen_addresses: 本地主机 postgres_pg_hba 可选变量: postgres_pg_hba...
在配置Postgres-XL数据库集群时,需要遵循一系列步骤,这些步骤包括集群设计、软件安装、环境变量的配置、以及GTM(全局事务管理器)和数据节点的初始化。 首先,关于集群设计,需要对集群中的各台主机进行角色分配...