DBMS로 MySQL을 사용한다.
커넥션 : 사용자와 MySQL이 연결된(접속된) 상태.
즉, 사용자가 로그인하여 명령 프롬프트가 표시된 상태
커넥션이 유지되는 동안(로그인)만 사용자가 데이터베이스를 사용할 수 있다.
: MySQL에서는 동시에 여러 개의 커넥션을 유지할 수 있다.
: 위를 관리하기 위해 connection id를 사용한다.
: 커넥션을 끊을 때(로그오프) quit 명령을 사용한다.
세션 (Session)
: 커넥션 유지 중 DBMS와의 교환의 시작-종료 단위
: 커넥션이 확립된 후 세션이 만들어진다
: 커넥션과 세션은 1:1로 대응되며, 공존하는 경우가 많기에 보통 잘 구분하지 않는다.
컨넥션 상태 조사
: show status 명령어를 이용, 커넥션의 상태나 수를 조사한다.
관리 명령은 사용하지 않는 단어(이 책에서 정의한 단어).
DBMS마다 호칭이 다르거나 명명되지 않는 경우 있음
관리 명령
: 데이터 조작 도구 이외의 명령들의 총칭. 종류와 문법은 DBMS마다 다르다
EX1) DBMS가 정상적으로 동작하는지 감시한다.
EX2) DBMS에 이상이 생겼을 때 문제 해결을 위해 정보를 수집한다.
관리 명령 vs SQL
: SELECT, INSERT, UPDATE, DELETE 중 하나의 단어로 시작하면 SQL
: 위의 경우에 해당되지 않는다면 관리 명령
트리 구조로 구성되어, 상위 계층에는 다수의 하위 계층이 존재할 수 있다.
인스턴스- 데이터베이스 - 스키마 - 테이블로 구성된다.
인스턴스 (Instance)
: DBMS가 동작할 때의 단위. 메모리나 CPU를 사용하는 실체, 물리적 개념
: OS 수준에서 프로세스라고 표현
: DBMS에 따라 서버, 혹은 서버 프로세스라고도 부른다.
스키마 (Schema)
: DB 내부 테이블은 폴더와 비슷한 기능의 스키마로 나뉘어 관리된다.
: 스키마는 용도별로 나누거나, 특정 사용자만 접근할 수 있도록 권한 관리를 수행할 수 있다.
DBMS마다 계층 구현이 다르다!
: PostgreSQL, SQL Server, DB2는 해당 계층 구조를 구현 (4계층)
: MySQL, Oracle은 스키마와 데이터베이스 한 계층을 생략 (3계층)
Ex1 ) MySQL : 인스턴스 - 스키마 - 테이블
Ex2 ) Oracle : 인스턴스 - 데이터베이스 1개로 제약 - 스키마 - 테이블