Database/MySQL(13)
-
[MySQL] 문자 인코딩, 데이터베이스 엔진
1. 문자 인코딩 1) 인코딩 확인 // 기본 인코딩 확인 mysql> STATUS; // 상세 인코딩 확인 mysql> SHOW VARIABLES LIKE 'c%'; // 데이터베이스 인코딩 확인 mysql> SHOW CREATE DATABASE [DB명]; // 테이블 인코딩 확인 mysql> SHOW CREATE TABLE [TABLE명]; mysql> SELECT table_name, table_collation FROM information_schema WHERE [조건]; 2) 인코딩 설정 /etc/my.cnf 파일은 DBMS의 인코딩을 정의하는 파일이다. [client] default-character-set=utf8 [mysqld] default-storage-engine=InnoDB da..
2020.09.29 -
[MySQL] 데이터베이스 스키마
1. 데이터베이스 스키마 (Database Schema) 1) 외부 스키마 (Extended Schema) 사용자의 입장에서 본 데이터베이스의 구조이다. 사용자 또는 응용 프로그램이 질의나 프로그래밍 언어를 이용해 접근하는 데이터베이스를 정의한다. 전체 데이터베이스의 한 논리적 부분을 정의한다. 개념 스키마를 통해 생성되고 지원을 받기 때문에 외부 스키마는 개념 스키마의 부분집합에 해당한다. 2) 개념 스키마 (Conceptual Schema) 조직 전체의 입장에서 본 데이터베이스 구조이다. 전체적인 데이터베이스 구조를 기술하며 개체(Entity), 데이터 유형, 관계 사용자 연선, 제약 조건 등을 정의한다. 일반적으로 스키마라고 한다면 개념 스키마를 의미한다. 3) 내부 스키마 (Internal Sch..
2020.09.29 -
[MySQL] MySQL Client
1. MySQL Client 1) 원격 접속용 계정 생성 mysql> CREATE user test@'%' IDENTIFIED BY 'test'; mysql> FLUSH PRIVILEGES; 2) MySQL 접속 // MySQL Client 설치 yum -y install mysql // 로컬 접속 방법 mysql -u[계정명] -p[비밀번호] [DB명]; // 원격 접속 방법 mysql -u[계정명] -h[DB서버 IP] -p[비밀번호]; 3) phpMyAdmin MySQL을 웹 상에서 관리할 목적으로 PHP로 작성한 오픈 소스 도구이다. 데이터베이스, 테이블, 필드, 열의 작성, 수정, 삭제 또는 SQL 상태 실행, 권한 관리 등의 다양한 작업을 수행할 수 있다. 설치를 위해서는 MySQL 서버에 E..
2020.09.28 -
[MySQL] SQL (DDL, DML, DCL)
1. SQL (Structured Query Language) 1) SQL 구조화된 질의 언어로 DBMS를 관리하고 제어하기 위해 사용하는 인터페이스 또는 언어이다. 데이터베이스로부터 정보를 얻거나 갱신하기 위한 표준 대화식 프로그래밍 언어이다. DBMS에 따라 사용되는 SQL 문법이 다르다. 2) 기본 문법 항목 MSSQL MySQL ORACLE 한줄 주석 -- #, -- -- 범위 주석 /* */ /* */ /* */ 문자열 지정 ' ', " ' 산술 연산자 +, -, *, /, %, ... +, -, *, /, div +, -, *, / 비교 연산자 =, >, =, , !, =, , =, SHOW ERRORS; mysql> SHOW WARNINGS; ※ 기본적으로 제공하는 information_sc..
2020.09.28 -
[MySQL] 키(Key), 무결정 제약 조건
1. 키 (Key) 1) 키 (Key) 정보를 찾는 열쇠로, 데이터베이스에서 조건에 만족하는 테이블을 찾거나 순서대로 정렬할 때 기준이 되는 속성이다. 2) 슈퍼키 유일성의 특성을 만족하는 속성 또는 속성들의 집합이다. 하나의 테이블에서 키로 지정된 속성의 값은 행마다 달라야 한다. 3) 후보키 유일성과 최소성을 만족하는 속성 또는 속성들의 집합이다. 키를 구성하고 있는 여러 속성 중에 하나라도 없으면 행을 유일하게 구별할 수 없는 꼭 필요한 최소한의 속성들로만 구성된 키이다(하나의 속성으로 구성된 키는 최소성을 만족한다.). 슈퍼키 중에서 최소성을 만족하는 것이 후보키가 된다. 4) 기본키 여러 후보키 중에 기본적으로 사용할 키이다. 행을 구별하기 위해 여러 개의 후보키를 사용할 필요는 없다. 후보키가..
2020.09.28 -
[MySQL] 데이터베이스 설계 및 생성
1. 데이터베이스 설계 1) 요구 사항 분석 조직의 구성원들이 데이터베이스를 사용하는 용도를 파악해야한다. 다양한 요구 사항을 수집하고 이를 분석한 결과를 요구 사항 명세서로 작성한다. 2) 개념적 설계 요구 사항을 조금 더 정형화하는 단계이다. 중요한 데이터 요소와 데이터 요소 간의 관계를 표현할 때 사용한다. 일반적으로 ER 모델을 많이 사용하며, 데이터 요소 간의 관계를 ER 다이어그램으로 표현한다. ER 다이어그램과 같이 개념적 데이터 모델로 표현한 결과물을 개념적 구조 또는 개념적 스키마라고 한다. 3) 논리적 설계 개념적 설계 단계에서 생성한 개념적 구조를 기반으로 논리적 구조를 설계한다. 개념적 설계 단계에서 생성한 ER 다이어그램을 테이블 스키마로 변환하여 DBMS가 처리할 수 있도록 하는..
2020.09.28