@lim
기억은 기록기록

Gatsby 배포 시 Github Page 커스텀 도메인 초기화 해결

November 03, 2024

한 줄 요약 : static 폴더에 도메인을 적은 CNAME 파일을 넣는다. Gatsby 블로그를 Github Pages로 배포할 때 설정한 커스텀 도메인이 사라지는 문제가 발생했다. 배포 브런치의 CNAME 파일을 참조하는데 배포할 때마다 없어지기 때문 ( 라든가...) 이걸 배포할 때마다 노가다 해주는 건 이상하잖아! 처음 찾았던 방법은 3가지였다.…


Linux Samba 설치 및 설정

October 28, 2024

삼바(Samba)는 윈도우와 유닉스 계열 같이 타 시스템 간의 피일이나 프린터 자원을 공유할 수 있도록 도와주는 유닉스 계열 프로그램이다. 마이크로소프트와 인텔에서 개발한 SMB(Server Message Block) 네트워크 프로토콜을 사용한다. 현재는 CIFS(Common Internet File System)로 확장되어 있다고 한다. 1. 설치 2.…


[Real MySQL] 6. 데이터 압축

October 05, 2024

데이터 파일의 크기가 커지면 발생 할 수 있는 문제들 쿼리 처리 성능 증가 백업 및 복구 시간 증가 저장 공간 사용에 따른 비용 증가 InnoDB 버퍼 풀에 더 많은 데이터 페이지 로드 필요 더티 페이지의 잦은 디스크 기록 → 압축을 활용할 수 있음 압축 장점 디스크 공간 절약 I/O 감소로 성능 향상 가능 메모리 사용량 감소 압축 단점 CPU 사용량 증…


MySQL의 격리 수준

September 20, 2024

트랜잭션의 격리 수준 격리성(isolation)은 트랜잭션 수행 시 서로 간섭하지 않도록 보장하는 특성을 말한다. 이러한 격리성은 여러 개의 격리 주순으로 나뉘게 된다. 격리 수준(isolation level)이란 여러 트랜잭션이 동시에 처리될 때 특정 트랜잭션이 다른 트랜잭션에서 변경하거나 조회하는 데이터를 볼 수 있게 허용할지 말지를 결정하는 것이다.…


[Real MySQL] 5. 트랜잭션과 잠금

September 07, 2024

1. 트랜잭션 트랜잭션은 데이터베이스의 상태를 변화시키는 하나의 논리적 작업 단위 ACID(원자성, 일관성, 고립성, 지속성) 특성을 보장 데이터의 일관성을 유지하고 안정적인 데이터 처리를 가능케 함 → 부분 업데이트(Partial Update) 현상을 방지 잠금(Lock)과 트랜잭션 잠금 : 동시성을 제어가 목적 트랜잭션 : 데이터의 정합성을 보장이 목…


[Real MySQL] 4.4. 로그 파일

August 31, 2024

에러 로그 파일 (Error Log) 위치: MySQL 설정 파일(my.cnf)의 log_error 파라미터로 정의된 경로 주요 정보 MySQL 시작 과정 관련 정보 및 에러 메시지 InnoDB의 트랜잭션 복구 메시지 (비정상 종료 후 재시작 시) 쿼리 처리 중 발생하는 문제에 대한 에러 메시지 비정상적으로 종료된 커넥션 메시지 (Aborted conne…


[Real MySQL] 4.3. MyISM 스토리지 엔진

August 30, 2024

MyISAM 특징 MyISAM 테이블의 인덱스는 키 캐시를 이용하여 빠르게 검색이 가능하다. 데이터에 대해서는 자체적인 캐시나 버퍼링 기능이 없다. 따라서 데이터의 읽기/쓰기는 항상 운영체제의 디스크 I/O로 처리된다. Key cache (키 버퍼) InnoDB의 버퍼 풀과 비슷한 역할을 수행한다. 인덱스만들 대상으로 작동된다. 캐시 히트율 계산 키 캐스…


인텔리제이 Live Template을 활용한 테스트 코드 템플릿 단축키

August 20, 2024

given / when / then test 코드를 만들 때 3가지 단계로 작성한다. given : 테스트시 주어지는 값 when : 값을 통해 주어지는 조건 then : 테스트 부분 아마 대부분의 개발자 or 강의에서도 거의 동일할 것이다. 인텔리제이의 키워드로 출력 메서드가 완성되듯이 만들어 보자. (사실 다른 곳에 세팅할 때 잊어버릴까봐 적는다.)…


MySQL InnoDB의 자동 데드락 감지

August 18, 2024

개요 데드락(Deadlock, 교착 상태) : (Database에서는) 두 개 이상의 트랜잭션이 동시 진행될 때 특정 자원에 잠금을 획득한 채 다른 트랜잭션이 소유하고 있는 잠금을 요구하면서 서로 무한정 기다리는 상태를 의미한다. InnoDB는 기본적으로 데드락 감지 기능이 활성화되어 있다. 자동으로 데드락을 감지하여 트랜잭션을 강제 종료(롤백) 한다. …


[Real MySQL] 4.2. InnoDB 스토리지 엔진

August 17, 2024

InnoDB 스토리지 엔진 아키텍처 InnoDB 구조 (출처) 8.0 버전부터 기존 스토리지 엔진으로 사용 레코드 기반 잠금 제공 → 높은 동시성 처리 가능 프라이머리 키에 의한 클러스터링 기본적으로 InnoDB의 모든 테이블은 프라이머리 키를 기준으로 클러스터링 되어 저장한다. PK Value의 순서대로 디스크에 저장된다. PK가 클러스터링 인덱스 이…