본문 바로가기

데이터베이스19

InnoDB Locking 이란 DataBase LockDataBase는 데이터를 영속적으로 저장하고 있는 시스템이다. 이런 시스템은 같은 자원에 대해서 동시에 접근 하는 경우가 생길 수 밖에 없다. 이럴 경우, 데이터가 오염될 수 있는데 그렇게 되지 않도록 데이터의 일관성과 무결성을 유지해야할 필요가 있다. 이럴 때 사용하는 공통적인 방법이 Lock 이라는 것이다. LockLock 이란 트랜잭션 처리의 순차성을 보장하기 위한 방법이다. Lock의 구현 방식과 세부적인 방법은 DBMS마다 다르기 때문에 DBMS를 효과적으로 이용하기 위해서는 DB의 Lock에 대한 이해가 필요하다. 트랜잭션이란더보기트랜잭션이란 DB의 나누어지지 않는 최소한의 처리 단위를 말한다. Lock의 방식Lock의 방식에는 크게 공유(Shared) Lock과 베.. 2025. 5. 12.
Index, Unique Index, Multi-Column Index 차이점 Index인덱스란 WHERE, JOIN, ORDER BY, GROUP BY 등에서 검색 속도를 높이기 위한 정렬된 검색용 자료 구조이다. Database index ⇢ https://en.wikipedia.org/wiki/Database_index Database index - WikipediaFrom Wikipedia, the free encyclopedia Data structure for query optimization in databases A database index is a data structure that improves the speed of data retrieval operations on a database table at the cost of additional writes .. 2025. 5. 9.
데이터베이스 PK 전략 정리 PK(Primary Key) 전략Primary Key (PK)는 테이블 내에서 각 행을 유일하게 식별하는데 사용되는 필드이다. PK는 데이터베이스에서 데이터를 정확하게 조회하고, 수정하며, 삭제하는데 매우 중요하다. 하지만, 특히 대용량 데이터 세트를 처리할 때 각 레코드에 고유한 값을 수동으로 할당하는 것이 실용적이지 않은 경우가 있다. 이 과정을 단순화 하기 위해 SQL 데이터베이스는 지정된 열에 대해 고유한 숫자 값을 자동으로 생성하는 자동 증가 기능을 제공한다. PK를 생성하는 방법은 여러 가지 있지만, 가장 흔히 사용하는 방법은 AUTO_INCREMENT와 UUID 가 있다.지금 설명하는 내용은 MySQL에 관한 PK 전략이다. AUTO_INCREMENTAUTO_INCREMENT 는 MySQL과.. 2025. 5. 9.
SQL, Multi-column INDEX(다중 컬럼 인덱스) 특징 / UNIQUE INDEX INDEX검색 작업의 속도를 향상시키는 데이터 구조 데이터 구조는 해시 테이블(Hash Table) 과 B Tree 로 구현 가능하며 주로 B Tree 에서 파생된 구조로 구현된다.인덱스 역시 데이터 구조이므로 추가적인 쓰기 작업과 저장 공간이 필요하다.장점- 인덱스를 사용하면 데이터 조회 속도가 빨라진다.- WHERE, ORDER BY, MIN/MAX 속도가 빨라진다.- 특정 데이터를 조회 할때 테이블 전체를 조회해야 한다.   하지만 인덱스를 사용하는 경우 인덱스를 기준으로 정렬된 상태로 저장되어 있어 빠르게 찾을 수 있다. 단점- 데이터 구조를 유지하기 위한 비용이 존재한다.- 테이블과는 별개로 추가적인 공간이 필요하고 인덱스가 적용된 열에 INSERT, UPDATE, DELETE 작업 시 정렬, .. 2025. 3. 10.
MySQL, 이클립스 연동하기 MySQL 이클립스랑 연동하기 MVN REPOSITORY 에서 MySQL Connector JAVA 클릭  원하는 버전으로 클릭(사용자 수가 많은 걸로 다운받는 것이 안전하다.)  jar (2.4 MB) 클릭( jar 파일 다운 )   다운받은 jar파일 복사해서 사용하고 싶은 프로젝트 안에 넣기(lib)   propreties 파일 수정 드라이브 주소 : com.mysql.cj.jdbc.driverurl 주소 : jdbc:mysql://localhost:3306/mydb?serverTimezone=Asia/Seoul username = 계정이름password = 설정한 계정 비밀번호 2024. 10. 2.
MySQL, 기본 실행 방법 (실행, Schema 만들기) MySQL 실행 MySQL Connections 더블클릭 - 비밀번호 입력 - OK  MySQL Schema 만들기  아래 모양의 이모티콘 클릭 - schema 이름 원하는대로 설정  Apply - Finish   MySQL 만든 Schema 사용하기 use [schema이름];또는옆 목록에서 더블클릭 2024. 10. 2.