tempdb 데이터베이스 관리

이 페이지에서는 Cloud SQL의 tempdb 데이터베이스 관리를 설명합니다.

tempdb 데이터베이스는 임시 테이블, 저장 프로시저 등을 비롯한 여러 객체를 보유하는 시스템 데이터베이스입니다. 인스턴스에서 이 데이터베이스에 관한 일반적인 작업을 실행할 수 있습니다.

tempdb 데이터베이스는 인스턴스가 다시 시작될 때마다 다시 생성됩니다. Cloud SQL에서는 인스턴스가 다시 시작된 후에 sqlserver 사용자에게 권한을 부여하여 사용자 권한이 유실되지 않게 합니다.

개요

sqlserver 사용자에게는 tempdb 데이터베이스 옵션을 관리할 수 있는 ALTER 권한이 있습니다.

이 리소스 관리에 관한 자세한 내용은 tempdb 데이터베이스 페이지를 참고하세요.

tempdb 파일 관리

인스턴스에 연결한 후 sqlserver 사용자가 tempdb 파일을 관리할 수 있습니다.

파일 수

사용자에게 tempdb 데이터베이스에 대한 ALTER 권한이 있으므로 파일 수 등의 설정을 제어할 수 있습니다. 몇 가지 작업 예는 다음과 같습니다.

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

파일 크기

다음 섹션에서는 tempdb 데이터베이스의 파일 크기를 제어하는 데 사용되는 메서드를 설명합니다.

이러한 방법에 관한 자세한 내용은 tempdb 데이터베이스 축소를 참고하세요.

tempdb에서 파일 크기 변경

tempdb 데이터베이스의 파일 크기를 제어하려면 ALTER DATABASE 문을 사용하세요. 자세한 내용은 ALTER DATABASE (Transact-SQL) 파일 및 파일 그룹 옵션을 참고하세요.

개별 파일 크기 줄이기

msdb.dbo.gcloudsql_tempdb_shrinkfiletempdb 데이터베이스의 개별 파일을 축소하는 데 사용할 수 있는 저장 프로시저입니다.

이 저장 프로시저는 DBCC SHRINKFILE 명령어와 동일한 이점을 모두 제공합니다.

다음은 Cloud SQL Studio에서 실행된 msdb.dbo.gcloudsql_tempdb_shrinkfile 저장 프로시져 및 매개변수의 사용 예입니다.

  1. 기본 옵션

    msdb.dbo.gcloudsql_tempdb_shrinkfile @filename = 'FILENAME'

    각 항목의 의미는 다음과 같습니다.

    • FILENAME: 축소할 파일의 이름입니다. 예를 들면 tempdev입니다.

    이 명령어는 다음 SQL Server 명령어를 실행합니다.

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

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

    각 항목의 의미는 다음과 같습니다.

    • EMPTY_FILE_INT: 0 또는 1인 정수 값입니다. 1이면 EMPTYFILE가 옵션으로 전달됩니다. 이 옵션은 다른 매개변수보다 우선 적용됩니다.

    이 명령어는 다음 SQL Server 명령어를 실행합니다.

    • USE tempdb
    • DBCC SHRINKFILE (@filename, EMPTYFILE)
  3. 대상 크기

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

    각 항목의 의미는 다음과 같습니다.

    • TARGET_SIZE_INT: 파일의 타겟 크기를 메가바이트 단위로 나타내는 정수입니다. 0보다 크거나 같은 값을 DBCC SHRINKFILE 명령어에 전달합니다. 예를 들면 10입니다.

    이 명령어는 다음 SQL Server 명령어를 실행합니다. 정수 10이 예로 포함되어 있습니다.

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10)
  4. 타겟 크기 및 자르기만

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

    각 항목의 의미는 다음과 같습니다.

    • TRUNCATE_ONLY_INT: 0 또는 1의 정수 값을 허용합니다. 1로 설정하면 TRUNCATEONLY가 옵션으로 전달됩니다. TRUNCATEONLY가 전달되면 대상 크기는 무시됩니다. 이 옵션은 NOTRUNCATE보다 우선 적용됩니다.

    이 명령어는 다음 SQL Server 명령어를 실행합니다.

    • USE tempdb
    • DBCC SHRINKFILE (@filename, 10, TRUNCATEONLY)
  5. 타겟 크기 및 자르기 옵션 없음

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

    각 항목의 의미는 다음과 같습니다.

    • NO_TRUNCATE_INT: 0 또는 1의 정수 값을 허용합니다. 1로 설정하면 NOTRUNCATE가 옵션으로 전달됩니다.

    이 명령어는 다음 SQL Server 명령어를 실행합니다.

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

다음 단계