데이터베이스 첫걸음 5장

이제우·2023년 10월 25일
0

MySQL과 커넥션 만들기

로그인의 의미

MYSQL을 설치한 후 처음 접속하면 로그인을 한다. 로그인을 성공하면 Welcome이라는 메세지가 나오고 mysql>이라는 문자가 표시된다. 이와 같은 문자를 프롬프트라고 읽으며 MySQL이 사용자의 명령을 받을 수 있는 상태를 의미한다. 이렇게 로그인에 성공하면 사용자가 MYSQL에 연결되었다는 의미로 커넥션이라고 부른다.

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

DBMS에는 커넥션의 상태 등을 조사하기 위한 명령어가 있는데 MySQL 같은 경우는

show status like 'Threads_connected;

로 알 수 있다.

이와 같이 MySQL에 로그인한 사용자가 표시된다.

반대로 커넥션을 끊고 싶다면 로그오프를 하면된다. 로그오프 명령어는

quit

으로 실행할 수 있다.

관리명령이란

관계형 데이터베이스에는 SQL언어가 있다고 2장에서 언급했는데, SQL언어 이외에도 DBMS가 정상적으로 동작하는 지 검사하거나 장애가 발생했을 때의 정보수집용 등으로 사용하는 관리명령이 있다.

show status like 'Uptime' //가동된 후 경과시간

show status like 'Queries' //실행한 sql문의 수

이러한 관리명령은 두가지 중요한 점이 있다.
1. DBMS는 SQL문 외에도 관리명령이 있다.
2. 관리명령의 종류나 문법은 DBMS마다 다르다.

SQL문은 데이터베이스 공통으로 사용할 수 있지만 이러한 관리명령은 데이터베이스마다 다르다.
따라서 방금 사용한 show status like 'Queries' 같은 명령어를 오라클에서 사용하려하면 오류메세지를 받게된다.

관리명령과 SQL언어를 구분하는 두가지 방법
1. SQL언어는 SELECT, UPDATE, INSERT, DELETE, UPDATE 중 하나로 시작한다.
2. 이외의 방법으로 시작하면 대부분 관리명령이다.
예외가 있지만, 90%는 이 방법으로 알 수 있다.

관계형 데이터베이스 계층

데이터베이스도 계층으로 나누어져 있다. 순서대로 인스턴스, 데이터베이스, 스키마, 테이블 순이다.
이 계층은 트리구조로 상위의 계층이 여러개의 하위 계층을 가질 수 있다.
이렇게만 보면 간단한 계층이지만 현실에는 데이터베이스마다 차이가 있다. PostgreSQL, SQL server, DB2는
이 계층을 잘 지키고 있다. MySQL, ORACLE은 이 계층에서 데이터베이스와 스키마를 동일하게 간주한다.

이런 3계층과 4계층 중 맞는 계층은 4계층이다. ANSI에서 표준으로 결정되었기 때문이다.

profile
게으른 사람 중에 제일 부지런하게 사는 사람이 꿈

0개의 댓글