Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:Azure SQL Managed Instance
Este artigo ensina você a definir suas configurações para a tempdb Instância Gerenciada SQL do Azure.
A Instância Gerenciada SQL do Azure permite configurar o seguinte:
- Número de
tempdbficheiros - O incremento de crescimento de
tempdbarquivos - Tamanho máximo
tempdb
tempdb As configurações persistem depois que sua instância é reiniciada, atualizada ou se houver um failover.
Visão geral
tempdb é um dos bancos de dados padrão do sistema que vem com a Instância Gerenciada SQL do Azure. A estrutura de tempdb é a mesma que qualquer outra estrutura de banco de dados de usuário. A diferença é que, como tempdb é usado para armazenamento não durável, as transações são minimamente registradas.
tempdb não pode ser descartado, desanexado, colocado offline, renomeado ou restaurado. A tentativa de qualquer uma dessas operações retorna um erro.
tempdb é regenerado sempre que a instância é iniciada. Os objetos que possam ter sido criados durante tempdb uma sessão anterior não persistem quando o serviço é reiniciado, após uma operação de gerenciamento de atualização de instância ou um failover.
A carga de trabalho difere das cargas de trabalho em tempdb outros bancos de dados de usuários, objetos e dados são frequentemente criados e destruídos e há uma simultaneidade extremamente alta. Há apenas um tempdb para cada instância gerenciada pelo SQL. Mesmo que você tenha vários bancos de dados e aplicativos se conectando à instância, todos eles usam o mesmo tempdb banco de dados. Os serviços podem sofrer contenção quando tentam alocar páginas em um tempdb. Dependendo do grau de contenção, as consultas e solicitações que envolvem tempdb podem tornar-se inativas. É por isso que tempdb é fundamental para o desempenho do serviço.
Número de tempdb ficheiros
Aumentar o número de ficheiros de dados cria uma ou mais páginas GAM e SGAM para cada ficheiro de dados, o que ajuda a melhorar a simultaneidade e reduz a contenção de páginas PFS. No entanto, aumentar o número de arquivos de dados pode ter outras implicações de desempenho, portanto, teste cuidadosamente antes de tempdb implementar na produção.
Por padrão, a Instância Gerenciada 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 tempdb arquivos tem as seguintes limitações:
- O nome lógico do novo arquivo não diferencia maiúsculas de minúsculas, com um máximo de 16 caracteres e sem espaços.
- O número máximo de
tempdbficheiros é 128.
Observação
Não é necessário reiniciar a instância depois de adicionar novos arquivos. No entanto, os ficheiros mais vazios serão preenchidos com maior prioridade e o algoritmo round-robin para alocação de páginas torna-se inativo até que o sistema seja reequilibrado.
Você pode usar o SQL Server Management Studio (SSMS) e o Transact-SQL (T-SQL) para alterar o número de arquivos da tempdb Instância Gerenciada SQL do Azure.
Você pode usar o SQL Server Management Studio (SSMS) para modificar o número de tempdb arquivos. Para fazer isso, execute as seguintes etapas:
Conecte-se à sua instância gerenciada SQL no SSMS.
Expanda Bancos de Dados no Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
Clique com o botão direito do mouse e
tempdbescolha Propriedades.Selecione Arquivos em Selecione uma página para exibir o número existente de
tempdbarquivos.Para adicionar um arquivo, escolha Adicionar e forneça informações sobre o novo arquivo de dados na linha.
Para remover um
tempdbficheiro, escolha o ficheiro que pretende remover da lista de ficheiros de base de dados e, em seguida, selecione Remover.
Incremento do crescimento
tempdb O crescimento dos ficheiros pode impactar o desempenho das consultas que utilizam tempdb. Como tal, 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 que o crescimento aconteça. O valor ideal para tempdb incrementos de crescimento de arquivos depende da sua carga de trabalho.
Os incrementos de crescimento padrão para a Instância Gerenciada SQL são 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 à sua carga de trabalho e ajustar seu desempenho.
Considere o seguinte:
- O parâmetro de crescimento de arquivo suporta as seguintes unidades para
int_growth_increment: KB, MB, GB, TB e %. - Os incrementos de crescimento devem ser os mesmos para todos os
tempdbarquivos de dados. Caso contrário, o algoritmo round robin que aloca páginas pode ser afetado.
Você pode usar o SQL Server Management Studio (SSMS) e o Transact-SQL (T-SQL) para alterar o incremento de crescimento de seus tempdb arquivos.
Você pode usar o SQL Server Management Studio (SSMS) para modificar o incremento de crescimento de tempdb arquivos. Para fazer isso, execute as seguintes etapas:
Conecte-se à sua instância gerenciada SQL no SSMS.
Expanda Bancos de Dados no Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
Clique com o botão direito do mouse e
tempdbescolha Propriedades.Selecione Arquivos em Selecione uma página para exibir o número existente de
tempdbarquivos.Escolha os pontos de suspensão (...) ao lado de um arquivo de dados para abrir a caixa 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 guardar as definições.
Tamanho máximo
tempdb
tamanho é o tamanho da soma de todos os tempdb arquivos.
tempdb tamanho do arquivo é um espaço alocado (zerado) para esse tempdb arquivo. 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 é reiniciada ou faz failover. Quando o espaço usado de um tempdb arquivo de dados atinge o tamanho do arquivo, todos os tempdb arquivos de dados crescem automaticamente por seus incrementos de crescimento configurados.
tempdb
espaço usado é a soma do espaço usado de todos os tempdb arquivos.
tempdb O espaço usado do arquivo é igual à parte do tamanho do tempdb arquivo que está ocupada com informações que não são zero. A soma do tempdb e do espaço livre é igual ao tempdb tamanho.
Você pode usar o T-SQL para determinar o uso atual e o espaço livre para seus tempdb arquivos.
Para obter espaço utilizado, espaço livre e tamanho dos seus tempdb ficheiros de dados, 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, o espaço livre e o tamanho dos arquivos tempdb de log, 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:
tempdb O tamanho máximo é o limite após o qual você tempdb não pode crescer mais.
tempdb O tamanho máximo na Instância Gerenciada SQL tem as seguintes limitações:
- Na camada de serviço de uso geral, o tamanho máximo
tempdbé limitado a 24 GB/vCore (96-1920 GB). O tamanho máximo do arquivo detempdblog é de 120 GB. - Na camada de serviço Business Critical,
tempdbcompete com outros bancos de dados por recursos, de modo que o armazenamento reservado é compartilhado entretempdboutros bancos de dados até o tamanho máximo de armazenamento alocado para a instância. O tamanho máximo do arquivo de log é detempdbdois TB.
tempdb Os arquivos crescem até atingirem o limite máximo permitido pela camada de serviço ou pelo tamanho máximo tempdb de arquivo configurado manualmente.
Você pode usar o SQL Server Management Studio (SSMS) e o Transact-SQL (T-SQL) para alterar o tamanho máximo dos arquivos tempdb .
Para determinar o tamanho máximo atual tempdb no SSMS, siga estas etapas:
- Conecte-se à sua instância gerenciada SQL no SSMS.
- Expanda Bancos de Dados no Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
- Clique com o botão direito do mouse e
tempdbescolha Propriedades. - Na página Geral, verifique o valor Tamanho em Banco de Dados para determinar seu tamanho máximo
tempdb. Um valor de-1indica tempdb max size é ilimitado.
Para alterar o tamanho máximo atual tempdb no SSMS, siga estas etapas:
- Conecte-se à sua instância gerenciada SQL no SSMS.
- Expanda Bancos de Dados no Pesquisador de Objetos e, em seguida, expanda Bancos de dados do sistema.
- Clique com o botão direito do mouse e
tempdbescolha Propriedades. - Selecione Arquivos em Selecione uma página para exibir o número existente de
tempdbarquivos. - Escolha os pontos de suspensão (...) ao lado de um arquivo de dados para abrir a caixa de diálogo Alterar as propriedades de crescimento automático.
- Modifique as
tempdbconfigurações de tamanho máximo alterando os valores em Tamanho máximo do arquivo. - Selecione OK para guardar as definições.
Os limites do tempdb
A tabela a seguir define limites para várias tempdb definições de configuração:
| Definição de configuração | Valores |
|---|---|
Nomes lógicos de tempdb arquivos |
Máximo de 16 caracteres |
Número de tempdb ficheiros |
Máximo de 128 ficheiros |
Número padrão de tempdb arquivos |
13 (1 ficheiro de registo + 12 ficheiros de dados) |
Tamanho inicial dos ficheiros de tempdb dados |
16 MB |
Incremento padrão de crescimento de arquivos de tempdb dados |
256MB |
Tamanho inicial dos arquivos de tempdb log |
16 MB |
Incremento padrão de crescimento dos arquivos de log tempdb |
64 MB |
Tamanho máximo tempdbinicial |
-1 (ilimitado) |
Tamanho máximo dos ficheiros de tempdb dados |
- No nível de serviço de uso geral: 24 GB/vCore até 1920 GB total No nível de serviço Crítico para Negócios: até ao tamanho do armazenamento |
Tamanho máximo dos ficheiros de tempdb registo |
- Na camada de serviço de uso geral: 120 GB Na camada de serviço Business Critical: 2 TB |
Conteúdo relacionado
- Guia de início rápido: criar instância gerenciada SQL do Azure
- Comparação de recursos: Banco de Dados SQL do Azure e Instância Gerenciada SQL do Azure
- Arquitetura de conectividade para a Instância Gerenciada SQL do Azure
- Migração de instância gerenciada SQL usando o Serviço de Migração de Banco de Dados
- Monitorizar cargas de trabalho SQL do Azure com o observador de bases de dados (versão prévia)
- Preços do Banco de Dados SQL