쌍용 강북 교육센터 국비학원 Day 22일차
6개월 교육과정 중 약 한 달정도의 자바 기초과정을 듣고 다음으로 배우는 것은 DataBase 이다.
DataBase 중에서는 Oracle을 중점으로 교육하신다고 하셨다. 얼핏듣기로는 그래도 자바보다 DB쪽이 상대적으로 쉽다는 말들이 많았었는데 어떻게 될지 궁금하다. 이제부터 DB 시작 !
DataBase
어떤 가치가 있는 정보를 데이터(Data) 라고 한다. ex) 회원정보, 제품정보, 주문정보 등등 Data를 저장시켜 놓은 집합체를 DataBase(데이터베이스) 라고 한다.
관계형 데이터베이스 (Relation DataBase)
-> 데이터를 열(Column, Field) 과 행(Row, Record, tuple) 으로 이루어진 테이블(Table, entity, 개체) (엑셀의 표와같은) 형태로 저장시켜 놓은 데이터베이스를 뜻한다.
관계형 데이터베이스 관리 시스템 RDMS (Relation DataBase Management System) 의 종류
ORACLE, MySQL - (오라클)
MS SQL Server - (Microsoft)
DB2 - (IBM)
마리아DB, 인포믹스 등등
우리는 이중에서 ORACLE에 대해서 배워볼 것이다.
localhost 는 컴퓨터 자신의 IP를 가르키는 것이고 localhost 와 동일한 것이 127.0.0.1 이다. 이것을 loop back address 라고 부른다. localhost:1521 에서 1521은 오라클 리스너 포트번호이다. (IP뒤에붙는 port 번호)
툴을 사용하기 전 CMD (명령프롬포트) 에서 SQLPlus 기본 명령어를 알아본다.
C:\Users\user>sqlplus /nolog
(=> 오라클 명령프롬프트인 SQL> 을 띄워라는 말이다.)
SQL*Plus: Release 18.0.0.0.0 - Production on 목 2월 2 14:10:09 2023
Version 18.4.0.0.0
Copyright (c) 1982, 2018, Oracle. All rights reserved.
SQL> show user
(=> 현재 오라클 서버에 연결된 사용자가 누구인지 나타낸다.)
USER은 ""입니다
(=> 현재 오라클 서버에 연결된 사용자가 없다는걸 나타냄.)
SQL> connect system/gclass
(=> 오라클 사용자 계정명은 system 이고, 암호는 gclass 인 것으로 연결한다.)
연결되었습니다.
SQL> show user
USER은 "SYSTEM"입니다
(=> 현재 오라클 서버에 연결된 사용자는 SYSTEM 이다.)
SQL> disconnect (disconnect는 disconn으로 줄일 수 있다.)
(=> 현재 오라클 서버에 연결된 사용자를 오라클 서버에서 연결을 끊는다.)
Oracle Database 18c Express Edition Release 18.0.0.0.0 - Production
Version 18.4.0.0.0에서 분리되었습니다.
SQL> connect system/kjkjsfda (connect는 conn으로 줄일 수 있다.)
ERROR:
ORA-01017: 사용자명/비밀번호가 부적합, 로그온할 수 없습니다.
SQL> host
(=> 잠시 운영체제의 명령프롬프트로 이동)
Microsoft Windows [Version 10.0.19045.2486]
(c) Microsoft Corporation. All rights reserved.
C:\Users\user>exit
(=> 다시 오라클 명령프롬프트로 돌아간다.)
SQL> host cls
(=> 잠시 운영체제의 명령프롬프트로 가서 운영체제의 명령어인 cls(clear screen - 화면지우기)를 실행)
SQL> conn sys/gclass
ERROR:
ORA-28009: SYS(SYSDBA 또는 SYSOPER)로 접속해야 합니다.
(=> sys 로 연결을 하려면 반드시 뒤에 as SYSDBA 를 꼭 붙여야 한다
=> SYS 가 오라클 데이터베이스 관리자 (정) 계정이다.
SYSTEM 은 오라클 데이터베이스 관리자 (부) 계정이다.)
SQL> shutdown immediate
(=> shutdown immediate 은 오라클 DB서버를 구동중지 (종료)시키는 명령어이다.)
ORA-01031: 권한이 불충분합니다
(=> 오라클 데이터베이스 관리자(부) 계정인 SYSTEM 은 오라클 서버를 구동중지 또는 구동시작을 할 수 있는 권한이 없다.)
=== sys로 연결해 shutdown 후 다시 연결할 때 ===
SQL> conn system/gclass
ERROR:
ORA-01034: ORACLE not available (=> 오라클 서버가 구동중지 되었으므로 사용불가하다.)
ORA-27101: shared memory realm does not exist
프로세스 ID: 0
세션 ID: 0 일련 번호: 0
경고: 이제는 ORACLE에 연결되어 있지 않습니다.
SQL> conn sys/gclass as sysdba
휴지 인스턴스에 접속되었습니다.
(=> 현재 오라클 서버가 구동이 중지되어진 상태에서 sys 로 연결되었다는 말이다. sys 는 오라클 서버가 구동중지 되어진 상태이더라도 연결이 가능하다.)
SQL> startup (=> 오라클 서버를 구동시켜주는 명령어이다. sys 가 이것을 할 수 있다.)
ORACLE 인스턴스가 시작되었습니다.
Total System Global Area 1610610664 bytes
Fixed Size 9029608 bytes
Variable Size 788529152 bytes
Database Buffers 805306368 bytes
Redo Buffers 7745536 bytes
데이터베이스가 마운트되었습니다.
데이터베이스가 열렸습니다.
(=> sys 를 제외한 나머지 모든 오라클 사용자 계정은 반드시 오라클 서버가 구동되어야만 연결하여 사용할 수 있다.)
SQL> select * from dba_users;
(=> sqlplus 를 사용하여 DB를 다루고자 할 때 결과물과 같이 나오므로 다루 힘들다. 그러므로 ORACLE DataBase 를 손쉽게 다룰 수 있는 툴인 sqldeveloper를 사용한다.)
이후 Oracle 설치와 sqldeveloper 환경설정으로 오늘은 여기까지.
'DB > Oracle' 카테고리의 다른 글
쌍용강북교육센터 국비 학원 Day 27일차 Oracle (Sub Query, JOIN) (0) | 2023.02.09 |
---|---|
쌍용강북교육센터 국비 학원 Day 26일차 Oracle (GROUP BY, HAVING, GROUPING, ROLLUP) (0) | 2023.02.08 |
쌍용강북교육센터 국비 학원 Day 25일차 Oracle (VIEW, 그룹함수) (0) | 2023.02.07 |
쌍용강북교육센터 국비 학원 Day 24일차 Oracle (Primary Key, Sequence, Like 연산자, 단일 행 함수) (0) | 2023.02.06 |
쌍용강북교육센터 국비 학원 Day 23일차 Oracle (HR 스키마 활용하기, Oracle, sqldevelop) (0) | 2023.02.03 |