19.04.30 DBMS를 조작할 때 필요한 기본 지식

Back-End/Data Base 2019. 4. 30. 20:38
728x90
반응형

-커넥션-

 

로그인해서 프롬프트가 표시되었다는 것은 로그인 전과 로그인 후로 사용자와 MySQL의 관계가 변했다는 것을 의미합니다.

이는 사용자와 MySQL이 접속되었다. 즉 연결되었다는 뜻입니다.

이 연결이라는 것을 시스템 세계에서는 '커넥션' 이라고 부릅니다.

 

 

 

-프롬프트란?-

 

'사람에게 무언가를 하라고 재촉할때 사용하는 말' 입니다.

따라서 'mysql>'이란 MySQL이 사용자를 향해서 '명령을 입력하라'고 재촉하는 것입니다.

또한, 프롬프트 문자열은 DBMS의 설정을 수정하면 사용자가 좋아하는 문자열로 바꿀 수 있습니다.

 

 

 

-커넥션의 상태를 조사하는 명령-

 

 

  mysql> show status like 'Threads_connected';

 

 

 

 

-로그오프-

 

전화를 거는 것이 '로그인'이라면 전화를 끊는 것에 해당하는 행위는 '로그오프' 입니다.

로그오프를 하면 MySQL과의 커넥션이 끊어집니다.

로그오프 명령은 프롬프트 상태에서 'quit'라고 입력하고 'Enter' 키를 누르면 간단하게 실행됩니다.

 

 

  mysql> quit

 

  Bye 

 

 

 

 

-관리 명령이란?-

 

DBMS는 SQL이외에도 다양한 용도의 명령어를 준비해 두고 있는데, 이것을 '관리 명령' 이라고 합니다.

관리 명령은 DBMS가 정상적으로 동작하는지 감시하거나 DBMS가 이상한 동작을 할 때 문제 해결을 위해

정보수집을 하는 등의 용도로 사용합니다.

해당 명령의 목록은 DBMS의 메뉴얼에 기재되어 있고, 래퍼런스 문서도 있어서 이를 읽어보면 어떠한 정보를 어떤

명령어로 얻을 수 있는지는 알 수 있습니다.

관리 명령에서 중요한 점은 2가지 입니다.

 

 

  *DBMS는 SQL 문 이외에도 '관리 명령'이 있다.

 

  *관리 명령의 종류나 문법은 DBMS에 따라 다르다.

 

 

 

 

-SQL 문과 관리 명령의 구분법-

 

 

  *SQL문은 반드시 'SELECT, INSERT, DELETE, UPDATE' 중 하나의 단어로 시작한다.

 

  *이 외의 단어로 시작한다면 관리 명령이다.

 

  (물론 예외도 있다. CREATE, DROP 등등)

 

 

 

 

-스키마-

 

데이터베이스에서 폴더에 해당하는 개념.

'틀' 이라는 의미입니다.

테이블은 실제로 몇 개의 스키마 속에 저장되는 형식을 취하고 있습니다.

스키마도 폴더처럼 사용자가 자유롭게 만들 수 있어서 용도별로 나누거나

보여주고 싶지 않은 사용자에게는 접근할 수 없도록 제한을 건 스키마를 만드는 등의

관리를 수행하는 것도 가능합니다.

스키마의 상위에는 또 하나의 계층으로 '데이터베이스'가 있습니다.

데이터베이스에는 '계층'을 표시하는 의미도 있기 때문입니다.

 

 

 

-인스턴스-

 

데이터베이스보다 한 층 더 위에 있는 '인스턴스'란 개념이 있습니다.

이것은 물리적 개념으로, DBMS가 동작할 때의 단위입니다.

그래서 OS 입장에서는 '프로세스' 라고도 부릅니다.

DBMS에 따라서는 이것을 '서버 프로세스' 또는 단순히 '서버'로 부르는 경우도 있습니다.

 

 

 

-관계형 데이터베이스의 계층 구조-

 

 

  3계층 : 인스턴스 -> 스키마 -> 테이블 (Oracle, MySQL)

 

  4계층 : 인스턴스 -> 데이터베이스 -> 스키마 -> 테이블 (SQL Server, DB2, PostgreSQL)

 

 

 

 

728x90
반응형
: