개발/데이터베이스 6

[mysql] replica 서버 구축하는 목적, 복제방법 w.바이너리 로그

Replication 이란 ? - 한 서버에서 다른 서버로 데이터를 동기화 > 원본 데이터를 가진 서버를 소스 서버 (= 마스터) > 복제된 데이터를 가진 서버를 레플리카 서버 (= 슬레이브) Replica 서버를 구축하는 목적 - 스케일 아웃 : 갑자기 늘어나는 트래픽을 대응하는데 유연한 구조 - 데이터 백업 : > 레플리카를 안하더라도 백업을 해야 한다 > 백업 과정은 실제 실행중인 쿼리들에 영향을 줄 수 있기 때문에, 레플리카 서버에서 데이터 백업을 실행하여 소스 서버에서 백업 시 발생하는 문제들을 해결한다 - 데이터의 지리적 분산 : > 데이터베이스의 애플리케이션 서버가 멀리 떨어져 있다면 응답을 늦게 받게 된다. > 빠른 응답을 위해 애플리케이션 서버에 가깝게 서비스를 구성하는게 좋다. 복제를 ..

트랜잭션의 격리수준 [Real_MySQL_8.0]

트랜잭션의 격리수준이란 여러 트랜잭션이 동시에 처리될 때 특정 트랜잭션이 다른 트랜잭션에서 변경하거나 조회하는 데이터를 볼 수 있게 허용할지 말지 결정하는 것 - DIRTY READ가 발생하는 READ UNCOMMITTED는 일반적인 데이터베이스에서는 거의 사용하지 않고, SERIALIZABLE 또한 동시성이 중요한 데이터베이스에서는 거의 사용되지 않는다. - 4개의 격리 수준에서 순서대로 뒤로 갈수록 각 트랜잭션 간의 데이터 격리(고립) 정도가 높아지며, 동시 처리 성능도 떨어지는 것이 일반적이라고 볼 수 있다. - 격리 수준이 높아질수록 MySQL 서버 처리 성능이 많이 떨어질 것으로 생각하는 사용자가 많은데, 사실 SERIALIZABLE 격리 수준이 아니라면 크게 성능의 개선이나 저하는 발생하지 않..

mysql. timestampdiff

TIMESTAMPDIFF TIMESTAMPDIFF(단위, 날짜1, 날짜2); 단위 SECOND : 초 MINUTE : 분 HOUR : 시 DAY : 일 WEEK : 주 MONTH : 월 QUARTER : 분기 YEAR : 연 ; select min(reg_date), max(reg_date), TIMESTAMPDIFF(MINUTE, min(reg_date), max(reg_date)) from user [MySQL] 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수) ▶MySQL 날짜 차이 가져오기 (DATEDIFF, TIMESTAMPDIFF 함수) ▶설명 MySQL에서 두 날짜간의 차이를 가져올 때 사용하는 함수가 두 가지가 있습니다. 단순히 일 차이를 가져올 때 사용하는 것이 DA..

mysql. create table 속성 정리

MySQL :: MySQL 8.0 Reference Manual :: 13.1.20 CREATE TABLE Statement MySQL 8.0 Reference Manual / ... / SQL Statements / Data Definition Statements / CREATE TABLE Statement 13.1.20 CREATE TABLE Statement CREATE [TEMPORARY] TABLE [IF NOT EXISTS] tbl_name (create_definition,...) [table_options] [partition_opt dev.mysql.com engine - default : InnoDB - InnoDB 트랜젝션 지원 빈번한 쓰기, 수정, 삭제시 처리 능력 디스크, 전원 등..

반응형