Gestire un database tempdb

Questa pagina descrive la gestione del database tempdb in Cloud SQL.

Il database tempdb è un database di sistema che contiene molti oggetti, tra cui tabelle temporanee, stored procedure e altro ancora. Nelle tue istanze, puoi eseguire operazioni comuni su questo database.

Un database tempdb viene ricreato ogni volta che viene riavviata un'istanza. Per evitare la perdita delle autorizzazioni utente, Cloud SQL fornisce le autorizzazioni all'utente sqlserver dopo il riavvio di un'istanza.

Panoramica

L'utente sqlserver ha l'autorizzazione ALTER per gestire le opzioni del database tempdb.

Per ulteriori informazioni sulla gestione di questa risorsa, consulta la pagina del database tempdb.

Gestire i file tempdb

Dopo aver connesso un'istanza, l'utente sqlserver può gestire i file tempdb.

Numero di file

L'utente dispone dell'autorizzazione ALTER sul database tempdb, che gli consente di controllare le impostazioni per il numero di file e altro ancora. Ecco alcuni esempi di operazioni:

  • ALTER DATABASE [tempdb] ADD FILE
  • ALTER DATABASE [tempdb] REMOVE

Dimensioni file

Le sezioni seguenti descrivono i metodi utilizzati per controllare le dimensioni dei file nel databasetempdb.

Per ulteriori informazioni su questi metodi, consulta Riduci il database tempdb.

Modificare le dimensioni dei file in tempdb

Per controllare le dimensioni dei file nel database tempdb, utilizza l'istruzione ALTER DATABASE. Per ulteriori informazioni, consulta Opzioni per file e gruppi di file di ALTER DATABASE (Transact-SQL).

Riduci le dimensioni dei singoli file

msdb.dbo.gcloudsql_tempdb_shrinkfile è una procedura memorizzata che puoi utilizzare per comprimere un singolo file nel database tempdb.

Questa procedura memorizzata offre tutti gli stessi vantaggi del DBCC SHRINKFILE comando.

Di seguito sono riportati esempi di utilizzo della stored procedure msdb.dbo.gcloudsql_tempdb_shrinkfile e dei relativi parametri, eseguiti da Cloud SQL Studio:

  1. Opzione predefinita

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME'

    Dove:

    • FILENAME: il nome del file da comprimere. Ad esempio, tempdev.

    Questo comando esegue i seguenti comandi SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename)
  2. EMPTYFILE

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @empty_file=EMPTY_FILE_INT

    Dove:

    • EMPTY_FILE_INT: un valore intero pari a 0 o 1. Se 1, EMPTYFILE viene passato come opzione. Questa opzione ha la priorità rispetto agli altri parametri.

    Questo comando esegue i seguenti comandi SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, EMPTYFILE)
  3. Dimensioni di destinazione

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=TARGET_SIZE_INT

    Dove:

    • TARGET_SIZE_INT: un numero intero che rappresenta le dimensioni target del file in megabyte. Passa al comando DBCC SHRINKFILE qualsiasi valore superiore o uguale a zero. Ad esempio: 10.

    Questo comando esegue i seguenti comandi SQL Server. Il numero intero 10 è incluso come esempio:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10)
  4. Solo dimensioni e troncamento del target

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @truncateonly=TRUNCATE_ONLY_INT

    Dove:

    • TRUNCATE_ONLY_INT: accetta un valore intero pari a 0 o 1. Se impostato su 1, TRUNCATEONLY viene passato come opzione. La dimensione target viene ignorata se viene passato TRUNCATEONLY. Questa opzione ha la precedenza su NOTRUNCATE.

    Questo comando esegue i seguenti comandi SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10, TRUNCATEONLY)
  5. Dimensioni target e nessuna opzione di troncamento

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME', @target_size=10, @no_truncate=NO_TRUNCATE_INT

    Dove:

    • NO_TRUNCATE_INT: accetta un valore intero pari a 0 o 1. Se impostato su 1, NOTRUNCATE viene passato come opzione.

    Questo comando esegue i seguenti comandi SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10, NOTRUNCATE)

Passaggi successivi