1. 먼저 커널 매개변수를 수정해야 한다


커널 매개변수를 수정하려면 root 권한이 있어야 합니다.

프로시저

커널 매개변수를 갱신하려면 다음과 같이 수행하십시오.

Red Hat 및 SUSE Linux
다음 정보를 사용하여 시스템에 필수 변경사항이 필요한지 여부를 판별할 수 있습니다.

ipcs -l 명령의 출력은 다음과 같습니다. 매개변수 이름을 표시하기 위해 // 다음에 주석이 추가되었습니다.

   # ipcs -l

   ------ 공유 메모리 한계 --------
   최대 세그먼트 수 = 4096                       // SHMMNI	
   최대 세그먼트 크기(킬로바이트) = 32768        // SHMMAX
   최대 총 공유 메모리(킬로바이트) = 8388608     // SHMALL
   최소 세그먼트 크기(바이트) = 1

   ------ 세마포어 한계 --------
   최대 배열 수 = 1024                           // SEMMNI
   배열당 최대 세마포어 = 250                    // SEMMSL
   최대 세마포어 시스템 너비 = 256000            // SEMMNS
   세마포어 호출당 최대 작동 수 = 32             // SEMOPM
   세마포어 최대값 = 32767

   ------ 메시지: 한계 --------
   최대 큐 시스템 너비 = 1024               // MSGMNI
   최대 메시지 크기(바이트) = 65536         // MSGMAX
   디폴트 최대 큐 크기(바이트) = 65536    // MSGMNB

공유 메모리 한계의 첫 번째 섹션에서 시작하여 SHMMAX 및 SHMALL은 잠금에 필요한 매개변수입니다. SHMMAX는 Linux 시스템에 있는 공유 메모리 세그먼트의 최대 크기입니다. 여기서 SHMALL은 시스템에 있는 공유 메모리 페이지의 최대 할당입니다.

SHMMAX의 경우, x86 시스템에 필요한 최소량은 268435456(256 MB)이고 64비트 시스템의 경우에는 1073741824(1 GB)입니다.

SHMALL은 디폴트로 8 GB(8388608 KB = 8 GB)로 설정되어 있습니다. 실제 메모리가 이보다 많을 때 DB2에 사용하려면, 컴퓨터에 지정된 대로 실제 메모리의 약 90%로 이 매개변수를 늘려야 합니다. 예를 들어, 컴퓨터 시스템이 DB2에 대해 기본적으로 16 GB를 사용할 수 있는 경우, 16 GB의 90%는 14.4 GB이고 이를 4 KB(기본 페이지 크기)를 나눈 값은 3774873입니다. ipcs 출력은 SHMALL을 킬로바이트로 변환합니다. 커널에서는 이 값을 페이지 수로 요청합니다.

다음 섹션에서는 운영 체제에 사용 가능한 세마포어 양에 대해 다룹니다. 커널 매개변수 sem은 네 개의 토큰(SEMMSL, SEMMNS, SEMOPM 및 SEMMNI)으로 구성됩니다. SEMMNS는 SEMMSL에 SEMMNI를 곱한 결과입니다. 데이터베이스 관리 프로그램에서는 필요에 따라 배열의 수(SEMMNI)를 늘려야 합니다. 일반적으로 SEMMNI는 데이터 서버 컴퓨터의 논리적 파티션 수를 곱하고 데이터베이스 서버 컴퓨터의 로컬 응용프로그램 연결 수를 더한 허용되는 최대 연결 수의 두 배여야 합니다.

세 번째 섹션에서는 시스템에 대한 메시지에 대해 다룹니다.

MSGMNI는 시작할 수 있는 에이전트 수, MSGMAX는 큐에서 전송될 수 있는 메시지의 크기, MSGMNB는 큐의 크기에 영향을 미칩니다.

서버 시스템에서는 MSGMAX를 64 KB(즉 65535 바이트)로 변경하고 MSGMNB를 65535로 늘려야 합니다.

이 커널 매개변수를 수정하려면 /etc/sysctl.conf 파일을 편집해야 합니다. 이 파일이 존재하지 않으면 파일을 작성해야 합니다. 다음 행은 파일에 삽입해야 할 매개변수에 대한 예입니다.

kernel.sem=250 256000 32 1024
#Example shmmax for a 64-bit system
kernel.shmmax=1073741824	
#Example shmall for 90 percent of 16 GB memory
kernel.shmall=3774873		
kernel.msgmax=65535
kernel.msgmnb=65535

-p 매개변수와 함께 sysctl을 실행하여 디폴트 파일인 /etc/sysctl.conf로부터 sysctl 설정을 로드하십시오.

     sysctl -p

재부트할 때마다 변경사항을 적용하려면 SUSE Linux에서 boot.sysctl이 활성화되어 있어야 합니다. Red Hat의 경우, rc.sysinit 재초기화 스크립트는 자동으로 /etc/sysctl.conf 파일을 읽습니다.



2. vi /opt/PostgresPlus/9.0AS/data/postgresql.conf 편집

....
max_connections = 1000
....

3. db restart

AND