본문 바로가기
데이터베이스/Oracle

[Oracle] 설치 및 설정

by BGwon_C 2023. 7. 31.

Oracle Express 21c 설치 및 관리자 계정 만들기

컴퓨터이름이나 계정이 모두 영문(한글X), 공백X, 반드시 관리자 계정 이어야한다

 

1. 설치
     www.oracle.com

OracleXE213_Win64.zip 압축풀기

           ↓

setup.exe 더블클릭

           ↓

암호 : 『oracle』 입력 (sID : xe 기본설정)

 

2. 확인

① 시작 → 제어판 → 시스템 및 보안 → 관리도구 → 서비스

② 내PC → 우클릭 → 추가 옵션 표시 관리 → 관리 → 서비스 및 응용 프로그램(왼쪽 창) → 서비스

OracleServiceXE                                     실행 중         자동

OracleOraDB21Home1TNSListener       실행 중         자동

 

3. Listener 확인

: 2개의 파일에서 [HOST = pc이름] [PORT = 1521] 확인한다.

 

C:\app\bitcamp\product\21c\homes\OraDB21Home1\network\admin

- listener.ora (서버)

: 클라이언트가 오라클 서버에 접속하기 위해서 서버 컴퓨터에 하는 설정

 

- tnsnames.ora (클라이언트)

: 클라이언트에서 오라클 서버에 접속할 때 필요한 설정

 

💡 ※ 각 주요 플랫폼간 관리자 명칭 :

     윈도우                            리눅스                            오라클
     Administratoro                 root                                 sys
                                                                                    system

 

4. SQL

 

시작 Oracle-OraDB21Home1 SQL Plus

사용자명 입력: system

비밀번호 입력: oracle

 

SQL> show user;

USER"SYSTEM"입니다

 

SID (데이터베이스명) 확인하기

SQL> select name from v$database;

NAME

------------------

XE

 

시작 실행 cmd

C:\Users\user> sqlplus

사용자명 입력: system

비밀번호 입력: oracle

 

또는

C:\Users\user> sqlplus system/oracle

 

 


 

오라클 계정 설정

 

 

 

 

hr 계정 만들기

- 오라클 18c 버전 이후에는 연습용 스키마가 따로 분리되어 있어서 따로 설치해야 한다.

- 반드시 관리자 계정(system)에서 해야 한다

- cmd (관리자 권한으로 실행)

 

스키마 다운로드

https://github.com/oracle-samples/db-sample-schemas/releases

 

압축풀기

 

C:\app\bitcamp\product\21c\dbhomeXE\demo\schema 폴더에 human_resources 복사한다.

 

> sqlplus system/oracle

 

SQL> select * from all_users;

hr계정이 안 보인다.

예전에는 lock으로 설정되어 있어서 unlock으로 풀어 썼지만 지금은 hr 계정이 존재하지 않기 때문에 hr계정을 만들어서 사용해야 한다.

 

SQL> alter session set "_ORACLE_SCRIPT"=true;

세션이 변경되었습니다.

 

hr 계정 생성 시 '올바르지 않은 이름' 오류를 방지하기 위함이다.

 

SQL> @?/demo/schema/human_resources/hr_main.sql

human_resources 폴더가 존재하는 위치

C:\app\bitcamp\product\21c\dbhomeXE\demo\schema\human_resources

 

specify password for HR as parameter 1:

1의 값을 입력하십시오: hr

 

specify default tablespeace for HR as parameter 2: (기본 테이블 스페이스)

2의 값을 입력하십시오: users

 

specify temporary tablespace for HR as parameter 3: (임시 테이블 스페이스)

3의 값을 입력하십시오: temp

 

specify password for SYS as parameter 4: (system의 비밀번호 입력)

4의 값을 입력하십시오: oracle

 

specify log path as parameter 5: (로그 저장 디렉토리 지정)

5의 값을 입력하십시오: $ORACLE_HOME/demo/schema/log

 

specify connect string as parameter 6: (접속 문자열 지정)

6의 값을 입력하십시오: localhost:1521/xe

 

다운로드가 시작된다...................................

 

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_cre.sql"

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_popul.sql"

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_idx.sql"

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_code.sql"

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_comnt.sql"

SP2-0310: unable to open file "__SUB__CWD__/human_resources/hr_analz.sql"

 

SQL>

 

* 마지막에 이런 error가 뜨는 경우

__SUB__CWD__는 현재 디렉토리를 저장하는 변수인데, 제대로 작동하지 못할 수 있다.

그러므로

C:\app\bitcamp\product\21c\dbhomeXE\demo\schema\human_resources\hr_main.sql 파일을 열어서

@__SUB__CWD__ @?/demo/schema로 수정하면 된다.

 

그리고 위의 명령문을 다시 수행한다.

SQL> @?/demo/schema/human_resources/hr_main.sql

 

맨 마지막에 PL/SQL procedure successfully completed. 뜨면 성공이다.

 

SQL> conn hr/hr

연결되었습니다.

 

SQL> show user;

USER"HR"입니다

 

SQL> select * from tab;

 

 

사용자 계정 만들기

- 반드시 관리자 계정(system)에서 해야 한다.

- 계정명 앞에 c##을 붙여야 한다.

 

계정명 : c##java (12c부터)

비밀번호 : 1234

SQL> create user c##java identified by 암호;

SQL> grant create session, create table, create sequence, create view to c##java;

SQL> alter user c##java default tablespace users; -- users 가 테이블스페이스명이다

SQL> alter user c##java quota unlimited on users;

-- UNLIMITED는 사용자가 USERS 테이블스페이스가 완전히 채워질 때까지 데이터를 저장할 수 있음을 지정하는 키워드

 

오라클 사용자 계정 구분

 

 

요약정리 : 

1. 계정

ID: system / pw: oracle 관리자계정

ID: scott / pw: tiger 사용자계정

ID: hr / pw: hr 사용자계정

(pw는 본인이 편한 걸로 바꿔도 된다. 단, 너무 복잡한 비밀번호는 사용않기를 추천)

 

SID: xe

 

2. 콘솔 : cmd 창에서

C:\> sqlplus hr/hr

 

3. 오라클이 구동되지 않을 때 확인할 것

. 시작 설정 제어판 관리도구 서비스

. PC(우클릭) 관리 서비스

OracleServiceXE 시작됨 자동

OracleOraDB21Home1TNSListener 시작됨 자동

 

C:\app\bitcamp\product\21c\homes\OraDB21Home1\network\admin

listener.ora

tnsnames.ora

 

select * from tab; 테이블 목록 확인

select * from user_sequences; 시퀀스 목록 확인

desc employees; describe의 약자(테이블 구조 확인)

 

계정 삭제

: 반드시 관리자 계정(system)에서 해야 한다

 

SQL> drop user 계정명
: 계정에 데이터(테이블)가 없을 경우

 

SQL> drop user 계정명 cascade;
: 계정에 데이터(테이블)가 있을 경우

 


기타 팁들 : 

  • 만약 오라클 접속에 문제가 생기면 여기 참고 → https://eternalteach.tistory.com/26
    • 개인 정보 및 보안 -> 개발자용 -> 개발자 모드
    • 앱 및 브라우저 컨트롤 -> 평판 기반 보호
  • 오라클 SQL Developer 글자 크기 설정 : 도구 → 환경설정 → 코드 편집기 → 글꼴 → 원하는 크기로 설정
  • cmd 한글 깨짐 설정 방법
    • chcp 65001 - 유니코드
    • chcp 949 : 한글 코드
  • 외부에서 나의 특정 포트에 들어올 수 있게 설정하려면 (다른 사람이 내 DB를 가져갈 수 있게) :
        네트워크 → 속성 → Windows Defender 방화벽 → 고급 설정 → 인바운드 규칙 → 새 규칙 → 1521번 포트 설정 → 다음 → 이름 : oracle → 마침
    •  
  • 다운로드 주소

'데이터베이스 > Oracle' 카테고리의 다른 글

[Oracle] DDL / DML / DCL  (0) 2023.08.02
[JDBC] 웹과 오라클DB 연동하기  (0) 2023.08.01
[Oracle] Select문 연습2  (0) 2023.08.01
[Oracle] Select문 연습1  (0) 2023.08.01
[Oracle] 데이터베이스(DB)의 개념  (0) 2023.08.01

댓글