Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:Instância Gerenciada de SQL do Azure
Este artigo ensina você a definir suas configurações do tempdb para Instância Gerenciada de SQL do Azure.
A Instância Gerenciada de SQL do Azure permite configurar o seguinte:
- Número de arquivos
tempdb - O incremento de crescimento de arquivos
tempdb - Tamanho máximo do
tempdb
As configurações do tempdb persistem depois que sua instância é reiniciada, atualizada ou se houver um failover.
Visão geral
tempdb é um dos bancos de dados do sistema padrão que vem com a Instância Gerenciada de SQL do Azure. A estrutura de tempdb é a mesma que qualquer outra estrutura de banco de dados do usuário. A diferença é que, como tempdb é usado para armazenamento não durável, as transações são registradas minimamente.
tempdb não pode ser descartado, desanexado, colocado offline, renomeado ou restaurado. Tentar qualquer uma dessas operações retornará um erro.
tempdb é regenerado a cada inicialização da instância. Todos os objetos que poderiam ter sido criados em tempdb durante uma sessão anterior não permanecem quando o serviço é reiniciado, após uma operação de gerenciamento de atualização da instância ou um failover.
A carga de trabalho no tempdb difere das cargas de trabalho em outros bancos de dados de usuário; objetos e dados são frequentemente criados e destruídos e há simultaneidade extremamente alta. Há apenas uma tempdb para cada instância gerenciada de SQL. Mesmo que você tenha vários bancos de dados e aplicativos se conectando à instância, todos eles usam o mesmo banco de dados tempdb. Os serviços podem enfrentar contenção quando tentam alocar páginas em um tempdb intensivamente utilizado. Dependendo do grau de contenção, as consultas e solicitações que envolvem tempdb podem deixar de responder. É por isso que tempdb é fundamental para o desempenho do serviço.
Número de arquivos tempdb
Aumentar o número de arquivos de dados tempdb cria uma ou mais páginas GAM e SGAM para cada arquivo de dados, o que ajuda a melhorar a simultaneidade de tempdb e reduz a contenção de página PFS. No entanto, aumentar o número de arquivos de dados tempdb pode ter outras implicações de desempenho, portanto, teste minuciosamente antes de implementar em produção.
Por padrão, a Instância Gerenciada de SQL do Azure cria 12 tempdb arquivos de dados e um tempdb arquivo de log, mas é possível modificar essa configuração.
Modificar o número de arquivos tempdb tem as seguintes limitações:
- O nome lógico do novo arquivo não diferencia maiúsculas de minúsculas, com no máximo 16 caracteres e nenhum espaço.
- O número máximo de arquivos
tempdbé 128.
Observação
Você não precisa reiniciar a instância depois de adicionar novos arquivos. No entanto, os arquivos menos cheios serão preenchidos com maior prioridade e o algoritmo de escalonamento round-robin para alocação de páginas será desativado até que o sistema seja reajustado.
Você pode usar o SQL Server Management Studio (SSMS) e Transact-SQL (T-SQL) para alterar o número de arquivos para tempdb em Instância Gerenciada de SQL do Azure.
Você pode usar o SQL Server Management Studio (SSMS) para modificar o número de arquivos tempdb. Para fazer isso, siga estas etapas:
Conecte-se à instância gerenciada de SQL no SSMS.
Expanda Bancos de dados em Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
Clique com o botão direito do mouse no
tempdbe escolha Propriedades.Selecione Arquivos em Selecionar uma página para exibir o número existente de arquivos
tempdb.Para adicionar um arquivo, escolha Adicionar e forneça informações sobre o novo arquivo de dados na linha.
Para remover um arquivo
tempdb, escolha o arquivo que você deseja remover da lista de arquivos de banco de dados e selecione Remover.
Incremento de crescimento
O crescimento do arquivo tempdb pode ter um impacto no desempenho das consultas que usam tempdb. Dessa forma, tempdb incrementos de crescimento de arquivos de dados muito pequenos podem causar fragmentação de extensão, enquanto incrementos muito grandes podem resultar em crescimento lento ou falha de crescimento se não houver espaço suficiente para o crescimento acontecer. O valor ideal para incrementos de crescimento de arquivos tempdb depende da carga de trabalho.
Os incrementos de crescimento padrão da Instância Gerenciada de SQL são de 254 MB para tempdb arquivos de dados e 64 MB para tempdb arquivos de log, mas você pode configurar incrementos de crescimento para se adaptar à carga de trabalho e ajustar seu desempenho.
Considere o seguinte:
- O parâmetro de crescimento de arquivo dá suporte às seguintes unidades para
int_growth_increment: KB, MB, GB, TB e %. - Os incrementos de crescimento devem ser iguais para todos os arquivos de dados
tempdb. Caso contrário, o algoritmo round robin que aloca páginas poderá ser afetado.
Você pode usar o SQL Server Management Studio (SSMS) e Transact-SQL (T-SQL) para alterar o incremento de crescimento de seus arquivos tempdb.
Você pode usar o SQL Server Management Studio (SSMS) para modificar o incremento de crescimento de arquivos tempdb. Para fazer isso, siga estas etapas:
Conecte-se à instância gerenciada de SQL no SSMS.
Expanda Bancos de dados em Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
Clique com o botão direito do mouse no
tempdbe escolha Propriedades.Selecione Arquivos em Selecionar uma página para exibir o número existente de arquivos
tempdb.Escolha as reticências (...) ao lado de um arquivo de dados para abrir a janela de diálogo Alterar as propriedades de crescimento automático.
Marque a caixa ao lado de Habilitar Crescimento Automático e modifique as configurações de crescimento automático especificando os valores de crescimento do arquivo, em porcentagem ou megabytes.
Selecione OK para salvar as configurações.
Tamanho máximo
tempdb
tamanho é o tamanho da soma de todos os arquivos tempdb. O tamanho do arquivo tempdb é um espaço alocado (zerado) para esse arquivo tempdb. O tamanho inicial do arquivo para todos os tempdb arquivos é de 16 MB, que é o tamanho de todos os tempdb arquivos quando a instância reinicia ou faz failover. Depois que o espaço usado de um arquivo de dados tempdb atingir o tamanho do arquivo, todos os arquivos de dados tempdb aumentarão automaticamente pelos incrementos de crescimento configurados.
tempdb
espaço usado é a soma do espaço usado de todos os arquivos tempdb.
tempdb o espaço usado do arquivo é igual à parte do tamanho desse tempdb arquivo que está ocupada com informações diferentes de zero. A soma do tempdb de e do tempdb de é igual ao tamanho de tempdb.
Você pode usar o T-SQL para determinar o espaço atual usado e livre de seus arquivos tempdb.
Para obter espaço usado, espaço livre e tamanho dos arquivos de dados tempdb, execute este comando:
USE tempdb
SELECT SUM((allocated_extent_page_count)*1.0/128) AS TempDB_used_data_space_inMB,
SUM((unallocated_extent_page_count)*1.0/128) AS TempDB_free_data_space_inMB,
SUM(total_page_count*1.0/128) AS TempDB_data_size_inMB
FROM sys.dm_db_file_space_usage
A captura de tela a seguir mostra um exemplo de saída:
Para obter o espaço usado, espaço livre e tamanho dos arquivos de log tempdb, execute este comando:
USE tempdb
SELECT used_log_space_in_bytes*1.0/1024/1024 AS TempDB_used_log_space_inMB,
(total_log_size_in_bytes- used_log_space_in_bytes)*1.0/1024/1024 AS TempDB_free_log_space_inMB,
total_log_size_in_bytes*1.0/1024/1024 AS TempDB_log_size_inMB
FROM sys.dm_db_log_space_usage
A captura de tela a seguir mostra um exemplo de saída:
O tamanho máximo do tempdb é o limite após o qual tempdb não é possível aumentar ainda mais.
O tamanho máximo tempdb na Instância Gerenciada de SQL tem as seguintes limitações:
- Na camada de serviço de Uso Geral, o tamanho máximo para
tempdbé limitado a 24 GB/vCore (96-1920 GB). O tamanho máximo dotempdbarquivo de log é de 120 GB. - Na camada de serviço Comercialmente Crítico,
tempdbcompete com outros bancos de dados por recursos, de modo que o armazenamento reservado seja compartilhado entretempdbe outros bancos de dados até o tamanho máximo de armazenamento alocado para a instância. O tamanho máximo dotempdbarquivo de log é de dois TB.
Os arquivos tempdb crescem até atingirem o limite máximo permitido pela camada de serviço ou pelo tamanho máximo do arquivo tempdb configurado manualmente.
Você pode usar o SQL Server Management Studio (SSMS) e Transact-SQL (T-SQL) para alterar o tamanho máximo de seus arquivos tempdb.
Para determinar o tamanho máximo atual do tempdb no SSMS, siga estas etapas:
- Conecte-se à instância gerenciada de SQL no SSMS.
- Expanda Bancos de dados em Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
- Clique com o botão direito do mouse no
tempdbe escolha Propriedades. - Na página Geral, verifique o valor tamanho em Banco de Dados para determinar o tamanho máximo
tempdb. Um valor de-1indica que o tamanho máximo do tempdb é ilimitado.
Para alterar o tamanho máximo atual do tempdb no SSMS, siga estas etapas:
- Conecte-se à instância gerenciada de SQL no SSMS.
- Expanda Bancos de dados em Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
- Clique com o botão direito do mouse no
tempdbe escolha Propriedades. - Selecione Arquivos em Selecionar uma página para exibir o número existente de arquivos
tempdb. - Escolha as reticências (...) ao lado de um arquivo de dados para abrir a janela de diálogo Alterar as propriedades de crescimento automático.
- Modifique as configurações de tamanho máximo do
tempdbalterando os valores em Tamanho máximo do arquivo. - Selecione OK para salvar as configurações.
limites do tempdb
A tabela a seguir define limites para várias definições de configuração do tempdb:
| Definição de configuração | Valores |
|---|---|
Nomes lógicos de arquivos tempdb |
Máximo de 16 caracteres |
Número de arquivos tempdb |
Máximo de 128 arquivos |
Número padrão de arquivos tempdb |
13 (1 arquivo de log + 12 arquivos de dados) |
Tamanho inicial de arquivos de dados tempdb |
16 MB |
Incremento de crescimento padrão de arquivos de dados tempdb |
256 MB |
Tamanho inicial de arquivos de log tempdb |
16 MB |
Incremento de crescimento padrão de arquivos de log tempdb |
64 MB |
Tamanho máximo inicial de tempdb |
-1 (ilimitado) |
Tamanho máximo dos arquivos de tempdb dados |
- Na camada de serviço Uso Geral: 24 GB/vCore, até um total de 1920 GB Na camada de serviço Comercialmente Crítico: até o tamanho do armazenamento |
Tamanho máximo dos arquivos de log tempdb |
- Na camada de serviço Geral: 120 GB Na camada de serviço Comercialmente Crítico: 2 TB |
Conteúdo relacionado
- Início Rápido: Criar Instância Gerenciada de SQL do Azure
- Comparação de recursos: Banco de Dados SQL do Azure e Instância Gerenciada de SQL do Azure
- arquitetura de conectividade para a Instância Gerenciada de SQL do Azure
- Migração da Instância Gerenciada de SQL usando o Serviço de Migração de Banco de Dados
- Monitorar cargas de trabalho do Azure SQL com o monitor de banco de dados (versão preliminar)
- Preços do Banco de Dados SQL