-
MYSQL Ver.01DB 2023. 12. 1. 18:27728x90반응형SMALL
MySQL(마이에스큐엘, /maɪ ˌɛskjuːˈɛl/)[2]은 세계에서 가장 많이 쓰이는 오픈 소스의 관계형 데이터베이스 관리 시스템(RDBMS)이다.다중 스레드, 다중 사용자, 구조질의어 형식의 데이터베이스 관리 시스템으로 오라클이 관리 및 지원하고 있으며, Qt처럼 이중 라이선스가 적용된다.
MySQL은 관계형 데이터베이스 관리 시스템(RDBMS)으로, 데이터베이스를 관리하거나 자료를 관리하기 위한 GUI 관리툴은 내장되어 있지 않다. 따라서 이용자들은 명령 줄 인터페이스 도구들을 이용하거나 또는 데이터베이스를 만들고, 관리하고, 데이터를 백업하는데, 상태를 검사하고, 데이터베이스 구조를 생성하는데, 또는 데이터 레코더를 작성하는데 있어서 MySQL 프론트엔드 데스크톱 소프트웨어나 웹 애플리케이션을 사용해야 한다. 공식적인 MySQL 프론트엔드 툴인 MySQL 워크벤치는 오라클에 의해 개발되었으며, 자유롭게 사용할 수 있다.
1.관계형 데이터베이스 관리 시스템(RDBMS)
관계형 데이터베이스는 서로 관련된 데이터 지점에 대한 접근을 저장 및 제공하는 데이터베이스 유형입니다. 관계형 데이터베이스는 데이터를 테이블에 직관적으로 간단하게 나타내는 관계형 모델을 기반으로 합니다. 관계형 데이터베이스에서 테이블의 각 행은 키라는 고유 ID가 포함된 레코드입니다. 테이블의 열에는 데이터의 속성이 들어 있으며, 각 레코드에는 일반적으로 각 속성에 대한 값이 있으므로 데이터 포인트 간의 관계를 손쉽게 설정할 수 있습니다.
관계형 데이터베이스 예시
소규모 기업에서 제품 주문 처리에 사용하는 두 개의 테이블을 예로 들어보겠습니다. 첫 번째 테이블은 고객 정보 테이블로, 각 레코드에는 고객의 이름, 주소, 배송 및 청구서 정보, 전화번호, 기타 연락처 정보가 담겨있습니다. 정보의 각 비트(각 속성)는 자체 열에 있으며, 데이터베이스는 각 행에 고유 ID(키)를 할당합니다. 두 번째 테이블은 고객 주문 테이블로, 각 레코드에는 주문 고객의 ID와 주문된 제품, 수량, 선택한 사이즈 및 색상 등이 포함되지만 고객의 이름이나 연락처 정보는 포함되지 않습니다.
이러한 두 테이블의 공통점은 ID 열(키)입니다. 그러나 이러한 공통 열 때문에 관계형 데이터베이스는 두 테이블 간에 관계를 생성할 수 있습니다. 회사의 주문 처리 애플리케이션이 데이터베이스에 주문을 제출하면 데이터베이스는 고객 주문 테이블로 이동하여 제품 주문에 대한 올바른 정보를 가져온 다음, 해당 테이블의 고객 ID를 사용하여 고객 정보 테이블에서 고객의 청구 및 배송 정보를 조회할 수 있습니다. 따라서 웨어하우스는 올바른 제품을 가져올 수 있고, 고객은 적시에 주문 상품을 배송 받을 수 있으며, 회사는 대금을 받을 수 있습니다.
잘 알려진 RDBMS의 예로는 MySQL, PostgreSQL, MariaDB, Microsoft SQL Server, Oracle Database가 있습니다.
2.다중 스레드
스레드(Thread)는 CPU 수행의 기본 단위 또는 프로세스 안의 제어권의 흐름이다. 스레드가 수행되는 환경을 Task라고 부르는데, 전통적인 프로세스는 하나의 스레드가 있는 Task와 일치한다.
한 프로세스가 하나의 스레드를 이용하여 한 번에 한 작업만 수행하는 것은 싱글 스레드(Single thread), 한 프로세스가 여러 스레드로 동시에 여러 작업을 수행하는 것은 멀티 스레드(Multi thread)라고 한다.
3.다중 사용자
다중 사용자는 여러 명의 컴퓨터 사용자에 의한 동시 접근을 허용하는 운영 체제나 응용 소프트웨어를 정의하는 용어이다. 메인프레임 컴퓨터를 위한 대부분의 일괄 처리 시스템은 입출력 명령이 끝날 때까지 기다리는 동안 CPU 유휴를 피하기 위한 다중 사용자라고 생각할 수도 있다. 그러나 멀티태스킹이라는 용어가 이러한 환경에서 더 흔히 쓰인다.
4.데이터베이스
데이터베이스(영어: database, DB)는 여러 사람이 공유하여 사용할 목적으로 체계화해 통합, 관리하는 데이터의 집합이다. 작성된 목록으로써 여러 데이터 베이스 관리 시스템(DBMS)의 통합된 정보들을 저장하여 운영할 수 있는 공용 데이터들의 묶음이다.
5.GUI
그래픽 사용자 인터페이스(graphical user interface, GUI)는 사용자가 편리하게 사용할 수 있도록 입출력 등의 기능을 알기 쉬운 아이콘 따위의 그래픽으로 나타낸 것이다.
6.명령 줄 인터페이스
명령줄 인터페이스(CLI)는 Command-Line Interface 또는 Character User Interface의 줄임말로 글자를 입력하여 컴퓨터에 명령을 내리는 방식이다. 가장 대표적인 예시로는 DOS, 명령 프롬프트, bash로 대표되는 Unix 셸 환경이 있다.
7.MySQL 워크벤치
MySQL 워크벤치(MySQL Workbench)는 SQL 개발과 관리, 데이터베이스 설계, 생성 그리고 유지를 위한 단일 개발 통합 환경을 제공하는 비주얼 데이터베이스 설계 도구이다. fabFORCE.NET의 DBDesigner4의 후속 판이며, 이전 소프트웨어 패키지인 MySQL GUI 툴즈 번들을 대체한 것이다.
Keep in Mind That...
- SQL keywords are NOT case sensitive: select is the same as SELECT
In this tutorial we will write all SQL keywords in upper-case.
대소문자 구분안함. 근데 SQL keywords 는 대문자로 쓰면 좋을 수도 있다.
Semicolon after SQL Statements?
Some database systems require a semicolon at the end of each SQL statement.
Semicolon is the standard way to separate each SQL statement in database systems that allow more than one SQL statement to be executed in the same call to the server.
In this tutorial, we will use semicolon at the end of each SQL statement
CREATE DATABASE CREATES A NEW DATA ALTER DATABASE MODIFIES A DATABASE CREATE TABLE CREATES A NEW TABLE CREATE INDEX CREATES AN INDEX(SEARCH KEY) SELECT EXTRACTS A DATA FROM DATABASE UPDATE UPDATES A DATA IN A DATABASE INSERT INTO INSERTS NEW DATA INTO A DATABASE DELETE DELETES DATA FROM A DATABASE DROP TABLE DELETES A TABLE DROP INDEX DELETES AN INDEX - table
- 행(row)과 열(column)로 이루어져 있는 데이터 베이스를 이루는 기본 단위
- Storage Engine
- MyISAM : full text index 지원, table 단위 lock, select가 빠름, 구조 단순
- InnoDB : transaction 지원, row 단위 lock, 자원을 많이 사용, 구조 복잡
- Column
- 테이블의 세로축 데이터
- Field, Attribute 라고도 불림
- Row
- 테이블의 가로축 데이터
- Tuple, Recode 라고도 불림
- Value
- 행(row)과 열(column)에 포함되어있는 데이터
- Key
- 행(row)의 식별자로 사용
728x90반응형LIST'DB' 카테고리의 다른 글
MYSQL Ver.06 (LIKE, %, _ ) (1) 2023.12.04 MYSQL Ver.05 (WEHRE, AND/OR/NOT/IN()) (1) 2023.12.03 MYSQL Ver.04 (WEHRE, BETWEEN AND) (0) 2023.12.01 MYSQL Ver.03 (WHERE, ORDER BY) (0) 2023.12.01 MYSQL Ver.02 (SELECT, WHERE) (0) 2023.12.01