오늘은 늦지않게 와서 강의를 듣기 좋게 책상 위치도 좀 손보고 편하게 들을 준비를 하였습니다.

다른 수강생분들이 좀 늦으셔서 살짝 기다렸다 시작을 했습니다.


<오늘 들었던 강의 중간에 1시간 분량 중 반 이상을 한번 작성중에 날려먹어서 맨탈이 무너졌습니다. 양해바랍니다.>


========================================  1  ========================================

[ 19 : 00~ 20 : 05 ] 



Process 부터 이론수업을 강의자료로 진행하셨습니다.


간단히 이론 수업 후 실습을 진행하였습니다.   



show parameter memory_target 

사진 1-1 >


show parameter sga_target


사진 1-2 > 

0인 이유는 전체 자동 설정이 되어있어서라고 설명을 해 주셨습니다.


사진 1-3> 

이번에도 역시 0으로 보입니다.


사진 1-4>


AMM ( 자동 메모리 관리 )


http://docs.oracle.com/en/ 


Database > (팝업에 동의) > 버전 선택 > browse    

URL주소=>        http://docs.oracle.com/cd/E11882_01/nav/portal_booklist.htm    


Database Concepts

http://docs.oracle.com/cd/E11882_01/server.112/e40540/toc.htm


예전에는 자동의 개념이 거의 없었습니다. shared pool, DB cash, buffer cash등을 모두 수동으로 설정을 했습니다. 하지만 이런 경우 미리 설정된 메모리의 크기가 적당하지 않아 너무 크거나 작으면 여러가지 문제가 생기며 그것을 해결하기 위해 automatic shared memory management가 생겼다고 하셨습니다.


수동으로 하나하나 설정을 해 가면, 각 항목의 크기를 확인할 수 있습니다. 강사님께서 간단하게 memory_target, sga_target의 크기를 0으로 설정을 해 가며, 실습을 보여주셨습니다.


Oracle Storage Architecture 부분 강의자료를 참고하여 수업해주셨습니다.



실습을 또 이어 진행했습니다.


3. 데이터베이스의 물리적 구조를 조회한다.


1) 데이터베이스의 표준 블록 크기를 조회한다.


SQL> show parameter DB_BLOCK_SIZE


2) 데이터베이스 이름을 조회한다.


SQL> show parameter db_name


사진 5>



3) 테이블스페이스 이름을 조회한다.


SQL> SELECT tablespace_name FROM dba_tablespaces;


사진 6>



4) 테이블스페이스, 데이터 파일 이름을 조회한다.


SQL> COLUMN tablespace_name FORMAT A10

SQL> COLUMN file_name FORMAT A50

SQL> SELECT tablespace_name, file_name FROM dba_data_files;


사진 7>



COLUMN 명령은 COL로 FORMAT은 FOR로 축약을 해서 사용할 수 있습니다.

5) users 테이블스페이스에 데이터 파일을 추가하고, 추가된 내용을 조회한다.


SQL> ALTER TABLESPACE users ADD DATAFILE

     '/u01/app/oracle/oradata/orcl/users02.dbf' SIZE 10M;

사진8>


6) HR 사용자의 세그먼트를 조회한다.


SQL> COLUMN segment_name FORMAT A25


SQL> SELECT segment_name, tablespace_name, extents, blocks, bytes

FROM dba_segments

     WHERE owner='HR';

사진9>



7) HR 사용자의 익스텐트를 조회한다.


SQL> SELECT segment_name, extent_id, bytes, blocks 

     FROM dba_extents

     WHERE owner='HR';

사진 10>


<추가실습>

create table hr.test as select * from hr.employees;

insert into hr.test select * from hr.test; --10번 실행


사진 11>


위에서 진행한 7) HR 사용자의 익스텐트를 조회한다.

SQL> SELECT segment_name, extent_id, bytes, blocks 
     FROM dba_extents
     WHERE owner='HR';

다시한번 조회를 해 봅니다.

사진 12>


OS Block Size를 가지고 질문을 해 준 분이 계셨습니다. DB의 Block Size는 OS의 Block과 상관관계가 있다고 하셨습니다. 그 이유는 예를 들어 설명을 해 주셨는데, 4KB의 DB Blcok, 8KB의 OS Block이면, DB에서 1개의 Block만 읽기를 요청해도 OS는 8KB를 읽어오게 됩니다. 요청하지 않은 다른 이웃한 같이 읽어오는 Block을 사용하지 않으면 낭비이기 때문이라고 하셨습니다.




========================================  2  ========================================

[ 20 : 15~ 21 : 50 ] 


강의시 컨디션 관리에 대한 이야기를 하시면서 일찍자고 일찍일어나는 생활 페턴을 권하셨습니다. 게임도, 영화도 보고싶고 하지만 그것을 일찍 자고 일찍 일어나서 해 보라고 하시면서, 아침에 일찍 일어나서 맑은 정신으로 게임을(???) 해 보라고 하셨습니다. 물론 게임을 하고 싶지 않을 것이라고도 하셨습니다.

<사진 1>




<사진 2>


<사진 3>


<사진 4>


<사진 5>

controlfile 에 대한 이론수업 및 실습 



리두 로그 파일에 대한 이론수업과 실습 진행 


강의자료 사진촬영본 1>



1. Linux에서 0racle DB 및 설치된 S/W 삭제

  

1) 시작되어 있는 모든 프로세스를 종료한다.


$ lsnrctl stop


$ emctl stop dbconsole


$ sqlplus / as sysdba


SQL> shutdown immediate;

SQL> exit


2) $ORACLE_BASE 디렉토리에 있는 설치 파일을 전부 삭제한다.


$ cd /u01/app/oracle


$ rm -rf *


3) root 계정으로 /etc 디렉토리에 있는 oraInst.loc, oratab 파일을 삭제한다.


- 새 터미널 실행

$ su - 

Password: oracle 입력


# cd /etc


# ls ora*

oraInst.loc oratab


# rm -rf oraInst.loc oratab


4) root 계정으로 /usr/local/bin 디렉토리에 존재하는 파일을 모두 삭제한다.


# cd /usr/local/bin


# ls

coraenv dbhome oraenv


# rm -rf coraenv dbhome oraenv


# exit

사진5>



http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html

위에 접속하여 DBMS를 다운로드 합니다.


설명은 리눅스 중심으로 진행 될 예정입니다.


>강의자료 사진 2>


사용하는 OS에 대한 설명을 해 주셨습니다. 



http://oracle-base.com/ 이라는 개인 운영 사이트를 소개 해 주셨습니다.


https://oracle-base.com/articles/11g/oracle-db-11gr2-installation-on-oracle-linux-5

오라클 리눅스를 설치하는 방법에 대한 문서입니다.


public-yum.oracle.com 사이트에서 설정을 해주는 내용에 대해서도 간단하게 설명을 해 주셨습니다. 



========================================  3  ========================================

[ 21 : 15~ 21 : 50 ] 


설치에 대한 설명을 하고 설치를 하는 것이 좋다고 하시면서도 먼저 설치를 하고 추가적인 설명을 해 주시겠다고 하셨습니다.


순서의 경우 다시 설명을 해 주겠다고 하셨습니다.


2. 0racle DB S/W를 설치한다.

(주의) Putty가 아닌 Virtual Box GUI 환경에서 설치


$ cd /stage/database/

$ ls

$ ./runInstaller


사진1>

Oracle 리눅스에서 터미널을 하나 열어줍니다.


사진2>

설치를 해 줍니다. 지금보는 화면은 설치를 위한 점검을 하는 화면입니다.


사진3>

경고창 하나 뜨면 무시합니다 YES하고 넘어가면

사진4>

~ 사진 8>


다음으로 계속 넘깁니다.

사진 9>


DBA로 설정을 해주고 넘깁니다.


사진10, 11>


yum을 쓰면 사용자 만드는 것 까지 진행을 해 준다고 하셨습니다.


oracle그룹 아이디가 oinstall (값 500)으로 되어있습니다. 


Oracle-base 사이트에서 문서를 열어서 설치에 대한 설정 정보를 더 소개해주셨습니다.


그리고 프티에서 경로확인을 했습니다.


사진12, 13>

내용을 조금 복사 해 보면 아래와 같습니다.

# Oracle Settings

umask 022

export ORACLE_HOSTNAME=ocpdba

export ORACLE_UNQNAME=orcl

export ORACLE_BASE=/u01/app/oracle 이 경로 아래 오라클 DB관련 파일들이 설치됩니다.

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1 SW가 설치되는 경로입니다. 바이너리, 라이브러리, 스크립트가 설치됩니다.

export ORACLE_SID=orcl 기본으로 접속되는 인스턴스 이름입니다.

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

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


설정정보를 더 확인 해 보시면서 설명을 해 주셨습니다.



설치가 다 되면 터미널을 하나 추가로 열어줍니다.


root로 로그인 해서 스크립트 2개를 수행하고 닫습니다.

스크립트의 실행은 설치가 완료되면 경로가 열리는데 그 경로를 하나 선택하고 붙여넣기 하면 되고

두번째 스크립트의 경우에는 엔터키를 한번 더 눌러야 합니다.


+ Recent posts