ext3의 최대 개별 파일 크기는 mysql 테이블에 적용됩니까?

ext3의 최대 개별 파일 크기는 mysql 테이블에 적용됩니까?

Linux의 파일 시스템에 대해 읽고 있습니다.여기. 이 문장은 나를 조금 혼란스럽게 한다.

ext3의 경우,

  • 최대 개별 파일 크기는 16GB에서 2TB까지 가능합니다.
  • ext3 파일 시스템의 전체 크기는 2TB에서 32TB까지 다양합니다.

그렇다면 위 문장은 크기가 2TB보다 큰 단일 파일을 가질 수 없다는 의미입니까?

그렇다면 하나 가지고 있으면 안 될까요? mysql그 이상2TB용량? 이러한 테이블은 datadir에서 언급한 매개변수 저장소 에 따라 저장됩니다 /etc/my.cnf. 예를 들어, 나에게 하드 드라이브가 있다고 가정해 보겠습니다.4TB용량 및 mysql크기 차트2.5TB, 하드 드라이브가 책상에 들어갈 수 있나요?

편집하다

Barmar의 답변에 지정된 최대 파일 크기는 신경 쓰지 않습니다.

알아내는 게 더 걱정돼mysqlext3 파일 시스템에서 허용하는 최대 단일 파일 크기보다 큰 테이블이 있는 경우 오류가 발생합니까?

답변1

~에 따르면테이블 크기 제한Linux 2.4+에서 ext3을 사용하는 최대 테이블 크기는 4TB입니다.

MyISAM은 한 파일에 행 데이터를 저장하고 다른 파일에 인덱스를 저장하므로 이것이 데이터 + 인덱스의 이론상 최대 크기인 것 같습니다. ext3에서는 파일을 2TB로 제한하므로 행 데이터가 이 값을 초과하는 것은 불가능해 보입니다.

답변2

일반적으로 말해서, 지침을 따라야 합니다.여기@Barmar가 언급했듯이. 여기에는 다양한 운영 체제에 따른 제한 사항이 나열되어 있지만 반드시 파일 시스템 제한 사항은 아닙니다. 다소 오해의 소지가 있는 "Linux 2.4+(ext3 파일 시스템 포함) 4TB" 목록도 있습니다.

한 가지 더는매우최대 파일 크기를 결정할 때 ext3 파일 시스템에서 이를 고려해야 합니다. 다수의 데이터베이스 테이블을 생성하기 전에 블록 크기를 확인하십시오. 블록 크기가 1k인 ext3 파티션의 최대 파일 크기는 약 16.5GB입니다. 블록 크기가 4k인 동일한 디스크의 최대 파일 크기는 4TB입니다. 자세한 이유는 설명에서 확인하실 수 있습니다.여기. 블록 크기가 4k라면 mysql 사이트의 문서가 완전히 정확합니다. 요즘 대부분의 설치는 기본적으로 4k로 설정되어 있습니다. 4TB 파일 시스템은 1k 블록 크기에 비해 너무 크다고 생각하지만 확인하는 것이 확실히 나쁠 것은 없습니다.

답변3

예, 기본 파일 시스템에 파일 크기 제한이 있는 경우 파일이 가득 찰 때까지 데이터를 추가하려고 하면 MySQL에서 오류가 발생합니다.

그러나 단일 테이블이 여러 MYD 및 MYI 파일에 데이터를 분산하도록 MySQL 테이블을 분할하면 파일 시스템 파일 크기 제한을 쉽게 우회할 수 있습니다. http://dev.mysql.com/doc/refman/5.5/en/partitioning.html

이제 ext3 대신 ext4를 사용해야 합니다. ext4의 파일 크기 제한은 16TB(표준 4k 블록 크기)입니다. https://ext4.wiki.kernel.org/index.php/Ext4_Howto#Bigger_File_System_and_File_Sizes

관련 정보