본문 바로가기

교육/Oracle

Day 26 (Oracle12c install - vmware&linux)

반응형

1. 리눅스 하드웨어 설정

 

보통 프로그램설치는 엔지니어가 하지 않는다. 판매사에서 메뉴얼을 주지 않고 엔지니어를 파견하여 설치하게 한다.

권장메모리는 2GB이다. swap공간은 memory 2배이상으로 잡는다.

 

 

2. 계정설정

 

설치 계정 : ora12c (UID : 1200)

소속 그룹 : dba (GID : 1200)

 디렉토리 : /home/ora12c 

계정을 따로 생성하는 이유는 메뉴얼상 root계정은 프로그램 설치를 하지 못한다. 왜냐하면 root 가장 위험한 계정이기 때문이다. 또한 기본적으로 관리계정과 사용계정은 달라야 한다. 지금 생성하는 계정은 관리계정이다.

 

 

설치 과정 중에 $ORACLE_BASE /app/ora12c 사용하는데 이로 인해 oraInventory 디렉토리가 /app 만들어짐으로 ora12c 계정이 /app 디렉토리에 대해서 소유권과 쓰기 권한을 갖도록 설정해야 한다.

 

소속 그룹은 반드시 일치해야 한다. 왜냐하면 자체 인증 시스템이 없기 때문이다. 따라서 보안상에 문제가 생기면 oracle사는 책임이 없는데 인증 자체를 하지 않기 때문이다. dba그룹안에 있는 계정들은 모두 데이터 베이스 관리자들이라고 메뉴얼링 되어있다.

 

ORACLE_BASE 오라클에 관련된 모든 파일들이 들어가 있다. oraInventory 설치시 임시 생성소이다.ORACLE_HOME 다른 계정은 접속이 불가능하게 권한을 주게되면 다른 프로그램이랑 연동이 불가능 하다

 

3. 리눅스 설정

 

ORACLE 서버를 설치할 이름을 /etc/hosts 등록한다도메인 이름을 정하게 되면 추후 수정이 불가능 해진다. 오라클서버의 ip주소를 적는다.

/etc/security/limits.conf에서 리소스를 제한 시킨다

앞쪽에는 계정명제한방식은 soft hard방식이 있다. soft방식은 허용량 이후에 경고 하는 방식이고 hard방식은 허용량 이후에 실행자체를 시키지 않는것이다방식을 적용시킬 내용은 nproc, nofile, stack 3가지가 있는데 nproc 최대 프로세서의 갯수, nofile 한번에 열수있는 파일 갯수, stack 사용가능한 메모리의 양이다.

 

vi /etc/sysctl.conf windows 레지스트리 편집기와 유사하다커널 파라미터의 설정값을 입력하는 설정파일이다메뉴얼에 있는 값이므로 임의의 값을 사용할  없고 정해진 값만 사용가능하다설정값을 적용시키려면 시스템을 재시작 해야하지만 sysctl -p 이용해 설정값을 다시 메모리로 로드하여 적용할수있다. 설정값 세팅시 error 발생하면 다시 설치해야 한다.

 

/etc/selinux/config 사용해 selinux 사용을 중지시키고, ntsysv에서 firewalld.service 사용을 중지시킨다.

 

그후 yum 이용해 다음의 추가 패키지들을 설치한다.

여기까지가 root 해야할 설정들이다.

 

4. ora12c계정 설정

이후에는 오라클의 관리자 계정인 ora12c계정에서  설정들이다.

vi .bash_profile에서 oracle사용에 관한 SHELL설정을 한다.

export ORACLE_HOSTNAME=DB12.itclass.co.kr // 오라클의  디렉토리에 연결할 도메인을 적는다.
export TMP=/tmp  // 임시 저장소로 tmp라는 디렉토리를 사용한다.
export TMPDIR=$TMP  //TMPDIR /tmp 사용하겠다.
export ORACLE_OWNER=ora12c // 오라클관리자는 ora12c 하겠다.
export ORACLE_BASE=/app/ora12c // ORACLE_BASE디렉토리는 뒤의 경로로 사용하겠다.
export ORACLE_HOME=/app/ora12c/12c //ORACLE_HOME디렉토리는 뒤의 경로로 사용하겠다.
export PATH=$PATH:$ORACLE_HOME/bin:$ORACLE_HOME:/usr/bin  //  콜론(:)으로 구분된 디렉토리들의 목록이다쉘은 명령어를 찾을  마다  디렉토리들을 순서대로 검사한다.
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib:/lib:/usr/lib  //  콜론(:)으로 구분된 디렉토리들의 목록이다쉘은 라이브러리를 찾을  마다  디렉토리들을 순서대로 검사한다.
export ORACLE_SID=DB12 //SID 지정한다
export NLS_LANG=AMERICAN_AMERICA.KO16MSWIN949 // 글자코드는 사용환경에 맞춰 입력한다.
export ORACLE_TERM=xterm //
export TNS_ADMIN=$ORACLE_HOME/network/admin //TNS관리자를 정한다.
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib // 자바클래스 검색은 다음 디렉토리들을 순서대로 검사한다.
export EDITOR=vi // shell명령어에 대한 값을 수정해준다.
    if [ $USER = "ora12c" ]; then //user ora12c일때 수행한다
        if [ $SHELL = "/bin/ksh" ]; then // shell 콘쉘일때 수행한다.
            ulimit -p 16384 // 프로세스의 갯수 제한
            ulimit -n 65536 // 파일 갯수의 제한
        else
            ulimit -u 16384 -n 65536 // -u 프로세스 갯수 제한 -n 파일 갯수 제한
        fi
    fi

 

환경파일 설정후 적용되기 위해선 재로그인이 필요하다.

 로그인후 env | grep ORACLE 적용된 환경변수를 확인한다.

 

 

5. 설치용 패키지 준비 : 유닉스용 데이터베이스 압축파일을 받고 ora12c계정에 권한을 주어 압축을 해제한다.

xwindow에서 ftp 이용하여 다운받았다.

 

 

반응형

'교육 > Oracle' 카테고리의 다른 글

Day 28 (Oracle)  (0) 2019.12.26
Day 27(oracle)  (0) 2019.12.24
Day 26 ( Oracle12c 계정 생성 및 DBserver)  (0) 2019.12.24
Day 26(Oracle install - linux&xwindow)  (0) 2019.12.24
Oracle 12C  (0) 2019.11.28