Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL BLOB 컬럼에 저장할 수 있는 데이터의 최대 길이는 얼마일까?

MySQL BLOB 컬럼의 최대 데이터 길이

BLOB(Binary Large Object)은 가변적인 크기의 바이너리 데이터를 저장할 수 있는 MySQL 데이터 타입입니다. 주로 이미지, 동영상, PDF 문서 등 다양한 형태의 이진 데이터를 데이터베이스에 직접 저장할 때 활용됩니다.

BLOB은 저장 용량에 따라 네 가지 종류로 나뉘며, 각 타입마다 저장 가능한 최대 크기와 오버헤드(데이터 길이 정보를 기록하는 데 필요한 추가 바이트 수)가 다릅니다.

BLOB 타입별 최대 저장 용량 비교

BLOB 타입최대 저장 용량오버헤드
TINYBLOB최대 255바이트1바이트
BLOB최대 64KB2바이트
MEDIUMBLOB최대 16MB3바이트
LONGBLOB최대 4GB4바이트

실제 저장 시 알아두어야 할 점

이론적으로 LONGBLOB은 최대 4GB까지 저장할 수 있지만, 실제 환경에서는 서버의 max_allowed_packet 설정값과 클라이언트가 전송할 수 있는 패킷 크기에 따라 제한될 수 있습니다. 따라서 대용량 바이너리 데이터를 다룰 계획이라면 해당 설정값을 함께 확인하고 조정하는 것이 좋습니다.

또한 성능과 관리 측면에서는 대용량 파일을 데이터베이스에 직접 저장하기보다, 파일 시스템이나 객체 스토리지(예: Amazon S3)에 파일 자체를 보관하고 데이터베이스에는 파일 경로나 URL만 저장하는 방식이 더 유리한 경우가 많습니다.