MySQL 데이터베이스에 이미지 저장

Preet Sanghavi 2022년1월21일
MySQL 데이터베이스에 이미지 저장

이 튜토리얼에서는 MySQL 데이터베이스에 이미지를 저장하는 방법을 이해하는 것을 목표로 합니다.

표준 SQL은 BLOB(Binary Large Object) 데이터 유형을 사용하여 많은 양의 데이터를 저장합니다.

바이트 또는 옥텟 시퀀스는 일반적으로 MySQL 데이터베이스에 오디오 및 비디오 데이터와 같은 미디어 파일이나 큰 이미지를 저장하는 데 사용되는 바이너리 문자열을 정의합니다. BLOB 값은 요구 사항에 따라 이진 또는 문자열 값으로 쓸 수 있습니다.

이것이 어떻게 작동하는지 이해하려고 노력합시다.

먼저 stu_photograph 열이 있는 student_details라는 테이블을 만듭니다. 여기에서 이미지의 사진은 stu_photograph 열에 저장됩니다.

-- Using the following table as an example:
CREATE TABLE stu_information(
 	stu_photograph BLOB
);

이제 stu_photograph가 이미지를 배치해야 하는 열 역할을 하는 테이블에 학생 사진을 삽입해 보겠습니다.

참고: LOAD_FILE 함수에서 MySQL 데이터베이스에 업로드하려는 이미지 경로를 입력합니다. 이 기능은 BLOB에 이미지를 저장하는 데 도움이 됩니다.

-- This will insert a file in a BLOB column.
INSERT INTO stu_information (stu_photograph) VALUES(LOAD_FILE('/image_path/image_fileName.png'));

위의 코드는 student_details 테이블에 학생 데이터를 입력합니다. 다음 명령으로 이 테이블을 시각화할 수 있습니다.

select * from stu_information;

위에서 언급한 코드 블록은 다음 출력을 생성합니다.

mysql에 이미지 저장

위에서 볼 수 있듯이 stu_photograph 열은 이미지를 저장하기 위한 BLOB 데이터 지원으로 생성되었습니다.

참고: stu_photograph 열에 이미지를 추가하기 전에 MySQL 사용자에게 이미지 권한을 추가했는지 확인하십시오.

루트에 로그인하고 다음 명령을 실행하여 FILE 권한을 부여할 수 있습니다.

GRANT FILE ON *.* TO 'mysql_user'@'localhost';
Preet Sanghavi avatar Preet Sanghavi avatar

Preet writes his thoughts about programming in a simplified manner to help others learn better. With thorough research, his articles offer descriptive and easy to understand solutions.

LinkedIn GitHub