Especificações de capacidade máxima do SQL Server

As tabelas a seguir especificam os tamanhos e números máximos de vários objetos definidos nos componentes do SQL Server.

Objetos do Mecanismo de Banco de Dados

A tabela a seguir especifica os tamanhos e números máximos de vários objetos definidos nos bancos de dados do SQL Server ou referenciados em instruções Transact-SQL.

Objeto do Mecanismo de Banco de Dados do SQL Server

Tamanhos/números máximos do SQL Server (32 bits)

Tamanhos/números máximos do SQL Server (64 bits)

Tamanho do lote1

65.536 * Tamanho do pacote de rede

65.536 * Tamanho do pacote de rede

Bytes por coluna de cadeia de caracteres curta

8,000

8,000

Bytes por GROUP BY, ORDER BY

8,060

8,060

Bytes por chave do índice2

900

900

Bytes por chave estrangeira

900

900

Bytes por chave primária

900

900

Bytes por linha8

8,060

8,060

Bytes em texto de fonte de um procedimento armazenado

Menor que o tamanho do lote ou 250 MB

Menor que o tamanho do lote ou 250 MB

Bytes por coluna varchar(max), varbinary(max), xml, text ou image

2^31-1

2^31-1

Caracteres por coluna ntext ou nvarchar(max)

2^30-1

2^30-1

Índices clusterizados por tabela

1

1

Colunas em GROUP BY, ORDER BY

Limitado somente pelo número de bytes

Limitado somente pelo número de bytes

Colunas ou expressões em uma instrução GROUP BY WITH CUBE ou WITH ROLLUP

10

10

Colunas por chave do índice7

16

16

Colunas por chave estrangeira

16

16

Colunas por chave primária

16

16

Colunas por tabela não larga

1,024

1,024

Colunas por tabela larga

30,000

30,000

Colunas por instrução SELECT

4,096

4,096

Colunas por instrução INSERT

4096

4096

Conexões por cliente

Valor máximo de conexões configuradas

Valor máximo de conexões configuradas

Tamanho do banco de dados

524.272 terabytes

524.272 terabytes

Bancos de dados por instância do SQL Server

32,767

32,767

Grupos de arquivos por banco de dados

32,767

32,767

Arquivos por banco de dados

32,767

32,767

Tamanho de arquivo (dados)

16 terabytes

16 terabytes

Tamanho de arquivo (log)

2 terabytes

2 terabytes

Referências de tabela de chave estrangeira por tabela4

253

253

Comprimento de identificador (em caracteres)

128

128

Instâncias por computador

50 instâncias em um servidor autônomo para todas as edições do SQL Server, exceto Workgroup. Workgroup dá suporte a, no máximo, 16 instâncias por computador.

O SQL Server dá suporte a 25 instâncias em um cluster de failover.

50 instâncias em um servidor autônomo.

25 instâncias em um cluster de failover.

Comprimento de uma cadeia de caracteres que contém instruções SQL (tamanho de lote)1

65.536 * Tamanho do pacote de rede

65.536 * Tamanho do pacote de rede

Bloqueios por conexão

Máximo de bloqueios por servidor

Máximo de bloqueios por servidor

Bloqueios por instância do SQL Server5

Até 2.147.483.647

Limitado somente por memória

Níveis aninhados de procedimento armazenado6

32

32

Subconsultas aninhadas

32

32

Níveis aninhados de gatilho

32

32

Índices não clusterizados por tabela

999

999

Número de expressões distintas na cláusula GROUP BY quando qualquer um dos seguintes estiver presente: CUBE, ROLLUP, GROUPING SETS, WITH CUBE, WITH ROLLUP

32

32

Número de conjuntos de agrupamentos gerados por operadores na cláusula GROUP BY

4,096

4,096

Parâmetros por procedimento armazenado

2,100

2,100

Parâmetros por função definida pelo usuário

2,100

2,100

REFERENCES por tabela

253

253

Linhas por tabela

Limitado pelo armazenamento disponível

Limitado pelo armazenamento disponível

Tabelas por banco de dados3

Limitado pelo número de objetos em um banco de dados

Limitado pelo número de objetos em um banco de dados

Partições por tabela ou índice particionado

1,000

1,000

Estatísticas em colunas não indexadas

30,000

30,000

Tabelas por instrução SELECT

Limitado apenas pelos recursos disponíveis

Limitado apenas pelos recursos disponíveis

Gatilhos por tabela3

Limitado pelo número de objetos em um banco de dados

Limitado pelo número de objetos em um banco de dados

Colunas por instrução UPDATE (Tabelas Largas)

4096

4096

Conexões de usuário

32,767

32,767

Índices XML

249

249

1Tamanho do pacote de rede é o tamanho dos pacotes do protocolo TDS usados para comunicação entre aplicativos e o Mecanismo de Banco de Dados relacional. O tamanho de pacote padrão é 4 KB e é controlado pela opção de configuração tamanho do pacote de rede.

2O número máximo de bytes em qualquer chave de índice não pode exceder 900 no SQL Server. Você pode definir uma chave usando colunas de comprimento variável cujos tamanhos máximos somem mais de 900, desde que nenhuma linha jamais seja inserida com mais de 900 bytes de dados nessas colunas. No SQL Server, você pode incluir colunas não-chave em um índice não clusterizado para evitar o tamanho máximo de chave de índice de 900 bytes.

3Os objetos de banco de dados incluem objetos como tabelas, exibições, procedimentos armazenados, funções definidas pelo usuário, gatilhos, regras, padrões e restrições. A soma do número de todos os objetos em um banco de dados não pode exceder 2.147.483.647.

4Embora uma tabela possa conter um número ilimitado de restrições FOREIGN KEY, o máximo recomendado é 253. Dependendo da configuração do hardware que hospeda o SQL Server, a especificação de restrições FOREIGN KEY adicionais pode ser cara para processamento pelo otimizador de consulta.

5Esse valor é para alocação de bloqueio estático. Os bloqueios dinâmicos são limitados somente por memória.

6Se um procedimento armazenado acessar mais de 8 bancos de dados ou mais de 2 bancos de dados em intercalação, você receberá um erro.

7Se a tabela contiver um ou mais índices XML, a chave de clustering da tabela do usuário será limitada a 15 colunas porque a coluna XML é adicionada à chave de clustering do índice XML primário. No SQL Server, você pode incluir colunas não-chave em um índice não clusterizado para evitar a limitação de um máximo de 16 colunas de chave. Para obter mais informações, consulte Índice com colunas incluídas.

8 O SQL Server dá suporte ao armazenamento de estouro de linha, o que permite que colunas de comprimento variável sejam empurradas para fora da linha. Somente uma raiz de 24 bytes é armazenada no registro principal para colunas de comprimento variável empurradas para fora da linha; por isso, o limite efetivo de linha é maior que nas versões anteriores do SQL Server. Para obter mais informações, consulte o tópico "Dados de estouro de linha que excedem 8 KB" nos Manuais Online do SQL Server.

Objetos de replicação

A tabela a seguir especifica os tamanhos e números máximos de vários objetos definidos na Replicação do SQL Server.

Objeto da Replicação do SQL Server

Tamanhos/números máximos do SQL Server (32 bits)

Tamanhos/números máximos do SQL Server (64 bits)

Artigos (publicação de mesclagem)

256

256

Artigos (publicação de instantâneo ou transacional)

32,767

32,767

Colunas em uma tabela1 (publicação de mesclagem)

246

246

Colunas em uma tabela2 (publicação de instantâneo ou transacional do SQL Server)

1,000

1,000

Colunas em uma tabela2 (publicação de instantâneo ou transacional do Oracle)

995

995

Bytes para uma coluna usada em um filtro de linha (publicação de mesclagem)

1,024

1,024

Bytes para uma coluna usada em um filtro de linha (publicação de instantâneo ou transacional)

8,000

8,000

1Se o rastreamento de linha for usado para detecção de conflitos (o padrão), a tabela base poderá incluir no máximo 1.024 colunas, mas as colunas deverão ser filtradas do artigo de modo que sejam publicadas no máximo 246 colunas. Se o rastreamento de coluna for usado, a tabela base poderá incluir no máximo 246 colunas. Para obter mais informações sobre o nível de rastreamento, consulte a seção "Nível de rastreamento" de Como a replicação de mesclagem detecta e soluciona conflitos.

2A tabela base pode incluir o número máximo de colunas permitidas no banco de dados de publicação (1.024 para o SQL Server), mas as colunas devem ser filtradas do artigo se excederem o máximo especificado para o tipo de publicação.