데이터베이스 19

[데이터베이스] Oracle, MySQL, PostgreSQL 차이점

https://velog.io/@jisoo1170/Oracle-MySQL-PostgreSQL-차이점은 Oracle, MySQL, PostgreSQL 차이점은? 각 DB의 차이점을 알아보자 velog.io 1. Oracle (성능 최상, 가격도 최상) ㆍ 대규모 데이터베이스에 특화 ㆍ고성능 트랜잭션 처리 제공 ㆍSQL 실행시 가장 효율적인 방법 선택 (Cost 최소화하기위해 Table, Index 분석하여 최적의 방법으로 수행) 2. MySQL(성능 준수, 오픈소스) ㆍtop n개의 레코드 조회시 성능 좋음 ㆍupdate성능이 postgre보다 우수 ㆍNested Loop Join만 지원(Hash Join 미지원..) join 대상 테이블의 row를 하나 하나 비교하며 join하는 방식 - 중첩 루프문과 ..

데이터베이스 2020.12.03

[MySQL] 프로시저 활용 캘린더 생성 실습(IF, ELSEIF, WHILE, TRANSACTION)

쿼리를 짜다보니 한번씩 캘린더가 필요한 때가 있다. 검색해보니 동적으로 날짜를 생성해주는 쿼리도 있었다. 아래 쿼리는 2020년1월의 날짜를 출력하는 쿼리이다. 1 2 3 4 5 6 7 8 9 10 11 12 select a.Date from ( select curdate() - INTERVAL (a.a + (10 * b.a) + (100 * c.a)) DAY as Date from (select 0 as a union all select 1 union all select 2 union all select 3 union all select 4 union all select 5 union all select 6 union all select 7 union all select 8 union all selec..

데이터베이스 2020.02.27

[MySQL] 유저 생성 및 권한 부여

로컬접속 유저 추가 1 CREATE USER '아이디'@'localhost' identified by '비밀번호'; cs 어디서든 접속 가능한 유저 추가 1 CREATE USER '아이디'@'%' identified by '비밀번호'; cs 모든 권한 추가 1 2 3 4 5 GRANT ALL PRIVILEGES ON 데이터베이스.* TO '아이디'@'localhost' GRANT ALL PRIVILEGES ON 데이터베이스.테이블 TO '아이디'@'%' GRANT ALL SELECT, INSERT, UPDATE ON 데이터베이스.테이블 TO '아이디'@'localhost' GRANT ALL SELECT ON 데이터베이스.테이블 TO '아이디'@'%' cs 유저를 먼저 만들고 유저의 아이디와 접속위치에 따..

데이터베이스 2019.09.24

[MySQL] 데이터베이스 기본 인코딩 UTF8

테이블 생성시, 기본 인코딩을 UTF8로 설정 1 CREATE DATABASE 이름 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; cs 이미 생성된 데이터베이스의 언어 인코딩 UTF8로 변환 1 ALTER DATABASE 이름 DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; cs 참고 : https://appletree.or.kr/blog/notes/mysql의-기본-인코딩default-encoding을-utf8으로-설정하기/ MySQL의 기본 인코딩(default encoding)을 UTF8으로 설정하기 2005 12월 11 아래에 소개될 방법은 MySQL 4.1.x에 적용될 수 있으며, 자세한 내용은 MySQL..

데이터베이스 2019.09.24

[Oracle] 1. SQL DDL, DML, DCL 이란

SQL, 그리고 DDL, DML, DCL 이란 무엇인가를 짚고 넘어가보자. 1. SQL (Structured Query Language) SQL 이란 데이터베이스에 Query를 요청하기 위한 구조화된(Structured) 언어(Language)이다. Query란 질의어 라고하며, 데이터베이스 혹은 정보 시스템에 정보 요청을 할 수 있는 컴퓨터 언어이다. 쉽게 말하면, Query란 DB 혹은 정보시스템에 질문하기위한 언어 SQL은 Query를 구조화 시킨 언어 원래는 각 정보시스템 마다, 데이터베이스마다 질의어가 달라서 시스템 구성을 변경하게 되면 질의어를 다시 배워야 했다고 한다. 하지만 각 데이터베이스 회사의 협업(?)을 통해 SQL을 어느정도 통일되어 SQL만 공부하면 왠만한 데이터베이스에서 추가적인..

데이터베이스 2019.09.11

[Oracle] Tablespace 만들기

1. TABLESPACE 생성 1 2 3 4 5 6 7 8 9 10 CREATE TABLESPACE MY_SPACE DATAFILE 'MY_SPACE' SIZE 2048M AUTOEXTEND ON NEXT 4M MAXSIZE UNLIMITED LOGGING PERMANENT EXTENT MANAGEMENT LOCAL AUTOALLOCATE BLOCKSIZE 8K SEGMENT SPACE MANAGEMENT MANUAL FLASHBACK ON; Colored by Color Scripter cs Tablespace의 이름을 MY_SPACE로, 크기는 2G 이며 초과시 자동으로 4M씩 증가 2. USER생성 1 2 3 4 CREATE USER JWKIM IDENTIFIED BY JWKIM1234 DEFAUL..

데이터베이스 2019.08.13

[MySQL] MySQL 외부접속 허용 설정

서버 환경 Ubuntu 14.04 LTS PHP 7.1.0 Apache Web Server 2.4.7 MySQL 5.5.62 원격 접속 환경 Windows 10 64bit Mysql WorkBench 8 로 ubuntu mysql서버에 접속하려고 하니 Failed to Connect to MySQL at \[server ip:3306\] with user ...라는 오류가 발생했습니다. 1. mysql server listen ip 대역 확인 mysql server 의 listen ip 대역을 확인하기 위해 아래 명령어를 실행합니다. sudo net stat -ntlp | grep mysqld 결과 tcp 0 0 127.0.0.1:3306 0.0.0.0:\* LISTEN 7931/mysqld2. LIST..

데이터베이스 2019.03.21

[MySQL] mysql server timezone 한국으로 설정하기.

timezone이란? 한국은 표준시(대한민국 표준시 - KST)를 하나의 시간대(timezone)만 사용하지만 미국처럼 영토가 넓은 국가들은 timezone이 여러개 있습니다. 또한 각 타임존 역시 2종류로 나누어 집니다. (타임존의 약자에 S가 들어가면 겨울의 시간, D가 들어가면 서머타임이 적용될 때의 시간대 입니다.) 그리고 '그리니치 천문대'가 있는곳의 시간은 UTC 입니다. 그래서 예를들어 UTC-8 은 그리니치 천문대가 있는위치. 즉 세계협정시에서 8시간을 뺀 시간이라는 의미 입니다. (하이픈이 아니라 마이너스 부호임) KST는 UTC+9입니다. 그리고 미국 캘리포니아주의 LA는 겨울에는 태평양 표준시인 PST(UTC-8) 을 사용합니다. 하지만 섬머타임에는 PDT(UTC-7)을..

데이터베이스 2018.12.31