Administra una base de datos tempdb

En esta página, se describe la administración de la base de datos de tempdb en Cloud SQL.

La base de datos temporal es una base de datos del sistema que contiene muchos objetos, incluidas tablas temporales, procedimientos almacenados y mucho más. En las instancias, puedes realizar operaciones comunes en esta base de datos.

Se vuelve a crear una base de datos temporal cada vez que se reinicia una instancia. Para evitar la pérdida de permisos del usuario, Cloud SQL proporciona permisos al usuario sqlserver después de reiniciar una instancia.

Descripción general

El usuario sqlserver tiene el permiso ALTER para administrar las opciones de base de datos temporales.

Para obtener más información sobre cómo administrar este recurso, consulta la página Base de datos tempdb.

Administra archivos tempdb

Después de conectarte a una instancia, el usuario sqlserver puede administrar los archivos tempdb.

Cantidad de archivos

El usuario tiene el permiso ALTER en la base de datos tempdb, lo que le permite controlar la configuración de la cantidad de archivos y mucho más. Estos son algunos ejemplos de operaciones:

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

Tamaño del archivo

En las siguientes secciones, se describen los métodos que se usan para controlar el tamaño de los archivos en la base de datos de tempdb.

Para obtener más información sobre estos métodos, consulta Cómo reducir la base de datos de tempdb.

Cambia los tamaños de los archivos en tempdb

Para controlar el tamaño de los archivos en la base de datos tempdb, usa la sentencia ALTER DATABASE. Para obtener más información, consulta ALTER DATABASE (Transact-SQL) y Opciones de grupo de archivos.

Reduce el tamaño de los archivos individuales

msdb.dbo.gcloudsql_tempdb_shrinkfile es un procedimiento almacenado que puedes usar para reducir un archivo individual en la base de datos tempdb.

Este procedimiento almacenado proporciona todos los mismos beneficios que el comando DBCC SHRINKFILE.

Los siguientes son ejemplos de usos del procedimiento almacenado msdb.dbo.gcloudsql_tempdb_shrinkfile y sus parámetros, ejecutados desde Cloud SQL Studio:

  1. Opción predeterminada

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME'

    Aquí:

    • FILENAME: Es el nombre del archivo que se reducirá. Por ejemplo, tempdev

    Este comando ejecuta los siguientes comandos de SQL Server:

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

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

    Aquí:

    • EMPTY_FILE_INT: Un valor entero que es 0 o 1. Si es 1, entonces EMPTYFILE se pasa como una opción. Esta opción tiene prioridad sobre otros parámetros.

    Este comando ejecuta los siguientes comandos de SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, EMPTYFILE)
  3. Tamaño del objetivo

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

    Aquí:

    • TARGET_SIZE_INT: Un número entero que representa el tamaño objetivo del archivo en megabytes. Pasa al comando DBCC SHRINKFILE cualquier valor que sea mayor o igual que cero. Por ejemplo, 10.

    Este comando ejecuta los siguientes comandos de SQL Server. El número entero 10 se incluye como ejemplo:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10)
  4. Tamaño objetivo y truncamiento solo

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

    Aquí:

    • TRUNCATE_ONLY_INT: Acepta un valor entero de 0 o 1. Si se establece en 1, TRUNCATEONLY se pasa como una opción. Se ignora el tamaño de destino si se pasa TRUNCATEONLY. Esta opción tiene prioridad sobre NOTRUNCATE.

    Este comando ejecuta los siguientes comandos de SQL Server:

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10, TRUNCATEONLY)
  5. Tamaño objetivo y sin opción de truncamiento

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

    Aquí:

    • NO_TRUNCATE_INT: Acepta un valor entero de 0 o 1. Si se establece en 1, NOTRUNCATE se pasa como una opción.

    Este comando ejecuta los siguientes comandos de SQL Server:

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

¿Qué sigue?