Cute Hello Kitty Kaoani

Database/SQL

Database/SQL

[MySQL] 데이터베이스 생성 / 사용자 계정 추가 / 권한 부여

MySQL Command Line Client 실행- MySQL 설치 시 입력했던 비밀번호를 입력하고 접속한다. 데이터베이스 생성 create database DB명 default character set utf8; 데이터베이스가 잘 생성되었는지 확인 show databases; 사용자 계정 추가 # 내부 접근을 허용하는 사용자 create user '사용자'@'localhost' identified by '비밀번호'; # 외부 접근을 허용하는 사용자 create user '사용자'@'%' identified by '비밀번호'; # 특정 ip만 접근을 허용하는 사용자 create user '사용자'@'000.000.000.000' identified by '비밀번호'; 권한 부여 # 모든 데이터베이스의 ..

Database/SQL

[Oracle] SQLPlus 로 계정 생성 및 권한 부여하기

관리자 계정 접속 cmd 에서 sqlplus sys/관리자비밀번호 에러 발생 시, Enter user-name: sys as sysdba Enter password: 관리자 비밀번호 새로운 계정 생성 create user 아이디 identified by 비밀번호; 권한 부여 grant connect,resource,dba to 아이디;

Database/SQL

[SQLD] SQLD 단원별 내용 정리

개념 정리 과목명 장 링크 데이터 모델링의 이해 데이터의 모델링 https://gangintheremark.tistory.com/202 데이터 모델과 성능 https://gangintheremark.tistory.com/203 SQL 기본 및 활용 SQL 기본 https://gangintheremark.tistory.com/209 https://gangintheremark.tistory.com/210 SQL 활용 https://gangintheremark.tistory.com/212 https://gangintheremark.tistory.com/214 SQL 최적화의 원리 https://gangintheremark.tistory.com/215 주관식(단답형) 시험문제 대비 [SQLD 시험 대비] 시험장..

Database/SQL

[SQL] SQL 최적화의 원리

옵티마이저(Optimizer) SQL의 실행 계획을 수립하고 SQL을 실행하는 데이터베이스 관리 시스템의 소프트웨어 동일한 결과가 나오는 SQL도 어떻게 실행하는냐에 따라 성능이 달라짐 옵티마이저 특징 데이터 사전(Data Dictionary)에 있는 오브젝트 통계, 시스템 통계 등의 정보를 사용해 예상되는 비용 여러 개의 실행 계획 중 최저비용을 갖고 있는 계획을 선택해서 SQL 실행 옵티마이저의 필요성 건수가 많은 EMP테이블을 실행하고 찾은 행을 DEPT테이블에서 찾으면 불필요한 비교 횟수가 증가하게 된다. DEPT테이블을 머저 읽고, EMP테이블을 읽게되면 비교횟수를 줄일 수 있다. 옵티마이저는 이러한 실행 계획을 수립하는 것이며, 비효율적으로 실행 계획을 수립하면 옵티마이저에게 실행 계획을 변경..

Database/SQL

[SQLD] SQL 활용 II

윈도우 함수(Window Function) Partition과 Group By 구문은 의미적으로 유사 Partition 구문이 없으면 전체 집합을 하나의 Partition으로 정의한 것과 동일 윈도우 함수 적용 범위는 Partition을 넘을 수 없다 Rank 함수 Rank 함수는 ORDER BY를 포함한 쿼리문에서 특정 칼럼에 대한 순위를 구하는 함수이며 동일한 값에 대해서는 동일한 순위를 부여하며 중간 순위를 비워둔 데이터를 추출한다. 💡 1 1 ➜ 3 ➜ 4 -- 고객별 매출액과 매출순위 SELECT 고객번호, 매출액, RANK() OVER(ORDER BY 매출액 DESC) 순위 FROM ~ GROUP BY 고객번호 -- 활동점수가 높은 고객을 게임상품ID별로 선별 SELECT 게임상품ID, 순위 ..

Database/SQL

[SQLD] SQL 활용 I

순수 관계 연산자 순수 관계 연산자에는 SELECT PROJECT JOIN DIVISION 이 있다. 연산자 기호 표현 의미 SELECT σ σ조건(R) 릴레이션 R에서 조건을 만족하는 투플 반환 ➜ 수평연산 PROJECT π π속성리스트(R) 릴레이션 R에서 주어진 속성들의 값만으로만 구성된 투플들 반환 ➜ 수직연산 JOIN ⋈ R⋈S 공통 속성을 이용해 릴레이션 R과 S의 튜플들을 연결하여 만들어진 새로운 튜플 반환 DIVISION ÷ R÷S 릴레이션 S의 모든 튜플과 관련이 있는 릴레이션 R의 튜플들을 반환 조인(JOIN) [SQL] ANSI 조인 ANSI조인은 모든 DBMS에서 사용 가능한 조인을 의미한다. 여러 테이블을 연결하는 조인 조건을 WHERE 절에 명시하지 않고 다른 방법을 통하여 기술..

Database/SQL

[SQLD] SQL 기본 II

내장 함수 단일행 함수 : 문자/숫자/날짜/변환/조건 함수 다중행 함수 : 집계 함수, 그룹 함수, 윈도우 함수 [SQL] SQL 함수 개요 Oracle SQL 함수의 종류로는 단일행 함수와 그룹함수가 있다. 단일행 함수 모든 행에 대해서 각각 적용되어 행의 개수와 동일한 개수를 반환하는 함수이다. SELECT WHERE ORDER BY 절에 사용 가능하다. 그 gangintheremark.tistory.com 함수의 입력 행수에 따라 단일행 함수와 다중행 함수로 구분 단일행 함수는 SELECT WHERE ORDER BY UPDATE절에 사용 가능 1:M조인이라 하더라도 M쪽에서 출력된 행이 하나씩 단일행 함수의 입력값으로 사용되므로 사용가능 다중행 함수도 단일행 함수와 동일하게 단일 값만 반환 날짜 함..

Database/SQL

[SQLD] SQL 기본 I

SQL 종류 종류 설명 DDL (Data Definition Language) - 관계형 데이터베이스의 구조를 정의하는 명령어 - CREATE ALTER DROP RENAME DML (Data Manipulation Language) - 테이블에서 데이터를 입력, 수정, 삭제, 조회하는 명령어 - INSERT UPDATE DELETE SELECT DCL (Date Control Language) - 데이터베이스 사용자에게 권한을 부여하거나 회수하는 명령어 - GRANT REVOKE TRUNCATE TCL (Transcation Control Language) - 트랜잭션을 제어하는 명렁어 - COMMIT ROLLBACK SAVEPOINT DDL은 스키마, 도메인, 테이블, 뷰, 인덱스를 정의하거나 변경 ..

Database/SQL

[SQLD] 데이터 모델과 성능

성능 데이터모델링 데이터베이스 성능 향상을 목적으로 설계단계의 데이터 모델링 때부터 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것 성능 데이터모델링 특징 데이터의 증가가 빠를수록 성능저하에 따른 성능 개선비용은 증가 데이터모델은 성능을 튜닝하면서 변경이 될 수 있다. 👉 변경하면서 어떠한 구조가 가장 적절한 구조인지 검토 분석/설계 단계에서 성능을 고려한 데이터모델링을 수행할 경우 성능저하에 따른 Rework 비용 최소화 성능이 저하된 결과를 대상으로 데이터모델 보다는 문제발생 시점의 SQL을 중심으로 집중하여 튜닝한다 ❌ 성능 데이터모델링 수행 절차 데이터모델링을 할 때 정규화를 정확하게 수행한다 데이터베이스 용량산정을 수행한다 데이터베이스에 발생되는 트랜잭션의 유형을 파악한다 용량과..

Database/SQL

[SQLD] 데이터 모델링

데이터 모델링의 이해 데이터 모델링 정보시스템을 구축하기 위한 데이터 관점의 업무 분석 기법 현실세계의 데이터에 대해 약속된 표기법에 의해 표현하는 과정 데이터베이스를 구축하기 위한 분석/설계의 과정 데이터 모델링의 특징 추상화 : 현실세계를 일정한 형식에 맞춰 표현 단순화 : 복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 표현 정확화 : 애매모호함을 배제하고 누구나 이해 가능하도록 정확하게 표현 💡 단추정! 데이터 모델링을 하는 주요 이유 분석된 모델을 가지고 데이터베이스를 생성하여 개발 및 데이터 관리에 사용 업무정보를 구성하는 기초가 되는 정보들에 대해 일정한 표기법에 의해 표현 업무의 흐름을 설명하고 분석 데이터 모델링을 할 때 유의점 중복 : 여러 장소에 같은 정보를 저장하지 않도록 ..

Database/SQL

[Oracle/SQL] SQL Developer 계정 생성

SQL Developer 계정 생성 1. cmd 창에 sqlplus "/as sys dba" 입력 sys계정으로 로그인한다. sys계정은 모든 권한을 가진 계정. 정상 접속이 되었다면 SQL> 으로 바뀐다. 2. 계정 생성 create user 유저명 identified by 비밀번호; 3. 권한 부여 grant connect, resource, dba to 유저명; connect : 사용자가 DB에 접속 가능하도록 resource : 사용자가 객체(테이블, 뷰, 인덱스)를 생성할 수 있도록 dba : 사용자가 시스템 관리에 필요한 모든 권한을 부여할 수 있는 권한 4. 생성한 계정으로 접속

Database/SQL

[SQL] 인덱스 (INDEX)

인덱스(INDEX)는 검색속도를 높이기 위한 기술이다. 해당 테이블의 컬럼을 색인화하여 검색 시 해당 테이블의 레코드를 FULL SCAN 하는 게 아니라 색인화되어 있는 인덱스 파일을 검색하여 빠르게 조회한다. 가장 일반적인 인덱스는B트리 인덱스로서 트리구조로 인덱스를 관리한다. 인덱스 생성 CREATE [UNIQUE] INDEX 인덱스명 ON 테이블( 컬럼[,컬럼] ); 인덱스 삭제 DROP INDEX 인덱스명; 💡 주의) B트리를 구현하는 오버헤드가 크다. 따라서 INDEX는 남발하면 안된다.

gangintheremark
'Database/SQL' 카테고리의 글 목록