>  기사  >  데이터 베이스  >  mysql에서 단일 테이블의 크기를 설정하는 방법

mysql에서 단일 테이블의 크기를 설정하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-09-28 10:27:193982검색

mysql에서 단일 테이블의 크기를 설정하는 방법: 1. 테이블 생성 시 수정 방법 2. 기존 테이블 수정 방법, 코드는 [ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000]입니다.

mysql에서 단일 테이블의 크기를 설정하는 방법

mysql에서 단일 테이블의 크기를 설정하는 방법:

1. MySQL 데이터베이스의 MyISAM 스토리지 엔진의 단일 테이블 크기 제한은 더 이상 MySQL 데이터베이스 자체에 의해 결정되지 않습니다(한도 64pb로 확장됨), 위치한 호스트에 따라 다릅니다. OS의 파일 시스템에 따라 다릅니다.

mysql5.0 버전 이전에는 myisam 스토리지 엔진의 기본 테이블 크기가 4GB였습니다. 다음 명령을 사용하여 확인할 수 있습니다.

[root@robert test]# cd /data/mysql/mysql_3306/data/test
[root@robert test]# myisamchk -dv t2
MyISAM file: t2
Record format: Fixed length
Character set: latin1_swedish_ci (8)
File-version: 1
Creation time: 2014-12-29 14:13:17
Status: checked,analyzed,optimized keys,sorted index pages
Data records: 0 Deleted blocks: 0
Datafile parts: 0 Deleted data: 0
Datafile pointer (bytes): 6 Keyfile pointer (bytes): 3
Datafile length: 0 Keyfile length: 1024
Max datafile length: 3096224743817214 Max keyfile length: 17179868159
Recordlength: 11
table description:
Key Start Len Index Type Rec/key Root Blocksize
  • 데이터 파일 길이: 현재 데이터 파일의 크기

  • 키 파일 길이: 인덱스 파일의 크기

  • 최대 데이터 파일 길이: 최대 데이터 파일의 크기

  • 최대 키 파일 길이: 최대 인덱스 파일의 크기

MyISAM을 사용해야 하는 경우 4GB보다 큰 테이블(그리고 운영 체제가 대용량 파일을 지원하는 경우)에는 AVG_ROW_LENGTH 및 MAX_ROWS 옵션을 허용하는 CREATE TABLE 문을 사용할 수 있습니다. 테이블이 생성된 후 ALTER TABLE을 사용하여 이러한 옵션을 변경하여 테이블의 최대 허용 용량을 늘릴 수도 있습니다.

테이블 생성 시 수정 방법

CREATE TABLE tbl_name (
a INTEGER NOT NULL PRIMARY KEY,
b CHAR(18) NOT NULL
) MAX_ROWS = 1000000000 AVG_ROW_LENGTH = 32;

기존 테이블 수정 방법

ALTER TABLE tbl_name MAX_ROWS=1000000000 AVG_ROW_LENGTH=15000;

두 가지: Innodb 스토리지 엔진은 공유 테이블 공간 스토리지와 전용 테이블 공간 두 가지로 구분됩니다. 저장 방법.

1) 테이블스페이스 스토리지를 공유하면 Innodb의 모든 데이터는 별도의 테이블스페이스에 저장되며(단, 각 테이블에는 .frm 테이블 구조 파일이 있음), 이 테이블스페이스는 여러 개의 파일로 구성될 수 있습니다. 여러 파일이 있으므로 크기 제한은 더 이상 파일 크기에 대한 제한이 아니라 자체에 대한 제한입니다.

Innodb의 공식 문서에서 볼 수 있듯이 테이블 공간의 최대 한도는 64TB입니다. 즉, Innodb의 단일 테이블 한도는 기본적으로 약 64TB입니다. 물론 이 크기에는 이 테이블의 모든 인덱스와 기타 관련 데이터가 포함됩니다.

2) 전용 테이블 공간을 사용하여 Innodb 테이블을 저장하는 경우 각 테이블의 데이터가 별도의 파일에 저장됩니다. 이때 단일 테이블 제한은 파일 시스템의 크기 제한이 됩니다.

운영 체제 크기 제한

win32 w/ FAT/FAT32 2GB/4GB
win32 w/ NTFS 2TB(可能更大)
Linux 2.2-Intel 32-bit 2GB (LFS: 4GB)
Linux 2.4+ 4TB(ext3)
Solaris 9/10 16TB
NetWare w/NSS filesystem 8TB
MacOS X w/ HFS+ 2TB

더 많은 관련 무료 학습 권장 사항: mysql 튜토리얼(동영상)

위 내용은 mysql에서 단일 테이블의 크기를 설정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.