0319 RAC

현스·2024년 3월 19일

RAC

목록 보기
9/12
post-thumbnail

▣ 예제7. dbca 로 데이터 베이스 생성하기

어제 만들었던 리눅스 os 의 소프트웨어 설치후 이미지를 올리시면 됩니다.

오라클 소프트웨어 설치 ----------> db 생성

※ db 생성하기 전에 미리 챙겨야할 중요한 사항들

  1. 스토리지를 3가지중에 어떤것을 하는지 ?

    1. raw device ---> create database 스크립트로 db를 생성

    2. file system ---> dbca

    3. asm ---> dbca

  2. character set 은 기존에 설치된 database 와 동일하게 할것인지 ?
    (데이터 이행시 굉장히 중요한 사항 )

  3. 설치와 문제해결 팀

  4. 데이터 이행 팀

  5. 기존 db 유지보수팀

  6. si dba 팀

    기존 database 의 character set 을 확인해야함.

    select * from database_properties;

KO16MSWIN949 ------------------> KO16MSWIN949

AL32UTF8 ------------------------> AL32UTF8

데이터 이행시 가장 쉽게 할 수 있는 데이터 이행방법이

TTS ( Transportable TableSpace ) pump 사용해서 이행하는 방법

이때 주의할 사항 character set 이 서로 맞아야합니다.

서로 charater set 이 틀리면 OGG 를 써서 데이터 이행을 합니다.

  AS-IS DB --------------------------------------> TO-BE DB
                       OGG(oracle golden gate)
   ORACLE                                                 ORACLE 

만약에 스토리지가 raw device 면 다음과 같이 스크립트로 수행하는데

create database PROD
user sys identified by oracle
user system identified by oracle
datafile '/raw/raw1/raw11'
size 100M autoextend on maxsize unlimited extent management local
sysaux
datafile '/raw/raw1/raw12'
size 50M autoextend on maxsize unlimited
default temporary tablespace temp
tempfile '/raw/raw1/raw13'
size 50M autoextend on maxsize unlimited
undo tablespace undotbs
datafile '/raw/raw1/raw14'
size 50M autoextend on maxsize unlimited
logfile
group 1 ('/raw/raw1/raw15',
'/raw/raw1/raw16') size 100M,
group 2 ('/raw/raw1/raw17',
'/raw/raw1/raw18') size 100M,
group 3 ('/raw/raw1/raw19',
'/raw/raw1/raw20') size 100M,
group 4 ('/raw/raw1/raw21',
'/raw/raw1/raw22') size 100M,
group 5 ('/raw/raw1/raw23',
'/raw/raw1/raw24') size 100M;

■ db 생성 실습

#1. 리눅스 켜고 모바텀에 oracle 유져로 접속합니다.

#2. DISPLAY 환경을 export 합니다. (내 윈도우의 아이피 주소로 export 합니다. )

$ export DISPLAY=192.168.19.7:0.0

$ dbca

완료 !

#3. 유져 생성하기

1) 12c 버전 이후부터 사용자 생성 작업을 할 때 아래의 명령어를 수행해야 합니다.

_oracle_script 로 하게 되면 생성되는 사용자가 공통 사용자임을 가정하고 여러 데이터 베이스 컨테이너에 걸쳐 존재할 수 있는 사용자이다 라고 설정하는 것입니다.

SQL> alter session set "_oracle_script"=true;

Session altered.

SQL> create user scott identified by tiger;

User created.

grant dba to scott;

문제1. 데이터 베이스 모드를 아카이브 모드로 변환하시오

SQL> shutdown immediate;

SQL> alter database archivelog;

Database altered.

SQL> alter database open;

Database altered.

문제 2. rman 으로 접속

문제 6. scott 의 emp 테이블을 export pump 받습니다

$ expdp scott/tiger directory=DATA_PUMP_DIR dumpfile=emp.dmp tables=emp

문제7. scott 유져로 접속해서 emp 테이블을 휴지통에 넣지 말고 drop 하시오

SQL> drop table emp purge;

Table dropped.

문제8. export 받은 펌프 파일로 복구 하시오

$ impdp scott/tiger directory=DATA_PUMP_DIR dumpfile=emp.dmp tables=emp

문제 9. 확인

■ 12c 이후부터 혁신적인 변경된 oracle database 기능

컨테이너 DB 라는 개념이 생겼습니다.

ORACLE multitenant 아키텍쳐에서 Pluggable database(PDB) 를 생성
DB 생성을 손쉽게 하고 PDB 간의 데이터 이행도 하는 기능이 생겼다.

※ ORACLE multitenant 아키텍쳐 장점

  1. 비용 절감 : 라이선스 비용, 저장공간, 메모리 사용량을 절감할 수 있는 효과
  2. 빠른 프로지져닝 복제가 가능 : PDB 를 생성하고 복제하는 작업이 매우 빠르고 간단
  3. 향상된 성능 모니터링 : CDB 내의 모든 PDB 에 대한 성능 모니터링 및 분석을 하나의 인터페이스에서
    수행할 수 있다 (EM 사용)

■ 실습

#1. PDB 가 뭐가 있는지 확인 합니다

SQL> select name from v$pdbs;

#2. file_name_convert 파라미터 를 조회 합니다.

pdb_file_name_convert <----pdb 생성 시 데이터 파일 경로 변환 규칙을 설정합니다.

#3. pluggable database 를 생성하시오

SQL> create pluggable database jhsdb admin user sys identified by oracle_4U;

ERROR at line 1:
ORA-65001: missing or invalid administrative user name

pdb 관리자를 만들어야 한다고 에러가 났다.

그럼 다음과 같이 수행한다.

SQL> create pluggable database jhsdb admin user hradmin identified by tiger roles=(dba);

SQL> select name, open_mode, open_time from v$pdbs;

#4. pdb jhsdb 를 open 시키시오

SQL> alter pluggable database jhsdb open read write;

#5. 이제 부터 jhsdb 를 사용하겠다 라고 지정하고 사용한다.

SQL> alter session set container=jhsdb;

SQL> show con_name

#6. 현재 가지고 있는 datafile 들을 확인하시오 !

SQL> select tablespace_name, file_name from dba_data_files;

#7. 리스너를 올리고 리스너의 상태를 확인합니다

[orcl:~]$ lsnrctl start

[orcl:~]$ lsnrctl status

#8. jhs2 라는 이름으로 pluggable db 를 생성하시오

SQL> create pluggable database jhsdb2
admin user hradmin2 identified by tiger roles=(dba);

21c database 생성한 이미지를 ova 파일로 내보내기를 하세요 !

profile
˗ˋˏ O R A C L E ˎˊ˗

0개의 댓글