iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >postgresql安装过程中内核资源的配置详情
  • 299
分享到

postgresql安装过程中内核资源的配置详情

2024-04-02 19:04:59 299人浏览 薄情痞子
摘要

这篇文章主要介绍“postgresql安装过程中内核资源的配置详情”,在日常操作中,相信很多人在postgresql安装过程中内核资源的配置详情问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,

这篇文章主要介绍“postgresql安装过程中内核资源的配置详情”,在日常操作中,相信很多人在postgresql安装过程中内核资源的配置详情问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”postgresql安装过程中内核资源的配置详情”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

1、共享内存和信号量Shared Memory and Semaphores

修改/etc/sysctl.conf文件,linux一般只修改如下两个参数即可,其中kernel.shmmax值和shared_buffers一样,一般设置为物理内存的40%即可,其他的参数的默认值非常大,通常不需要更改。

kernel.shmmax=XXX

kernel.shmall=XX

SHMMAX:共享内存段的最大大小,单位bytes

SHMALL:可用共享内存的总数,单位bytes的话值和SHMMAX一样,单位是pages的话值等于SHMMAX/PAGE_SIZE

linux查看Block size大小的方法

tune2fs -l /dev/sda1 |grep 'Block size'

linux查看Page size大小的方法

getconf PAGESIZE

2、systemd RemoveIPC

修改/etc/systemd/logind.conf文件,增加RemoveIPC=no即可

在RHEL7.2中,systemd-logind 服务引入了一个新特性,该新特性是:当一个user完全退出os之后,remove掉这个user所有的IPC objects。系统用户除外。“系统用户”由/etc/login.defs中的SYS_UID_MAX设置确定。该特性由/etc/systemd/logind.conf参数文件中RemoveIPC选项来控制。

3、资源限制Resource Limits

修改/etc/security/limits.conf文件,主要是限制每个用户的进程数,每个进程打开的文件数,示例如下

postgres  soft  nproc   2047

postgres  hard  nproc   16384

postgres  soft  nofile  1024

postgres  hard  nofile  65536

4、Linux内存过量使用Linux Memory Overcommit

修改/etc/sysctl.conf文件,增加vm.overcommit_memory=2

Linux对大部分申请内存的请求都回复"yes",以便能跑更多更大的程序。因为申请内存后,并不会马上使用内存。这种技术叫做 Overcommit。当linux发现内存不足时,会发生OOM killer(OOM=out-of-memory)。它会选择杀死一些进程(用户态进程,不是内核线程),以便释放内存。

在Linux 2.4及更高版本中,默认的虚拟内存行为对于PostgreSQL不是最优的。由于内核实现内存过度提交的方式,如果PostgreSQL或其他进程的内存需求导致系统耗尽虚拟内存,内核可能会终止PostgreSQL postmaster(主服务器进程)。如果内存紧张,增加操作系统的交换空间可以帮助避免这个问题,因为只有当物理内存和交换空间耗尽时才会调用内存不足(out- memory, OOM)杀手。如果PostgreSQL本身是导致系统内存不足的原因,那么可以通过更改配置来避免这个问题。最好减少max_connections,而使用外部连接池软件。在Linux 2.6及更高版本上,可以修改内核的行为sysctl -w vm.overcommit_memory=2。

overcommit_memory可选值:0、1、2。

0, 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。

1, 表示内核允许分配所有的物理内存,而不管当前的内存状态如何。

2, 表示内核允许分配超过所有物理内存和交换空间总和的内存 

5、大页内存Linux Huge Pages

系统支持大页内存的情况下,修改/etc/sysctl.conf文件,增加vm.nr_hugepages=XX,即启用大页内存。

PostgreSQL中大页内存的默认行为是尽可能使用它们,并在失败时回退到正常页面。要强制使用大页内存,可以在postgresql.conf中将huge_pages设置为on。

查看内存是否支持大页内存,cat /proc/meminfo查看是否有PageTables、HugePages_Total、Hugepagesize、HugePages_Free、HugePages_Rsvd等项,如果没有,需要内核配置CONFIG_HUGETLBFS=y、CONFIG_HUGETLB_PAGE=y支持大内存页

确定vm.nr_hugepages值的方法

$ head -1 $PGDATA/postmaster.pid

4170

$ pmap 4170 | awk '/rw-s/ && /zero/ {print $2}'

6490428K

$ grep ^Hugepagesize /proc/meminfo

Hugepagesize:       2048 kB

以上6490428/2048=3170,所以编辑/etc/sysctl.conf文件修改vm.nr_hugepages=3170

oracle算法

# grep Hugepagesize /proc/meminfo

For example, if /proc/meminfo lists the large page size as 2 MB, and the total SGA size for the instance is 1.6 GB, then set the value for the vm.nr_hugepages kernel parameter to 820 (1.6 GB / 2 MB = 819.2).

到此,关于“postgresql安装过程中内核资源的配置详情”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

您可能感兴趣的文档:

--结束END--

本文标题: postgresql安装过程中内核资源的配置详情

本文链接: https://www.lsjlt.com/news/60884.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • postgresql安装过程中内核资源的配置详情
    这篇文章主要介绍“postgresql安装过程中内核资源的配置详情”,在日常操作中,相信很多人在postgresql安装过程中内核资源的配置详情问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,...
    99+
    2024-04-02
  • MySQL下载安装配置详细教程 附下载资源
    目录一、下载二、安装三、配置四、检测是否安装成功五、注意事项一、下载 1、官网下载 2、某度网盘下载 链接: https://pan.baidu.com/s/1BgbZH-aFaJ1...
    99+
    2024-04-02
  • Hadoop源码分析二安装配置过程详解
    目录1、 创建用户2、 安装jdk3、 修改hosts4、 配置ssh免密登录5、 安装zookeeper解压:修改配置文件修改内容如下:配置环境变量启动6、 安装hadoop对于三...
    99+
    2024-04-02
  • 安装与配置MySQL的详细过程
    这篇文章主要介绍“安装与配置MySQL的详细过程”,在日常操作中,相信很多人在安装与配置MySQL的详细过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”安装与配置MySQL...
    99+
    2024-04-02
  • Kafka安装与配置详细过程
    本节详细介绍 Kafka 运行环境的搭建,为了节省篇幅,本节的内容以 Linux CentOS 作为安装演示的操作系统,其他 Linux 系列的操作系统也可以参考本节的内容。具体的操...
    99+
    2024-04-02
  • Python安装和配置uWSGI的详细过程
    目录Python 安装 uWSGI添加并发和监控结合 Web 服务器使用部署 Django部署 Flask本文主要介绍如何部署简单的 WSGI 应用和常见的 Web 框架。 以 Ub...
    99+
    2024-04-02
  • 安装Ubuntu15.04和配置KVM的详细过程
    这篇文章主要介绍“安装Ubuntu15.04和配置KVM的详细过程”,在日常操作中,相信很多人在安装Ubuntu15.04和配置KVM的详细过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”安装Ubuntu1...
    99+
    2023-06-13
  • 【Anaconda+Pytorch+DGL】安装+配置详细过程
    文章目录 Anaconda安装1、进入[Anaconda官网](https://www.anaconda.com/)下载,下载完成后安装指令默认直到完成安装。2、进入Anaconda Prom...
    99+
    2023-09-02
    pytorch python 深度学习 pip conda
  • 详细介绍GitLab的安装和配置过程
    在当今的软件开发领域,版本控制是一项非常重要的工作,而Git是这个领域中最为流行的版本控制系统之一。但是,为了更好地管理自己的项目,还需要搭建一套Git服务器来进行代码的提交和管理。其中,GitLab就是一个极好的选择。本文将详细介绍Git...
    99+
    2023-10-22
  • JDK的安装与配置过程(win10详细板)
    1.在JDK官网获取, http://www.oracle.com。 2.在导航栏选择Resources。  3.选择Java Downloads。 下翻到Java8,下载windows版本(根据自己所需下载其版本)。 下载完成后傻瓜...
    99+
    2023-09-21
    java 开发语言
  • MySQL的安装与配置过程
    这篇文章主要介绍“MySQL的安装与配置过程”,在日常操作中,相信很多人在MySQL的安装与配置过程问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL的安装与配置过程”...
    99+
    2024-04-02
  • Anaconda3安装及后续配置详细过程
    安装版本:Anaconda3 2022.10(64-bit) 安装环境:Windows10 注意事项:这篇文章是按照我安装的地址记录的,所有的地址需要换为自己的安装路径。 Part 1  安装过程 首先下载安装包,我这里提供一个2022年1...
    99+
    2023-10-03
    人工智能 机器学习 深度学习
  • Cenots7 离线安装部署PostgreSQL 的详细过程
    目录1 PostgreSQL源码包下载并复制1.1PostgreSQL源码包下载:1.2复制源码包至服务器2基于PostgreSQL源码安装2.1解压缩源码2.2检查环境 指定安装路径2.3编译2.4安装3.postgr...
    99+
    2024-04-02
  • Python uWSGI的安装配置过程
    本篇内容主要讲解“Python uWSGI的安装配置过程”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python uWSGI的安装配置过程”吧!以 Ubuntu/Debian 为例,先安装依赖...
    99+
    2023-06-02
  • vsftpd的安装和配置过程
    本篇内容主要讲解“vsftpd的安装和配置过程”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“vsftpd的安装和配置过程”吧!1、VSFTPD简述   如果试问哪种FTP服务器最安全?那么在UN...
    99+
    2023-06-13
  • Cenots7离线安装部署PostgreSQL的详细过程
    目录1 PostgreSQL源码包下载并复制1.1PostgreSQL源码包下载:1.2复制源码包至服务器2基于PostgreSQL源码安装2.1解压缩源码2.2检查环境 指定安装路...
    99+
    2022-11-13
    PostgreSQL 离线安装部署 Cenots7 安装部署PostgreSQL
  • nginx安装以及配置的详细过程记录
    目录1 nginx 介绍1 什么是nginx2 应用场景2 nginx安装1 下载2 安装要求的环境1.需要安装gcc环境2.第三方的开发包3 nginx安装过程3 启动nginx4...
    99+
    2024-04-02
  • vue项目中如何通过cdn引入资源并配置详解
    目录概念作用引用资源及配置1、引入2、配置3、在main.js文件中去除原来的引用总结概念 cdn(内容分发网络)是一种通过互联网相互连接的电脑网络系统,当用户向cdn链接请求资源时...
    99+
    2024-04-02
  • Redhat下MySQL5.5.20的安装配置过程
    这篇文章主要讲解了“Redhat下MySQL5.5.20的安装配置过程”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Redhat下MySQL5.5.20的安...
    99+
    2024-04-02
  • JBuilder5+Weblogic 6.0的安装配置过程
    本篇内容介绍了“JBuilder5+Weblogic 6.0的安装配置过程”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、安装JBuild...
    99+
    2023-06-03
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作