Nesta página, descrevemos o gerenciamento do banco de dados tempdb no Cloud SQL.
O banco de dados tempdb é um banco de dados do sistema que tem muitos objetos, incluindo tabelas temporárias, procedimentos armazenados e muito mais. Nas instâncias, é possível executar operações comuns nesse banco de dados.
Um banco de dados temporário será recriado sempre que uma instância for reiniciada. Para evitar
a perda das permissões do usuário, o Cloud SQL fornece permissões ao usuário do
sqlserver depois que uma instância é reiniciada.
Visão geral
O usuário do sqlserver
tem a permissão ALTER para gerenciar as opções de banco de dados tempdb.
Para mais informações sobre como gerenciar esse recurso, consulte a página banco de dados tempdb.
Gerenciar arquivos tempdb
Depois de se conectar a uma instância, o
usuário do sqlserver pode gerenciar os arquivos tempdb.
Número de arquivos
O usuário tem permissão ALTER no banco de dados tempdb, o que permite controlar as configurações do número de arquivos e muito mais. Alguns exemplos de operações incluem o seguinte:
- ALTER DATABASE [tempdb] ADD FILE
- ALTER DATABASE [tempdb] REMOVE
Tamanho do arquivo
As seções a seguir descrevem os métodos usados para controlar o tamanho dos arquivos no
banco de dados tempdb.
Para mais informações sobre esses métodos, consulte Reduzir o banco de dados tempdb.
Mudar o tamanho dos arquivos em tempdb
Para controlar o tamanho dos arquivos no banco de dados tempdb, use a instrução ALTER DATABASE. Para mais informações, consulte
Opções de arquivo e grupo de arquivos ALTER DATABASE (Transact-SQL).
Reduzir o tamanho de arquivos individuais
msdb.dbo.gcloudsql_tempdb_shrinkfile é um procedimento armazenado
que pode ser usado para reduzir um arquivo individual no banco de dados tempdb.
Esse procedimento armazenado oferece todos os mesmos benefícios do comando
DBCC SHRINKFILE.
Confira a seguir exemplos de uso do procedimento armazenado msdb.dbo.gcloudsql_tempdb_shrinkfile e dos parâmetros dele, executados no Cloud SQL Studio:
- Opção padrão - msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME' - Em que: - FILENAME: o nome do arquivo a ser reduzido. Por exemplo, tempdev.
 - Esse comando executa os seguintes comandos do SQL Server: - USE tempdb
- DBCC SHRINKFILE (@filename)
 
- FILENAME: o nome do arquivo a ser reduzido. Por exemplo, 
- EMPTYFILE- msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @empty_file=EMPTY_FILE_INT - Em que: - EMPTY_FILE_INT: um valor inteiro que é 0 ou 1. Se for 1, EMPTYFILEserá transmitido como uma opção. Essa opção tem prioridade sobre outros parâmetros.
 - Esse comando executa os seguintes comandos do SQL Server: - USE tempdb
- DBCC SHRINKFILE (@filename, EMPTYFILE)
 
- EMPTY_FILE_INT: um valor inteiro que é 0 ou 1. Se for 1, 
- Tamanho do destino - msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=TARGET_SIZE_INT - Em que: - TARGET_SIZE_INT: um número inteiro que representa o tamanho de destino do arquivo em megabytes. Transmite ao comando DBCC SHRINKFILEqualquer valor maior ou igual a zero. Por exemplo,10.
 - Esse comando executa os seguintes comandos do SQL Server. O número inteiro 10 é incluído como um exemplo: - USE tempdb
- DBCC SHRINKFILE (@filename, 10)
 
- TARGET_SIZE_INT: um número inteiro que representa o tamanho de destino do arquivo em megabytes. Transmite ao comando 
- Apenas tamanho e truncamento de destino - msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @truncateonly=TRUNCATE_ONLY_INT - Em que: - TRUNCATE_ONLY_INT: aceita um valor inteiro de 0 ou 1.
Se definido como 1, TRUNCATEONLYserá transmitido como uma opção. O tamanho de destino é ignorado seTRUNCATEONLYfor transmitido. Essa opção tem prioridade sobreNOTRUNCATE.
 - Esse comando executa os seguintes comandos do SQL Server: - USE tempdb
- DBCC SHRINKFILE (@filename, 10, TRUNCATEONLY)
 
- TRUNCATE_ONLY_INT: aceita um valor inteiro de 0 ou 1.
Se definido como 1, 
- Tamanho de destino e nenhuma opção de truncamento - msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @no_truncate=NO_TRUNCATE_INT - Em que: - NO_TRUNCATE_INT: aceita um valor inteiro de 0 ou 1.
Se definido como 1, NOTRUNCATEserá transmitido como uma opção.
 - Esse comando executa os seguintes comandos do SQL Server: - USE tempdb
- DBCC SHRINKFILE (@filename, 10, NOTRUNCATE)
 
- NO_TRUNCATE_INT: aceita um valor inteiro de 0 ou 1.
Se definido como 1, 
A seguir
- Saiba mais sobre configurações de instância.
- Saiba mais sobre como monitorar instâncias do Cloud SQL.