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.