- 관리자 권한(root)로 실행하기-- 사용자 추가CREATE USER '사용자명'@'호스트명' IDENTIFIED BY '비밀번호';-- 사용자 삭제DROP USER '사용자명'@'호스트명'-- 사용자의 접속 호스트 제한 풀기: 호스트 명에 '%' 지정-- 권한 관리GRANT ALL PRIVILEGED ON 데이터베이스이름.객체 TO '사용자명'@'호스트명';-- DB의 모든 객체 지정데이트베이스이름.*-- 권한 설정 적용하기FLUSH PRIVILEGES;
데이터베이스
장점검색 속도가 빨라진다시스템의 전체적인 성능 향상단점공간이 추가적으로 필요하다처음 인덱스를 생성할 때 많은 시간이 소요된다데이터 변경 작업인 insert, update, delete가 자주 일어나면(즉 검색 외의 다른 작업들) 성능이 저하된다종류클러스터형 인덱스행 데이터를 본인의 열 기준으로 정렬테이블당 하나만 생성 가능보조 인덱스별도 공간을 추가해 지정한 컬럼만 정렬해서 인덱스 운영컬럼 단위 여러 개의 인덱스 생성 가능자동 생성 인덱스 종류PK 제약 조건 ⇒ 클러스터형 인덱스 자동 생성Unique 제약 조건 ⇒ 보조 인덱스 자동 생성PK 없고 Unique, Not Null 제약조건 설정된 경우 ⇒ 클러스터형 인덱스 생성인덱스 내부 작동 원리B-Tree(Balanced Tree, 균형 트리)데이터를 한..
개념읽기에 포커스 둔다일반 사용자 입장에서는 테이블과 동일하게 사용하는 개체이다.가상의 테이블실제 행 데이터를 가지고 있지는 않다. 즉, 실체 없이 진짜 테이블에 연결(link)된 개념이다.뷰를 SELECT 하면 진짜 테이블 정보를 조회하는 것과 같은 결과가 나온다.뷰 생성USE sqldb;CREATE VIEW v_usertblASSELECT userid, name, addr FROM usertbl;장점보안에 도움이 된다.사용자가 중요 정보에 바로 접근 X쿼리 단순화긴 쿼리를 뷰로 작성하고 뷰를 테이블처럼 사용 가능테이블 스페이스물리적인 공간을 뜻한다.참고로 DB는 논리적 공간이다.테이블스페이스 미지정 시 시스템의 테이블스페이스에 테이블이 저장된다.시스템 변수 inndb_data_file_path에 관련..
데이터베이스, 테이블 만들기DROP DATABASE tabledb;CREATE DATABASE tabledb;USE tabledb;DROP TABLE IF EXISTS usertbl;CREATE TABLE usertbl( userID CHAR(8) NOT NULL PRIMARY KEY, ... height SMALLINT NULL, FOREIGN KEY(userid) RFERENCES usertbl(userID));-- 테이블에 데이터 입력하기.INSERT INTO usertbl VALUES('LSG', '이승기', 1987 '서울', '011', '111111', 182, '2008-8-8');제약 조건데이터 무결성을 위해 제한된 조건을 의미한다.특정 데이터 입력 시 어떤 조건 만족하면 입력..
데이터 타입Blob 형식 : 비정형 데이터LONGBLOB : LOB(Large Object, 대량 데이터) 저장 위해서 사용. 약 4GB를 하나의 데이터로 저장 가능.예: 동영상 파일(큰 바이너리 파일)TEXT 형식LONGTEXT : LOB(Large Object, 대량 데이터) 저장 위해서 사용.예 : 장편소설(큰 텍스트 파일)CHAR(n) : 고정길이 문자형. 1~255 길이 지정 가능VARCHAR(n) : 가변길이 문자형. 1~65535까지 가능.FLOAT : 소수 7자리까지 표현 가능.BIGINT : 정수(-900경~900경)INT : 정수(-21억 ~ 21억)SMALLINT : 정수(-32768 ~ 32767)DECIMAL(m, [d]) : 숫자형, 전체 자릿수 m자리, 소수점 아래 d자리날짜와..
SQL 분류DML (Data Manipulation Language)SELECT, INSERT, UPDATE, DELETE트랜잭션 발생하는 SQL도 DML바로 실제 테이블에 적용하지 않고 임시로 적용취소 가능DDL (Data Definition Language)CREATE, DROP, ALTER트랜잭션 발생시키지 않음ROLLBACK, COMMIT 불가실행 즉시 MySQL에 적용DCL (Data Control Language)GRANT, REVOKE, DENY권한 부여 혹은 빼앗을 때적는 순서SELECT - FROM - WHERE - GROUP BY - HAVING - ORDER BY - LIMIT실행 순서FROM - WHERE - GROUP BY - HAVING - SELECT - ORDER BY - L..
분석 단계무엇을 할 것인지 결정하는 단계데이터베이스 모델링들어갈 데이터가 무엇인지 결정(분석단계)현실 데이터를 어떻게 MySQL에 옮길지 결정하는 과정모델링 과정개념적 모델링 : 업무 분석 단계에 포함논리적 모델링 : 업무 분석 후반부와 시스템 설계 전반부 걸쳐 진행물리적 모델링 : 시스템 설계 후반부에 주로 진행관련 용어데이터 : 단편적인 정보테이블 : 데이터 입력을 표로 표현한 것. 릴레이션, entity set이라고도 부름.DB : 테이블 저장소. 각 DB는 서로 다른 고유한 이름을 가짐.DBMS : DB 관리 시스템/SW열(=컬럼, 필드)열 이름은 테이블 내에서 고유해야 함(중복 X)행(로우, 레코드, 투플) : 실질적인 데이터키 : 하나의 튜플을 고유하게 식별 가능한기본 키중복 불가식별 데이터비..
1. DBMS 개요DB란?데이터의 집합데이터의 저장 공간 자체여러 명/응용프로그램이 공유하는 데이터들동시 접근 가능해야 한다.이런 DB를 관리 및 운영하는 역할을 하는 것이 바로 DBMS!DB/DBMS 특징데이터 무결성시스템 레벨에서 이런 무결성을 제공해줌db 안 데이터는 오류가 없어야 하므로 제약 조건이라는 특성을 가진다.데이터 독립성DB 크기가 바뀌거나 파일 저장소가 바뀌더라도 기존의 응용프로그램은 영향을 받지 말아야 한다.보안DB 안 데이터에 데이터 소유자나 데이터 접근 허가자만 접근 가능해야 한다.접근 시 사용자 계정 따라 다른 권한 가짐데이터 중복 최소화동일 데이터 여러 개 중복 저장된느 것 방지정규화를 통해 중복 없이 관리응용프로그램 제작 및 수정이 용이해진다유지보수도 용이해짐데이터 안전성 향..