database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
ㆍOracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Oracle Q&A 2954 게시물 읽기
No. 2954
Re: Re: 오라클 설치시 리눅스 커널의 설정 -> 성공사례는 못찾은듯..
작성자
문태준
작성일
2001-02-12 09:52
조회수
3,299

>>정재익 님께서 쓰시길<<

 

:: 장문의 글 잘 읽었습니다. 나름대로 좋은 정보도 포함하고 있군요. 사실 메모리 튜닝에 관해서는 많은

:: 고민을 해 봐야 하는 문제입니다. 개인적인 생각으로는 곧 2.4.x stable 버전이 나올것이니 아마도 오

:: 라클도 그기에 맞추어서 한번더 컴파일되어 출시 될 것으로 판단됩니다. 좀더 나은 환경을 제공하지 않

:: 을까 생각중입니다.

::

:: sem.h 를 수정하고 나면 커널에 그냥 반영시킬 방법은 없습니다. 반드시 커널을 재 컴파일한 후에 rebo

:: oting 을 해 주는 수 밖에 없습니다. 커널 컴파일 방법은 이곳에서 모두 설명드리기에는 무리일 것 같

:: 고, http://kldp.org 에 가시면 좋은 문서들이 많이 있습니다. 이곳을 참고로 하시기 바랍니다.

::

:: >>조창훈 님께서 쓰시길<<

::

:: :: 안녕하세요.

:: :: 저는 서울교육방송에 근무하고 있는 조창훈이라는 사람입니다.

:: :: 다름이 아니고 이번에 오라클을 ML360서버(memory 2G, hard 18G, cpu xeon two processor)에 깔았

:: 습니

:: :: 다.(웹서버와 오라클서버는 따로입니다.)

:: :: 시스템은 레드헷 6.2 배포판(커널 2.2.14)입니다.

:: :: 근데 문제는 오라클은 문제없이 깔고 서버도 별이상없이 돌아가는데 사용자수가 갑자기 늘어나게

:: 되면

:: :: 서버가 갑자기 느려지는겁니다.

:: :: 그래서 init[sid].ora파일에서 shared_pool_size를 좀더 많이 잡아주었습니다.

:: :: 그리고 나서 오라클 startup을 하니 다음과 같은 에러가 뜨는겁니다.

:: :: SVRMGR> startup;

:: :: ORA-27123: unable to attach to shared memory segment

:: :: Linux Error: 22: :N@{@}GQ @N<v

:: :: 곰곰히 생각해 보니 오라클을 설치할때 리눅스커널에서 IPC파라미터를 적절하게 설정하지 않고 디

:: 폴트

:: :: 로 깔아서 공유메모리가 부족해서 그런것이 아닌가하는 생각이 들었습니다.

:: ::

:: ::

:: :: 잠깐 문서의 한부분을 보여드리면,

:: :: "다음의 위치에 존재하는 커널 매개변수를 설정

:: :: /usr/src/linux/include/asm/shmparam.h

:: :: /usr/src/linux/include/linux/sem.h

:: :: # 공유메모리 세그먼트의 최대크기(SHMMAX)

:: :: # 공유메모리 세그먼트의 최소크기(SHMMIN)

:: :: # 시스템 내 공유 메모리 세그먼트들의 최대개수(SHMMNI)

:: :: # 사용자 프로세스 하나가 사용할수 있는 공유메모리 세스먼트의 최대개수(SHMSEG)

:: :: # 한개의 세마포어 세트에 존재할수 있는 세마포어의 최대개수(SHMMSL)

:: :: # 시스템 전체에서 할당할 수 있는 공유메모리 세그먼트의 최대 개수(SHMMNS)

:: :: # 한번의 semop call당 처리작업의 최대 회수(SEMOPM)

:: :: # 세마포어의 최대값(SEMVMX)

:: :: 허용 가능한 전체메모리의 크기는 다음과 같이 얻어진다.

:: :: SHMMAX * SHMSEG

:: :: 다음 표의 내용은 디폴트 initsid.ora 파일에 기반한 인스턴스 하나를 위한 권장 값이다. 만약 하

:: 나

:: :: 이상의 인스턴스를 인스톨 한다거나 initsid.ora 파일을 수정한다면 이 파라미터들을 변경해야 한

:: 다.

:: ::

:: :: 파라미터 권장값 설명

:: :: SHMMAX 4294967295 한 개의 공유 메모리 세그먼트의 최대 크기 (바이트 단위로서, 4GB를 의미한다)

::

:: :: SHMMIN 1 한 개의 공유 메모리 세그먼트 최소 크기(바이트 단위)

:: :: SHMMNI 100 공유 메모리 식별자의 개수

:: :: SHMSEG 10 한 개의 프로세스에 연결될 수 있는 공유 메모리 세그먼트의 최대값

:: :: SEMMNS 200 시스템 내 세마포어의 개수

:: :: SEMMNI 100 시스템 내 세마포어 셋 식별자의 개수. SEMMNI는 어느 한 순간에 동시 사용될 수 있는

:: 세

:: :: 마포어의 개수를 결정한다.

:: :: SEMMSL PROCESSES+10. 한 개의 세마포어 세트에 존재할 수 있는 세마포어의 최대 개수. initsid.or

:: a

:: :: 의 PROCESSES+10으로 설정한다. 릴리스 8.1.5의 PROCESSES의 디폴트값은 50이다.

:: :: SEMOPM 100 한번의 semop call당 처리작업의 최대 회수

:: :: SEMVMX 32767 세마포어의 최대값

:: :: 이러한 내용들을 커널에 반영시키기 위해서는 소스 패키지의 내용을 고친 후에 커널을 컴파일 해야

:: 한

:: :: 다. 이 같은 작업에 대해서는 여기에서 자세히 설명할 수 없으므로, Linux 운영체계와 관련된 서적

:: 이나

:: :: 문서를 참조하기 바란다.

:: :: 앞으로 진행하게 될 오라클 8i 서버 설치의 경우 개인적으로 사용할 데이터 베이스를 생성하게 될

:: 것

:: :: 이며, 이를 위해서 SHMMAX를 4GB까지 잡을 필요는 없다. 참고로 RedHat의 기본 설정값은 16MB이다.

:: 차

:: :: 후 규모있는 데이터베이스 운영을 하고자 하는 경우에는 규모에 따라 반드시 반영을 하도록 한다.

:: 그리

:: :: 고 현재 사용중인 파라미터 값이 위의 표에서 제시한 값보다 큰 경우에는 그 값을 그대로 사용하는

:: 것

:: :: 이 좋다. 위에서 제시한 값은 오라클 8i를 위해서 필요한 최소한의 필요값이므로 다른 애플리케이

:: 션을

:: :: 함게 사용한다면 더 큰 값이 필요할 수도 있다."

:: :: 이렇게 나와 있습니다.

:: :: 따라서 저도 "/usr/src/linux/include/asm/shmparam.h"과 "/usr/src/linux/include/linux/sem.h"

:: 파일

:: :: 을 위의 설명대로 고칠려고 했더니 커널컴파일을 해야 된다고 나와 있더군요..

:: :: 즉, 이두개의 파일을 수정하는데 커널에 반영시키는 방법을 몰라서 이렇게 글을 쓰게 된겁니다. 커

:: 널

:: :: 을 업그레이드 하는것은 알겠는데 커널은 바꾸지 않고 단지 변경사항만 반영을 시킬려면 어떻게 해

:: 야

:: :: 하는지 좀 가르쳐 주셨으면 합니다. (제생각은 이게 C언어니까 그냥 컴파일처리만 하면 되는건지?)

::

:: :: 제가 너무 아는게 없어서 그러니 양해바라며 꼭좀 답변부탁드립니다.

:: :: 그럼이만..

:: ::

 

오라클에서 공유메모리를 사용하는 것때문에 커널을 수정하라는 말은 있지만 이에 대해서는 성공한 사례를 아직 못본듯. 솔라리스에서는 간단하게 된다는데요. 오라클 테크넷에 올라온 간단한 설치 자료말고 오라클 설치 가이드라는 정식 문서에는 공유 메모리 크기에 대하여 어떻게 계산을 하면 되는지 상세하고 설명이 되어있습니다. 근데 리눅스에서는 해볼려고 해도 잘되지가 않더군요. 국내 오라클테크넷에도 이에 대해 수많은 질문은 올라와있지만 답변은 없죠.

[Top]
No.
제목
작성자
작성일
조회
2952proc*c 테스트 컴파일시에 에러...좀 고쳐 주세요...고수님..
이청열
2001-02-12
3252
2953┕>[추가] 몇개 수정했지만 안되여...=_-;;
이청열
2001-02-12 03:30:02
3091
2957 ┕>Re: [추가] 몇개 수정했지만 안되여...=_-;;
소몰이
2001-02-12 11:53:07
4099
2950다른곳에 설치를..
chobo oracle
2001-02-12
2263
2967┕>Re: 다른곳에 설치를..
정재익
2001-02-12 15:16:33
2238
2988┕>Re: 다른곳에 설치를..
우성곤
2001-02-13 12:32:49
2508
2946MSSQL과 연동시에도 proC를 사용하나요?
전병제
2001-02-11
2242
2947┕>Re: MSSQL과 연동시에도 proC를 사용하나요?
이기태
2001-02-11 23:35:54
2342
2951 ┕>Re: Re: MSSQL과 연동시에도 proC를 사용하나요?
전병제
2001-02-12 02:27:33
2273
2959  ┕>Re: Re: Re: MSSQL과 연동시에도 proC를 사용하나요?
소몰이
2001-02-12 11:57:40
2275
2964   ┕>Re: Re: Re: Re: MSSQL과 연동시에도 proC를 사용하나요?
전병제
2001-02-12 14:12:09
2367
2973   ┕>Re: Re: Re: Re: MSSQL과 연동시에도 proC를 사용하나요?
이기태
2001-02-12 19:20:10
2709
2945오라클 설치시 리눅스 커널의 설정
조창훈
2001-02-11
3629
2948┕>Re: 오라클 설치시 리눅스 커널의 설정
정재익
2001-02-12 01:50:43
3314
2954 ┕>Re: Re: 오라클 설치시 리눅스 커널의 설정 -&gt; 성공사례는 못찾은듯..
문태준
2001-02-12 09:52:11
3299
2944오라클 8.1.7에서 인터미디어 인덱스 문제.. 해결좀 해주세요..
김원철
2001-02-11
2388
2941NESTED LOOPS 란 무엇인가요?
whatisid
2001-02-10
2135
2949┕>Re: NESTED LOOPS 란 무엇인가요?
정재익
2001-02-12 01:52:29
3046
2940오라클 계정으로 바꾼후 x 윈도우가 안뜹니다.
김재철
2001-02-10
2389
2943┕>Re: 오라클 계정으로 바꾼후 x 윈도우가 안뜹니다.
문태준
2001-02-11 17:12:30
3358
2989┕>Re: 오라클 계정으로 바꾼후 x 윈도우가 안뜹니다.
우성곤
2001-02-13 12:40:13
2213
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.019초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다