hyeonga_code
Database_77_DATABASE DB 연결_SELECT, SHUTDOWN 본문
-- Oracle 구조
-- 데이터베이스 연결
-- 연결 : User process와 데이터베이스 Instance 사이의 통신 경로입니다.
-- 세션 : User process를 통해 이루어지는 데이터베이스 Instance 에 대한 특정 유저를 연결합니다.
-- 사용자가 SQL 명령문으로 User Process에 명령을 내려 서버 프로세서와 연결하여 세션에 요청하여 반환값을 받아옵니다.
-- SELECT
-- 1. Parse_구문 분석
-- HARD/SOFT로 나뉩니다.
-- SOFT : 문장도 공유되는 상황입니다.
-- HARD
-- syntax, simentics 체크
-- compile
-- parse tree, execution plan
-- 2. Execute_실행
-- Data Block Read
-- Physical Read_물리적 I/O
-- FROM DISK
-- 데이터베이스에서 가져와서 버퍼 캐시에 일시적으로 저장하며 불러옵니다.
-- Logical Read_논리적 I/O
-- FROM Memory
-- 일시적으로 버퍼 캐시에 저장된 데이터를 불러옵니다.
-- Empty Undo Block Read
-- Exclusive Row Lock : 커밋/롤백하는 경우 해제됩니다.
-- Redo Log 기록
-- 실제 수정
-- Before Block에서 Undo Block으로 옮긴 후 New Block에서 Data Block으로 옮깁니다.
-- 3. Fetch
-- 화면에 데이터를 출력합니다.
-- 메모리에 저장되어있는 데이터를 가져오는 역할입니다.
-- SELECT에만 존재합니다.
------------------------------------------------------------------------------------------
-- MySQL
-- mysql에는 기본 데이터베이스가 여러개입니다.
-- 소규모 db는 db 아래에 table이 들어갑니다.
-- 오라클은 하나의 db안에 여러 개의 table space가 존재합니다.
-- mysql에서의 db역할과 동일합니다.
------------------------------------------------------------------------------------------
/*
-- 접속 계정 변경
SQL> connect / as sysdba
Connected.
-- 현재 접속 계정 확인
SQL> show user
USER is "SYS"
-- 종료
SQL> exit
Disconnected from Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
-- sql 실행
C:\Users\itbank>sqlplus
SQL*Plus: Release 11.2.0.2.0 Production on 화 7월 18 14:05:41 2023
Copyright (c) 1982, 2014, Oracle. All rights reserved.
-- 관리자 계정으로 로그인
Enter user-name: / as sysdba
Connected to:
Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Production
*/
-- 데이터베이스 종료
-- SHUTDOWN
-- 옵션
-- NORMAL : 모든 세션이 종료될 때까지 대기합니다.
-- TRANSACTIONAL : 모든 트랜잭션이 종료될 때까지 대기합니다.
-- IMMEDIATE : 모든 세션을 강제 종료한 후 진행합니다.
-- ABORT : 데이터베이스를 비정상적으로 종료합니다.
/*
-- 데이터베이스 종료(normal)
SQL> shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
-- 데이터베이스 재시작
SQL> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2260048 bytes
Variable Size 687866800 bytes
Database Buffers 373293056 bytes
Redo Buffers 5517312 bytes
Database mounted.
Database opened.
-- 종료와 반대로 실행됩니다.
-- 데이터베이스 비정상 종료
SQL> shutdown abort
ORACLE instance shut down.
-- 데이터베이스 재시작
SQL> startup
ORACLE instance started.
Total System Global Area 1068937216 bytes
Fixed Size 2260048 bytes
Variable Size 687866800 bytes
Database Buffers 373293056 bytes
Redo Buffers 5517312 bytes
Database mounted.
Database opened.
*/
-- 제어판 > 관리도구/window tools > 서비스
-- OracleServiceXE : 자동 : 윈도우 서버 시작 시 Oracle DB가 자동으로 시작합니다.
-- 잘못 종료하여 데이터베이스 loggon이 안되는 경우
-- OracleServiceXE를 재시작합니다.
/*
논리적 물리적
스키마 << 데이터베이스
테이블 스페이스 >> 데이터 파일
세그먼트
Extent
Oracle 데이터 블록 >> OS 블록
-- 세그먼트
-- 테이블 + 인덱스
-- 테이블 스페이스
-- 어느 한 시점에서 데이터베이스 하나에만 속할 수 있습니다.
-- 하나 이상의 데이터 파일로 구성됩니다.
-- 여러 논리적 저장 영역 단위로 분할됩니다.
-- 데이터 파일
-- 한 테이블스페이스 및 한 데이터베이스에만 속할 수 있습니다.
-- 스키마 객체 데이터의 저장소입니다.
*/
'Oracle Database' 카테고리의 다른 글
Database_79_DATABASE_DB 구축 실습 (0) | 2023.08.29 |
---|---|
Database_78_DATABASE DB_테이블 스페이스 (0) | 2023.08.28 |
Database_76_ORACLE 구조_ORACLE DBMS, COMMIT 처리, CKPT (0) | 2023.08.27 |
Database_75_정규화 (0) | 2023.08.27 |
Database_74_데이터베이스 설계_E-R 모델 (0) | 2023.08.26 |