SQL Server의 최대 용량 사양Maximum Capacity Specifications for SQL Server

이전 버전의 SQL Server와 관련된 콘텐츠는 SQL Server의 최대 용량 사양을 참조하세요.For content related to previous versions of SQL Server, see Maximum Capacity Specifications for SQL Server.

다음 표에는 SQL ServerSQL Server 구성 요소에 정의된 다양한 개체의 최대 크기 및 수가 지정되어 있습니다.The following tables specify maximum sizes and numbers of various objects defined in SQL ServerSQL Server components. SQL ServerSQL Server 기술과 관련된 표로 이동하려면 해당 링크를 클릭합니다.To navigate to the table for a SQL ServerSQL Server technology, click on its link:

SQL Server 데이터베이스 엔진 개체SQL Server Database Engine Objects

SQL Server 유틸리티 개체SQL Server Utility Objects

SQL Server 데이터 계층 응용 프로그램 개체SQL Server Data-tier Application Objects

SQL Server 복제 개체SQL Server Replication Objects

데이터베이스 엔진Database Engine 개체 데이터베이스 엔진Database Engine Objects

다음 표에는 SQL ServerSQL Server 데이터베이스에 정의되거나 Transact-SQLTransact-SQL 문에서 참조되는 다양한 개체의 최대 크기 및 개수가 나와 있습니다.Maximum sizes and numbers of various objects defined in SQL ServerSQL Server databases or referenced in Transact-SQLTransact-SQL statements.

SQL ServerSQL Server 데이터베이스 엔진Database Engine 개체(object) 데이터베이스 엔진Database Engine object 최대 크기/개수 SQL ServerSQL Server (64비트)Maximum sizes/numbers SQL ServerSQL Server (64-bit) 추가 정보Additional Information
일괄 처리 크기Batch size 65,536 * 네트워크 패킷 크기65,536 * Network Packet Size 네트워크 패킷 크기는 응용 프로그램과 관계형 데이터베이스 엔진Database Engine간의 통신에 사용되는 TDS(Tabular Data Stream) 패킷의 크기입니다.Network Packet Size is the size of the tabular data stream (TDS) packets used to communicate between applications and the relational 데이터베이스 엔진Database Engine. 기본 패킷 크기는 4KB이며 네트워크 패킷 크기 구성 옵션으로 제어됩니다.The default packet size is 4 KB, and is controlled by the network packet size configuration option.
짧은 문자열 열당 바이트 수Bytes per short string column 8,0008,000
GROUP BY, ORDER BY당 바이트 수Bytes per GROUP BY, ORDER BY 8,0608,060
인덱스 키당 바이트 수Bytes per index key 클러스터형 인덱스의 경우 900바이트,900 bytes for a clustered index. 비클러스터형 인덱스의 경우 1,700바이트1,700 for a nonclustered index. SQL ServerSQL Server에서 클러스터형 인덱스 키의 최대 바이트 수는 900을 초과할 수 없습니다.The maximum number of bytes in a clustered index key cannot exceed 900 in SQL ServerSQL Server. 비클러스터형 인덱스 키에 대한 최대값은 1700바이트입니다.For a nonclustered index key, the maximum is 1700 bytes.

최대 크기가 제한을 초과하는 가변 길이 열을 사용하여 키를 정의할 수 있습니다.You can define a key using variable-length columns whose maximum sizes add up to more than the limit. 그러나 이러한 열에 있는 데이터의 총 크기는 제한을 초과할 수 없습니다.However, the combined sizes of the data in those columns can never exceed the limit.

비클러스터형 인덱스에 키가 아닌 열을 추가로 포함할 수 있으며 해당 열은 키의 크기 제한에 포함되지 않습니다.In a nonclustered index, you can include extra non-key columns, and they do not count against the size limit of the key. 키가 아닌 열은 일부 쿼리의 성능 향상에 도움이 될 수 있습니다.The non-key columns might help some queries perform better.
메모리 액세스에 최적화된 테이블의 인덱스 키당 바이트 수Bytes per index key for memory-optimized tables 비클러스터형 인덱스의 경우 2500바이트2500 bytes for a nonclustered index. 모든 인덱스가 행에 맞기만 하면 해시 인덱스에 대한 제한은 없습니다.No limit for a hash index, as long as all index keys fit in-row. 메모리 액세스에 최적화된 테이블의 비클러스터형 인덱스에는 선언된 최대 크기가 2500바이트를 초과하는 키 열을 포함할 수 없습니다.On a memory-optimized table, a nonclustered index cannot have key columns whose maximum declared sizes exceed 2500 bytes. 키 열의 실제 데이터가 선언된 최대 크기보다 짧은지 여부는 관련이 없습니다.It is irrelevant whether the actual data in the key columns would be shorter than the maximum declared sizes.

해시 인덱스 키에 대한 하드 크기 제한은 없습니다.For a hash index key there is no hard limit on size.

메모리 액세스에 최적화된 테이블의 인덱스는 기본적으로 모든 열을 처리하기 때문에 포괄 열의 개념이 없습니다.For indexes on memory-optimized tables, there is no concept of included columns, since all indexes inherently cover of all columns.

메모리 액세스에 최적화된 테이블의 경우 행 크기가 8060바이트인 경우에도 일부 가변 길이 열이 물리적으로 8060바이트 외부에 저장될 수 있습니다.For a memory-optimized table, even though the row size is 8060 bytes, some variable-length columns can be physically stored outside those 8060 bytes. 그러나 테이블의 모든 인덱스에 대한 모든 키 열과 테이블의 추가 고정 길이 열의 선언된 최대 크기는 8060바이트에 맞아야 합니다.However, the maximum declared sizes of all key columns for all indexes on a table, plus any additional fixed-length columns in the table, must fit in the 8060 bytes.
외래 키당 바이트 수Bytes per foreign key 900900
기본 키당 바이트 수Bytes per primary key 900900
행당 바이트 수Bytes per row 8,0608,060 SQL ServerSQL Server 는 가변 길이 열을 행 외부로 밀어넣을 수 있는 행 오버플로 저장소를 지원합니다. supports row-overflow storage which enables variable length columns to be pushed off-row. 행 외부로 밀어넣은 가변 길이 열의 주 레코드에는 24바이트의 루트만 저장됩니다. 이 때문에 유효 행 제한은 이전 버전의 SQL ServerSQL Server보다 높습니다.Only a 24-byte root is stored in the main record for variable length columns pushed out of row; because of this, the effective row limit is higher than in previous releases of SQL ServerSQL Server. 자세한 내용은 SQL ServerSQL Server 온라인 설명서의 "8KB를 초과하는 행 오버플로 데이터" 항목을 참조하십시오.For more information, see the "Row-Overflow Data Exceeding 8 KB" topic in SQL ServerSQL Server Books Online.
메모리 액세스에 최적화된 테이블의 행당 바이트 수Bytes per row in memory-optimized tables 8,0608,060 SQL Server 2016SQL Server 2016 이상에서는 메모리 액세스에 최적화된 테이블이 행 외부 저장소를 지원합니다.Starting SQL Server 2016SQL Server 2016 memory-optimized tables support off-row storage. 테이블에 있는 모든 열의 최대 크기가 8060바이트를 초과할 경우 가변 길이 열이 행 외부로 푸시됩니다. 이는 컴파일 타임 결정입니다.Variable length columns are pushed off-row if the maximum sizes for all the columns in the table exceeds 8060 bytes; this is a compile-time decision. 행 외부에 저장된 열의 경우 8바이트 참조만 행 내부에 저장됩니다.Only an 8-byte reference is stored in-row for columns stored off-row. 자세한 내용은 메모리 액세스에 최적화된 테이블의 테이블 및 행 크기를 참조하세요.For more information, see Table and Row Size in Memory-Optimized Tables.
저장 프로시저의 원본 텍스트의 바이트 수Bytes in source text of a stored procedure 일괄 처리 크기 또는 250MB 미만Lesser of batch size or 250 MB
varchar(max), varbinary(max), xml, text또는 image 열당 바이트 수Bytes per varchar(max), varbinary(max), xml, text, or image column 2^31-12^31-1
ntext 또는 nvarchar(max) 열당 문자 수Characters per ntext or nvarchar(max) column 2^30-12^30-1
테이블당 클러스터형 인덱스 수Clustered indexes per table 11
GROUP BY, ORDER BY의 열 수Columns in GROUP BY, ORDER BY 바이트 수로만 제한Limited only by number of bytes
GROUP BY WITH CUBE 또는 WITH ROLLUP 문의 열 또는 식의 수Columns or expressions in a GROUP BY WITH CUBE or WITH ROLLUP statement 1010
인덱스 키당 열 수Columns per index key 3232 테이블에 하나 이상의 XML 인덱스가 있는 경우 XML 열이 기본 XML 인덱스의 클러스터링 키에 추가되므로 사용자 테이블의 클러스터링 키는 31개 열로 제한됩니다.If the table contains one or more XML indexes, the clustering key of the user table is limited to 31 columns because the XML column is added to the clustering key of the primary XML index. SQL ServerSQL Server에서는 비클러스터형 인덱스에 키가 아닌 열을 포함시켜 최대 32개의 키 열 제한을 피할 수 있습니다.In SQL ServerSQL Server, you can include nonkey columns in a nonclustered index to avoid the limitation of a maximum of 32 key columns. 자세한 내용은 Create Indexes with Included Columns을 참조하세요.For more information, see Create Indexes with Included Columns.
외래 키당 열 수Columns per foreign key 3232
기본 키당 열 수Columns per primary key 3232
넓지 않은 테이블당 열 수Columns per nonwide table 1,0241,024
넓은 테이블당 열 수Columns per wide table 30,00030,000
SELECT 문당 열 수Columns per SELECT statement 4,0964,096
INSERT 문당 열 수Columns per INSERT statement 4,0964,096
클라이언트당 연결 수Connections per client 구성된 연결의 최대 값Maximum value of configured connections
데이터베이스 크기Database size 524,272TB524,272 terabytes
다음 인스턴스당 데이터베이스 수: SQL ServerSQL ServerDatabases per instance of SQL ServerSQL Server 32,76732,767
데이터베이스당 파일 그룹 수Filegroups per database 32,76732,767
메모리 액세스에 최적화된 데이터의 데이터베이스당 파일 그룹 수Filegroups per database for memory-optimized data 11
데이터베이스당 파일 수Files per database 32,76732,767
파일 크기(데이터)File size (data) 16TB16 terabytes
파일 크기(로그)File size (log) 2TB2 terabytes
데이터베이스당 메모리 액세스에 최적화된 데이터의 데이터 파일 수Data files for memory-optimized data per database 4.0964.096
메모리 액세스에 최적화된 데이터의 데이터 파일당 델타 파일Delta file per data file for memory-optimized data 11
테이블당 외래 키 테이블 참조 수Foreign key table references per table 발신 = 253,Outgoing = 253. 수신 = 10,000Incoming = 10,000. 제한 사항에 대해서는 Create Foreign Key Relationships를 참조하세요.For restrictions, see Create Foreign Key Relationships.
식별자 길이(문자 수)Identifier length (in characters) 128128
컴퓨터당 인스턴스 수Instances per computer 독립 실행형 서버당 50개의 인스턴스50 instances on a stand-alone server.

클러스터 설치를 위한 저장 옵션으로 공유 클러스터 디스크를 사용하는 경우 장애 조치(failover) 클러스터에 25개의 인스턴스. SQL ServerSQL Server 는 클러스터 설치를 위한 스토리지 옵션으로 SMB 파일 공유 위치를 선택하는 경우 장애 조치(failover) 클러스터에 50개의 인스턴스를 지원합니다.25 instances on a failover cluster when using a shared cluster disk as the stored option for you cluster installation SQL ServerSQL Server supports 50 instances on a failover cluster if you choose SMB file shares as the storage option for your cluster installation.
메모리 액세스에 최적화된 테이블당 인덱스 수Indexes per memory-optimized table 88
SQL 문이 포함된 문자열의 길이(일괄 처리 크기)Length of a string containing SQL statements (batch size) 65,536 * 네트워크 패킷 크기65,536 * Network packet size 네트워크 패킷 크기는 응용 프로그램과 관계형 데이터베이스 엔진Database Engine간의 통신에 사용되는 TDS(Tabular Data Stream) 패킷의 크기입니다.Network Packet Size is the size of the tabular data stream (TDS) packets used to communicate between applications and the relational 데이터베이스 엔진Database Engine. 기본 패킷 크기는 4KB이며 네트워크 패킷 크기 구성 옵션으로 제어됩니다.The default packet size is 4 KB, and is controlled by the network packet size configuration option.
연결당 잠금 수Locks per connection 서버당 최대 잠금 수Maximum locks per server
다음 인스턴스당 잠금 수: SQL ServerSQL ServerLocks per instance of SQL ServerSQL Server 메모리로만 제한Limited only by memory 이 값은 정적 잠금 할당용입니다.This value is for static lock allocation. 동적 잠금은 메모리로만 제한됩니다.Dynamic locks are limited only by memory.
중첩 저장 프로시저 수준 수Nested stored procedure levels 3232 하나의 저장 프로시저가 65개 이상의 데이터베이스에 액세스하거나 인터리빙 시 3개 이상의 데이터베이스에 액세스할 경우 오류가 발생합니다.If a stored procedure accesses more than 64 databases, or more than 2 databases in interleaving, you will receive an error.
중첩 하위 쿼리 수Nested subqueries 3232
중첩 트리거 수준 수Nested trigger levels 3232
테이블당 비클러스터형 인덱스 수Nonclustered indexes per table 999999
CUBE, ROLLUP, GROUPING SETS, WITH CUBE, WITH ROLLUP 중 하나가 사용되는 경우 GROUP BY 절의 개별 식 수Number of distinct expressions in the GROUP BY clause when any of the following are present: CUBE, ROLLUP, GROUPING SETS, WITH CUBE, WITH ROLLUP 3232
GROUP BY 절의 연산자에 의해 생성되는 그룹화 집합 수Number of grouping sets generated by operators in the GROUP BY clause 4,0964,096
저장 프로시저당 매개 변수 개수Parameters per stored procedure 2,1002,100
사용자 정의 함수당 매개 변수 개수Parameters per user-defined function 2,1002,100
테이블당 REFERENCES 수REFERENCES per table 253253
테이블당 행 수Rows per table 사용 가능한 저장소로 제한Limited by available storage
데이터베이스당 테이블 수Tables per database 데이터베이스의 개체 수로 제한Limited by number of objects in a database 데이터베이스 개체에는 테이블, 뷰, 저장 프로시저, 사용자 정의 함수, 트리거, 규칙, 기본값 및 제약 조건 등의 개체가 있습니다.Database objects include objects such as tables, views, stored procedures, user-defined functions, triggers, rules, defaults, and constraints. 한 데이터베이스에서 모든 개체 수의 합계는 2,147,483,647을 초과할 수 없습니다.The sum of the number of all objects in a database cannot exceed 2,147,483,647.
분할된 테이블 또는 인덱스당 파티션 수Partitions per partitioned table or index 15,00015,000
인덱싱되지 않은 열의 통계Statistics on non-indexed columns 30,00030,000
SELECT 문당 테이블 수Tables per SELECT statement 사용 가능한 리소스로만 제한Limited only by available resources
테이블당 트리거 수Triggers per table 데이터베이스의 개체 수로 제한Limited by number of objects in a database 데이터베이스 개체에는 테이블, 뷰, 저장 프로시저, 사용자 정의 함수, 트리거, 규칙, 기본값 및 제약 조건 등의 개체가 있습니다.Database objects include objects such as tables, views, stored procedures, user-defined functions, triggers, rules, defaults, and constraints. 한 데이터베이스에서 모든 개체 수의 합계는 2,147,483,647을 초과할 수 없습니다.The sum of the number of all objects in a database cannot exceed 2,147,483,647.
UPDATE 문 당 열 수(넓은 테이블)Columns per UPDATE statement (Wide Tables) 40964096
사용자 연결User connections 32,76732,767
XML 인덱스XML indexes 249249

SQL ServerSQL Server 유틸리티 개체 SQL ServerSQL Server Utility Objects

다음 표에는 SQL ServerSQL Server 유틸리티에서 테스트된 다양한 개체의 최대 크기 및 개수가 나와 있습니다.Maximum sizes and numbers of various objects that were tested in the SQL ServerSQL Server Utility.

SQL ServerSQL Server 유틸리티 개체 Utility object 최대 크기/개수 SQL ServerSQL Server (64비트)Maximum sizes/numbers SQL ServerSQL Server (64-bit)
SQL ServerSQL Server 유틸리티당 컴퓨터(물리적 컴퓨터 또는 가상 컴퓨터) 수Computers (physical computers or virtual machines) per SQL ServerSQL Server Utility 100100
컴퓨터당 SQL ServerSQL Server 의 인스턴스 수Instances of SQL ServerSQL Server per computer 55
SQL ServerSQL Server 유틸리티당 총 SQL ServerSQL Server 인스턴스 수Total number of instances of SQL ServerSQL Server per SQL ServerSQL Server Utility 200200
데이터 계층 응용 프로그램을 포함하여 SQL ServerSQL Server의 인스턴스당 사용자 데이터베이스 수User databases per instance of SQL ServerSQL Server, including data-tier applications 5050
SQL ServerSQL Server 유틸리티당 총 사용자 데이터베이스 수Total number of user databases per SQL ServerSQL Server Utility 1,0001,000
데이터베이스당 파일 그룹 수File groups per database 11
파일 그룹당 데이터 파일 수Data files per file group 11
데이터베이스당 로그 파일 수Log files per database 11
컴퓨터당 볼륨 수Volumes per computer 33

* SQL ServerSQL Server 유틸리티에서 지원하는 관리되는 SQL ServerSQL Server 인스턴스의 최대 개수는 서버의 하드웨어 구성에 따라 달라질 수 있습니다.*The maximum number of managed instances of SQL ServerSQL Server supported by SQL ServerSQL Server Utility may vary based on the hardware configuration of the server. 시작 정보는 SQL Server 유틸리티 기능 및 태스크를 참조하세요.For getting started information, see SQL Server Utility Features and Tasks. SQL ServerSQL Server 유틸리티 제어 지점은 일부 SQL Server 2017SQL Server 2017버전에서는 사용할 수 없습니다. Utility control point is not available in every edition of SQL Server 2017SQL Server 2017. SQL ServerSQL Server버전에서 지원되는 기능 목록은 SQL Server 2016 버전에서 지원하는 기능을 참조하세요.For a list of features that are supported by the editions of SQL ServerSQL Server, see Features Supported by the Editions of SQL Server 2016.

SQL ServerSQL Server 데이터 계층 응용 프로그램 개체 SQL ServerSQL Server Data-tier Application Objects

다음 표에는 SQL ServerSQL Server DAC(데이터 계층 응용 프로그램)에서 테스트된 다양한 개체의 최대 크기 및 개수가 나와 있습니다.Maximum sizes and numbers of various objects that were tested in the SQL ServerSQL Server data-tier applications (DAC).

SQL ServerSQL Server DAC 개체 DAC object 최대 크기/개수 SQL ServerSQL Server (64비트)Maximum sizes/numbers SQL ServerSQL Server (64-bit)
DAC당 데이터베이스 수Databases per DAC 11
DAC당 개체 수Objects per DAC 데이터베이스의 개체 수 또는 사용 가능한 메모리로 제한Limited by the number of objects in a database, or available memory.

제한에 포함된 개체의 유형은 사용자, 테이블, 뷰, 저장 프로시저, 사용자 정의 함수, 사용자 정의 데이터 형식, 데이터베이스 역할, 스키마 및 사용자 정의 테이블 형식입니다.The types of objects included in the limit are users, tables, views, stored procedures, user-defined functions, user-defined data type, database roles, schemas, and user-defined table types.

복제 개체 Replication Objects

다음 표에는 SQL ServerSQL Server 복제에 정의된 다양한 개체의 최대 크기 및 개수가 나와 있습니다.Maximum sizes and numbers of various objects defined in SQL ServerSQL Server Replication.

SQL ServerSQL Server Replication 개체 Replication object 최대 크기/개수 SQL Server(64비트)Maximum sizes/numbers SQL Server (64-bit)
아티클 수(병합 게시)Articles (merge publication) 20482048
아티클 수(스냅숏 또는 트랜잭션 게시)Articles (snapshot or transactional publication) 32,76732,767
테이블의 열 수(병합 게시)Columns in a table (merge publication) 246246
테이블의 열 수( SQL ServerSQL Server 스냅숏 또는 트랜잭션 게시)Columns in a table ( SQL ServerSQL Server snapshot or transactional publication) 1,0001,000
테이블의 열 수(Oracle 스냅숏 또는 트랜잭션 게시)Columns in a table (Oracle snapshot or transactional publication) 995995
행 필터에 사용되는 열의 바이트 수(병합 게시)Bytes for a column used in a row filter (merge publication) 1,0241,024
행 필터에 사용되는 열의 바이트 수(스냅숏 또는 트랜잭션 게시)Bytes for a column used in a row filter (snapshot or transactional publication) 8,0008,000

충돌 검색에 행 추적이 사용될 경우(기본값) 기본 테이블은 최대 1,024개의 열을 포함할 수 있지만 최대 246개의 열이 게시되도록 아티클에서 열을 필터링해야 합니다.If row tracking is used for conflict detection (the default), the base table can include a maximum of 1,024 columns, but columns must be filtered from the article so that a maximum of 246 columns is published. 열 추적을 사용하면 기본 테이블은 최대 246개의 열을 포함할 수 있습니다.If column tracking is used, the base table can include a maximum of 246 columns.

기본 테이블은 게시 데이터베이스에 허용되는 최대 열 수( SQL ServerSQL Server의 경우 1,024개)를 포함할 수 있지만 열이 게시 유형에 지정된 최대 열 수를 초과하는 경우 아티클에서 열을 필터링해야 합니다.The base table can include the maximum number of columns allowable in the publication database (1,024 for SQL ServerSQL Server), but columns must be filtered from the article if they exceed the maximum specified for the publication type.

참고 항목See Also

SQL Server 2016 설치를 위한 하드웨어 및 소프트웨어 요구 사항 Hardware and Software Requirements for Installing SQL Server 2016
시스템 구성 검사기의 검사 매개 변수 Check Parameters for the System Configuration Checker
SQL Server 유틸리티 기능 및 태스크SQL Server Utility Features and Tasks