Db2 11.1

For root installations, the database manager uses a formula to automatically adjust kernel parameter settings and eliminate the need for manual updates to these settings.

Before you begin

You must have root authority to modify kernel parameters.

Procedure

To update kernel parameters on Red Hat and SUSE Linux:

  1. Run the ipcs -l command to list the current kernel parameter settings.
  2. Analyze the command output to determine whether you have to change kernel settings or not by comparing the current values with the enforced minimum settings in the following table.
    IPC kernel parameter Enforced minimum setting
    kernel.shmmni (SHMMNI) 256 * <size of RAM in GB>
    kernel.shmmax (SHMMAX) <size of RAM in bytes>1
    kernel.shmall (SHMALL) 2 * <size of RAM in the default system page size>2
    kernel.sem (SEMMNI) 256 * <size of RAM in GB>
    kernel.sem (SEMMSL) 250
    kernel.sem (SEMMNS) 256 000
    kernel.sem (SEMOPM) 32
    kernel.msgmni (MSGMNI) 1 024 * <size of RAM in GB>
    kernel.msgmax (MSGMAX) 65 536
    kernel.msgmnb (MSGMNB) 65 536 3
    1. On 32-bit Linux operating systems, the enforced minimum setting for SHMMAX is limited to 4 294 967 295 bytes.
    2. SHMALL limits the total amount of virtual shared memory that can be allocated on a system. Each Db2® data server efficiently manages the amount of system memory it consumes, also know as committed memory. TheDb2 data server allocates more virtual memory than it commits to support memory preallocation and dynamic memory management. Memory preallocation benefits performance. Dynamic memory management is the process of growing and shrinking real memory usage within separate virtual shared memory areas. To support memory preallocation and dynamic memory management effectively, data servers frequently have to allocate more virtual shared memory on a system than the amount of physical RAM. The kernel requires this value as a number of pages.
    3. Load performance might benefit from a larger message queue size limit, which is specified in bytes by MSGMNB. You can view message queue usage by running the ipcs -q command. If the message queues are at capacity, or reaching capacity, during load operations, consider increasing the number of bytes the message queue size limit.

    The following text is an example of the ipcs command output with comments added after // to show what the parameter names are:

       # ipcs -l
    
       ------ Shared Memory Limits --------
    max number of segments = 4096 // SHMMNI
    max seg size (kbytes) = 32768 // SHMMAX
    max total shared memory (kbytes) = 8388608 // SHMALL
    min seg size (bytes) = 1 ------ Semaphore Limits --------
    max number of arrays = 1024 // SEMMNI
    max semaphores per array = 250 // SEMMSL
    max semaphores system wide = 256000 // SEMMNS
    max ops per semop call = 32 // SEMOPM
    semaphore max value = 32767 ------ Messages: Limits --------
    max queues system wide = 1024 // MSGMNI
    max size of message (bytes) = 65536 // MSGMAX
    default max size of queue (bytes) = 65536 // MSGMNB
    • Beginning with the first section on Shared Memory Limits, the SHMMAX limit is the maximum size of a shared memory segment on a Linux system. The SHMALL limit is the maximum allocation of shared memory pages on a system.

      • It is recommended to set the SHMMAX value to be equal to the amount of physical memory on your system. However, the minimum that is required on x86 systems is 268435456 (256 MB) and for 64-bit systems, it is 1073741824 (1 GB).
    • The next section covers the amount of semaphores available to the operating system. The kernel parameter semconsists of four tokens, SEMMSL, SEMMNS, SEMOPM, and SEMMNI. SEMMNS is the result of SEMMSL multiplied bySEMMNI. The database manager requires that the number of arrays (SEMMNI) be increased as necessary. Typically, SEMMNI must be twice the maximum number of agents expected on the system multiplied by the number of logical partitions on the database server computer plus the number of local application connections on the database server computer.
    • The third section covers messages on the system.
      • The MSGMNI parameter affects the number of agents that can be started. The MSGMAX parameter affects the size of the message that can be sent in a queue, and the MSGMNB parameter affects the size of the queue.
      • The MSGMAX parameter must be changed to 64 KB (that is, 65536 bytes), and the MSGMNB parameter must be increased to 65536.
  3. Modify the kernel parameters that you have to adjust by editing the /etc/sysctl.conf file. If this file does not exist, create it. The following lines are examples of what must be placed into the file:
    #Example for a computer with 16GB of RAM:
    kernel.shmmni=4096
    kernel.shmmax=17179869184
    kernel.shmall=8388608
    #kernel.sem=<SEMMSL> <SEMMNS> <SEMOPM> <SEMMNI>
    kernel.sem=250 1024000 32 4096
    kernel.msgmni=16384
    kernel.msgmax=65536
    kernel.msgmnb=65536

  4. Run sysctl with -p parameter to load in sysctl settings from the default file /etc/sysctl.conf:
       sysctl -p

  5. Optional: Have the changes persist after every reboot:
    • (SUSE Linux) Make boot.sysctl active.
    • (Red Hat) The rc.sysinit initialization script reads the /etc/sysctl.conf file automatically.

Kernel parameters for Db2 database server installation (Linux and UNIX)的更多相关文章

  1. FreeTDS-SQL Server在linux和unix下的免费驱动

    微软为MS SQL Server的连接和使用提供了很好的 驱动和 文档. 不幸的是,那只能在windows操作系统上使用. 所以对于Linux或者Unix,您需要寻找不同的方法来连接MS SQL Se ...

  2. Domino Server installation on Linux (Centos or Redhat) – something somewhere

    something somewhere welcome in there…:) Just another techki site howto / Linux / Lotus Domino 0 Domi ...

  3. 【转】Linux mysql停止失败的解决办法 Stopping MySQL database server mysqld [fail]

    root@ubuntu:/# /etc/init.d/mysql stop * Stopping MySQL database server mysqld [fail] root@ubuntu:/# ...

  4. Oracle EBS R12 (12.1.3) Installation Linux(64 bit)

    Oracle EBS R12 (12.1.3) Installation Linux(64 bit) Contents Objective. 3 1 Download & Unzip. 3 D ...

  5. SQL Server on Linux: How? Introduction: SQL Server Blog

    SQL Server Blog Official News from Microsoft’s Information Platform https://blogs.technet.microsoft. ...

  6. Acronis Server备份Linux系统

    Acronis Server备份Linux系统 前段时间用Acronis Disk Director Suite解决了Thinkpad笔记本在win7的分区问题(http://chenguang.bl ...

  7. 配置SQL Server on Linux(2)

    1. 前言 前一篇配置SQL Server on Linux(1),地址:http://www.cnblogs.com/fishparadise/p/8125203.html ,是关于更改数据库排序规 ...

  8. SQL Server On Linux:基于实际项目案例,总结功能支持情况及相关问题解决方案,讲如何快速完成迁移

    上个月,有个朋友问我说Sql Sever向Mysql迁移有什么好的经验分享,他们公司客户明确提出不再提供Windows服务器,现在计划Mysql迁移.我说Mysql迁移成本太高了,不妨可以了解一下SQ ...

  9. Howto: Connect MySQL server using C program API under Linux or UNIX

    From my mailbag: How do I write a C program to connect MySQL database server? MySQL database does su ...

随机推荐

  1. 我的第一个HTML5应用

    直接贴代码: 源代码: <?xml version="1.0" encoding="UTF-8"?> <div xmlns="htt ...

  2. IntelliJ IDEA的配置优化

    IntelliJ IDEA的配置优化 我们安装完IntelliJ IDEA之后,在弹出的欢迎页面下方点击Configure,选择Setting,打开以下界面,我们在这个界面中进行配置. Appeara ...

  3. 一个正整数表示为n个连续正整数之和(第1届第2题)

    题目要求 问题描述:一个正整数有可能可以被表示为 n(n>=2) 个连续正整数之和,如: 15=1+2+3+4+5 15=4+5+6 15=7+8 编写程序,根据输入的任何一个正整数,找出符合这 ...

  4. linux下为目录和文件设置权限

    摘:linux下为目录和文件设置权限 分类: Linux2012-05-09 03:18 7456人阅读 评论(1) 收藏 举报 linuxwordpressweb数据库serverfile linu ...

  5. 【iCore1S 双核心板_ARM】例程十一:RTC实时时钟实验——显示时间和日期

    实验现象: 核心代码: int main(void) { /* USER CODE BEGIN 1 */ RTC_DateTypeDef sDate; RTC_TimeTypeDef sTime; u ...

  6. git push 失败

    先上图 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvV29KaWFvRGFaaG9uZw==/font/5a6L5L2T/fontsize/400/fil ...

  7. 练手之RimLight

    简单写写,练下手~ Shader "James/VP Shader/RimLight" { Properties { _MainTex("MainTex", 2 ...

  8. Java知多少(87)选择框和单选按钮

    选择框.单选框和单选按钮都是选择组件,选择组件有两种状态,一种是选中(on),另一种是未选中(off),它们提供一种简单的 “on/off”选择功能,让用户在一组选择项目中作选择. 选择框 选择框(J ...

  9. c++类成员函数后边加const是为什么?

    时间是让人猝不及防的东西,晴是有风阴时有雨,争不过朝夕,又念着往昔,偷走了青丝却留住一个你 #include <iostream> #include <string> usin ...

  10. 牛客网_Go语言相关练习_判断&选择题(4)

    题目来源于牛客网 一.判断题 成员变量或者函数的首字母表示是否对外部可见. switch后面的声明语句和表达式语句都是可以选择的.例如: //可以什么都不加 switch: break; 错误指的是可 ...