본문 바로가기

배우기/기록의 중요성

Oracle Linux(7.6)에 Oracle Database(12c) 설치

728x90
반응형

https://metime.tistory.com/381

 

Linux Ubuntu 설치하기(vmware)

1. Ubuntu 설치 파일 다운로드 https://ubuntu.com/download/desktop https://ubuntu.com/download/desktop ubuntu.com 2. Ubuntu 22.04.4 LTS 다운로드(다운로드 오래 걸림) 리눅스는 OS의 일종이며, ubuntu는 종류 중 하나이다. 윈

metime.tistory.com

 

위 글에서 설치한 Oracle Linux에서 Oracle Database를 설치하려고 한다.

 

 

먼저 Oracle 설치 전 준비사항

 

1) root user 변경

관리자 권한 없는 경우) sudo su - root

관리자 권한 있는 경우) su - root

 

 

2) /etc/hosts 파일에 Linux ip와 서버 이름을 순서대로 맨 밑에 입력

 

3) /etc/hostname 파일에 OEL7을 맨 밑에 입력

 

hosts 파일과 hostname은 다른 서버의 이름과 그 서버의 이름에 매칭이 되는 ip들을 관리하는 설정파일이다.

 

4) pre-install 수행 (root 유저로 수행)

oracle 설치 전 요구사항 세팅을 도와줌

 

$ yum install oracle-database-server-12cR2-preinstall -y

$ yum update -y 

 

 

마지막으로 winSCP와 Putty, xmanager 설치

(위 세 개는 네이버에서 검색해서 다운받은 후 Next만 해서 설치하면 됨)

 

Oracle Database 다운로드

https://edelivery.oracle.com/osdc/faces/Home.jspx

 

Oracle Software Delivery Cloud

See a quick, introductory tour of the download process

edelivery.oracle.com

DLP: ORacle Database 12c Enterprise Edition 12.2.0.1.0 클릭

 

 

상단에 Continue 활성화 되면 클릭

 

Oracle Database 12.2.0.1.0 만 클릭하고 Continue

 

 

 

체크 후 Continue

 

 

Download 클릭

 

다운 받은 파일 실행 후 설치 경로 지정한 다음 OK

 

 

다운받는 중

 

 

 

728x90

 

 

 

 

다운이 완료되면, 설치파일을 리눅스 /oracle12 디렉토리로 이동(winSCP 이용)

 

 

전송중

 

 

 

 

5) 압축 해제

/oracle12에 잘 들어왔으면 파일의 압축을 해제

압축 해제: unzip V~.zip

 

 

6) /etc/selinux/config 수정 및 실행

$ vi /etc/selinux/config

SELINUX=permissive 로 변경

$ setenforce permissive

 

 

7) 방화벽 내리기

$ systemctl stop firewalld

$ systemctl disable firewalld

 

 

8) oracle user의 passwd 변경

$ passwd oracle

 

 

9) 오라클 홈 디렉토리 생성 및 권한/소유자 변경

$ mkdir -p /oracle12/app/oracle/product/12.2.0.1/db_1

$ chown -R oracle:oinstall /oracle12

$ chomd -R 775 /oracle12

$ chmod -R 775 /home

 

 

10) xclock 설치

$ yum install -y xorg-x11-apps

 

 

11) oracle 계정으로 접속

su - oracle

 

 

12) .bash_profile에 아래 내용 추가 후 .bash_profile 실행

export TMP=/tmp

export TMPDIR=$TMP

 

export ORACLE_HOSTNAME=OEL7

export ORACLE_UNQNAME=db1

export ORACLE_BASE=/oracle12/app/oracle

export ORACLE_HOME=$ORACLE_BASE/product/12.2.0.1/db_1

export ORACLE_SID=db1

export PATH=/usr/sbin:/usr/local/bin:$PATH

export PATH=$ORACLE_HOME/bin:$PATH

 

export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

export CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib

 

 

$ . .bash_profile

 

 

 

여기까지가 oracle 설치를 위한 준비사항...!

 

 

 

이제 oracle 설치를 해보겠다.

 

 

1. xclock 윈도우 실행

1) window xmanager passive 실행(백그라운드로 실행되어서 아무 창도 뜨지 않음)

2) linex에서 window 연결

   $ export DISPLAY=window ip 입력:0.0

   $ export LANG=C

   $ xclock

 

 

위와 같은 시계가 뜨면 성공

위의 export DISPLAY=윈도우ip다음에 :0.0 꼭 넣어야 함

 

3) cd /oracle12/database 들어간 후  ./runInstaller 실행

 

 

위와 같은 설치 화면이 뜨면, 체크 해제 후 Next

 

 

그대로 Next

 

 

Server class 선택 후 Next

 

 

 

그대로 Next

 

 

Advanced Install 선택 후 Next

 

 

 

그대로 선택 후 Next

 

 

 

그대로 Next

 

 

 

그대로 Next

 

 

 

OLTP용 DB 구축은 위 선택(온라인 지원)

DW용은 아래 선택(대국민 서비스가 아닌 일부 관리자만 접속하여 분석할 때 사용)

우리는 이대로 선택하고 Next

 

 

 

name 변경 후, Create as Container database 체크 해제하고 Next

 

 

 

Sample schemas 탭에서 Install sample schemas in the database 선택

 

 

 

Character sets 탭에서는 Choose from the following list of character sets 선택 후 

KO16MSWIN949 - MS Windows Code Page 949 Korean  선택

 

그리고 Next

 

 

 

ASM: oracle 사가 매번 관리자가 용량 증설하는 게 버거워서 자동으로 용량 관리를 해주는, 자동으로 storage 관리하는 ASM을 개발. 19C에서는 필수임. 우리는 그대로 Next

 

 

 

그대로 Next

 

 

 

Next

 

 

 

전체 비번 같게 설정한 후, 비번 설정 후 Next

 

 

 

세팅된 그대로 Next

 

 

Perform Checks 중

 

 

 

이제까지 설정한 사항 확인 후 Install 클릭

 

 

 

기다리기

 

기다리다 보면 이 창이 뜸.

 

새 터미널 창을 열어 위의 두 shell을 실행

 

orainstRoot.sh는 바로 실행하면 금방 끝남

root.sh는 실행하면, 

Enter the full pathname of the local bin directory [/usr/local/bin]: 이렇게 묻는데, 이 때 그냥 엔터 

 

그 후에 다시, Do you wnat to setup Oracle Trace File Anayzer (TEA) now? yes|[no] : 이렇게 물으면 no 입력 후 엔터

 

그 다음에 위의 창으로 돌아가 OK 버튼 클릭

 

좀 더 기다리면 설치 끝.

 

 

 

 

 

반응형

 

 

 

 

설치 완료되면 리눅스 oracle 계정에서 sqlplus / as sysdba 실행해보기

 

SQL > 이라는 프롬프트가 뜨면 잘 설치가 된 것이다.

 

HR 계정의 패스워드를 초기화 해보자

 

SQL > alter user hr account unlock identified by 비밀번호;

SQL > conn hr/비밀번호;

 

 

그 다음에 listener 정보를 확인해보자lsnrctl status (리스너가 서비스 되고 있다면 그 정보를 알려주는 명령어, 윈도우도 동일함)

 

$ lsnrctl status

 

여기에 내 port 번호도 노출되어있다. 

 

이런 식으로 뜨면 잘 서비스 되는 것이다.

SQL 프롬프트에서 select status from v$instance; 하면 DB 상태도 체크 가능하다.

 

 

즉, 정리하면 다음과 같다.

DB가 서비스 되려면 두 가지 조건이 있다.

1) oracle DBMS 상태가 open이 되어야 한다(no mount > mount > open)

2) DBMS만 open 되고 리스너가 내려가 있으면 local만 접속이 가능하다. 즉 원격접속은 불가하다는 뜻이다.

 

리스너가 떠있는지 확인하는 명령어

$ ps -ef | grep lsnr | grep -v grep

 

DBMS가 올라가 있으면 

ps -ef | grep pmon | grep -v grep

했을 때 ora_pmon_db1이 떠야 한다. (pmon은 프로세스 모니터의 약자)

 

리스너를 재가동 해야 하는 상황이 있다. 

$ kill -9 processID; lsnrctl start

프로세스를 죽이고 다시 리스너를 시작한다는 의미이다.

중지되는 시간을 최소화하기 위하여 명령어를 연속적으로 실행하는 것(;로 명령어 연결)

 

 

노트북에 orange 켜서 리눅스에 설치한 oracle DB에 접속해봤는데 잘 붙었다!

성공성공.

728x90
반응형