2006년에 RedHat 리눅스의 버전이 기억 안나지만(아마 4.5였던듯), Shared memory가 32MB로 잡혀있어서 데이터베이스가 실행되기에 매우 부족한 편이었습니다.
현재 시스템에 설정된 Shared Memory는 아래와같이 shell에서 명령어로 확인할 수 있습니다.
> cat /proc/sys/kernel/shmmax
이 값이 너무 적은 경우 임시로 변경하려면,
> echo 134217728 /proc/sys/kernel/shmmax
위에서 134217728은 128MB의 바이트 숫자입니다.
요즘에는 서버급 메모리가 GB 단위가 많으므로, 1GB를 잡는다면, 이 값을 1073781824로 설정해 주면 되겠습니다.
보다 영구적으로 시스템 재부팅 시에도 적용하게 하려면, /etc/sysctl.conf 파일에 등록해 주면 됩니다.
> vi /etc/sysctl.conf
이 파일의 맨 아래에
kernel.shmmax=134217728
위 라인을 추가하시면, 다음 재부팅 시 부터 적용이 됩니다. 보다 자세한 설명은 sysctl(8) 명령어와 Ensemble(혹은 Cache) 문서를 참고하시기 바랍니다. 문서에서 검색하실 keyword는 "Linux Platform Notes" 입니다.
|