본문 바로가기

MySQL3

[MySQL] InnoDB의 Lock 알아보기 transaction rollback 시 auto increment 이슈에 대해 포스팅을 쓰고 Transaction Isolation level 자체에 대한 지식이 부족하다고 생각되어 포스팅을 쓰게 되었다. *아주 정리가 잘 되어있는 글을 보고 공부를 하였다. Intro ACID 원칙을 철저히 지킬수록 동시성은 낮아진다. ACID 원칙을 희생하여 동시성을 얻을 수 있는데, DB엔진이 제공해주는 isolation level에 따라 다양한 locking 전략을 적용할 수 있다. 이를 적용하면, isolation 원칙에 어긋날수록 문제가 발생할 가능성은 커지지만 동시성을 높일 수 있다. Isolation level ANSI/ISO SQL standard에서 정의한 isolation level은 READ UNC.. 2021. 8. 7.
[MySQL] MySQL의 스토리지 엔진 비교 (InnoDB, MyISAM, Archive) 트랜잭션을 공부하다가 InnoDB가 언급되었는데 거의 이름만 아는 수준이어서 공부를 하게 되었다. 분명 예전에 배운 것 같은데, 어디다 까먹는지 참. 포스팅해놓고 두고 두고 기억하자. MySQL의 엔진 MySQL은 크게 서버 엔진과 스토리지 엔진 두 가지 구조로 되어있다. 서버 엔진 클라이언트가 Query 요청 시, 쿼리 파싱과 스토리지 엔진 데이터를 용청하는 작업을 수행한다. 스토리지 엔진 물리적 저장장치에서 데이터를 읽어온다. 우리가 자주 듣는 InnoDB, MyISAM 등이 여기에 속한다. 스토리지 엔진은 데이터를 직접 다루기 때문에 엔진 종류마다 동작 원리가 다르다. 어제 포스팅했던 트랜잭션이나 성능 이슈와 밀접하기 때문에 꼭! 잘! 알아둬야 한다. 스토리지 엔진의 종류 엔진의 종류는 8가지나 있.. 2021. 8. 4.
JDBC의 MySQL db properties 작성법 JDBC의 MySQL db properties 작성법 JDBC.Driver=com.mysql.jdbc.Driver JDBC.ConnectionURL=jdbc:mysql://URL주소:포트번호/DB명 JDBC.Username=계정명 JDBC.Password=비밀번호 EX) JDBC.Driver=com.mysql.jdbc.Driver JDBC.ConnectionURL=jdbc:mysql://localhost:3306/heetori JDBC.Username=heetori JDBC.Password=heetori 2018. 1. 27.