Exibir o tamanho do arquivo esparso de um instantâneo de banco de dados (Transact-SQL)

Este tópico descreve como usar o Transact-SQL para verificar se um arquivo de banco de dados do SQL Server é um arquivo esparso e descobrir seu tamanho real e máximo. Arquivos esparsos, que são um recurso do sistema de arquivos NTFS, são usados por instantâneos do banco de dados do SQL Server.

ObservaçãoObservação

Durante a criação do instantâneo do banco de dados, arquivos esparsos são criados usando os nomes de arquivo na instrução CREATE DATABASE. Esses nomes de arquivo são armazenados em sys.master_files na coluna physical_name. Em sys.database_files (quer seja no banco de dados de origem ou em um instantâneo), a coluna physical_name sempre contém os nomes dos arquivos de banco de dados de origem.

Verificar se um arquivo de banco de dados é um arquivo esparso

  1. Na instância do SQL Server:

    Selecione a coluna is_sparse em sys.database_files no instantâneo do banco de dados ou em sys.master_files. O valor indica se o arquivo é um arquivo esparso, como segue:

    1 = O arquivo é um arquivo esparso.

    0 = O arquivo não é um arquivo esparso.

Descobrir o tamanho real de um arquivo esparso

ObservaçãoObservação

Arquivos esparsos crescem em incrementos de 64 kilobyte (KB); portanto, o tamanho de um arquivo esparso em disco sempre é um múltiplo de 64 KB.

Para exibir o número de bytes que cada arquivo esparso de um instantâneo está usando no disco no momento, consulte a coluna size_on_disk_bytes da exibição de gerenciamento dinâmico SQL Server sys.dm_io_virtual_file_stats.

Para exibir o espaço em disco usado por um arquivo esparso, clique com o botão direito do mouse no Microsoft Windows, clique em Propriedades e examine o valor de Tamanho em disco.

Descobrir o tamanho máximo de um arquivo esparso

O tamanho máximo de crescimento de um arquivo esparso é o tamanho do arquivo de banco de dados de origem correspondente, no momento da criação do instantâneo. Para saber qual é este tamanho, você pode usar uma das alternativas seguintes:

  • Usando o prompt de comando do Windows:

    1. Use os comandos dir do Windows.

    2. Selecione o arquivo esparso, abra a caixa de diálogo Propriedades do arquivo no Windows, e consulte o valor Tamanho.

  • Na instância do SQL Server:

    Selecione a coluna tamanho em sys.database_files no instantâneo do banco de dados ou em sys.master_files. O valor da coluna size reflete o espaço máximo, em páginas SQL, que o instantâneo pode vir a usar; esse valor é equivalente ao campo Tamanho do Windows, a não ser que seja representado em número de páginas SQL no arquivo; o tamanho em bytes é:

    ( number_of_pages * 8192)

Consulte também

Referência

sys.fn_virtualfilestats (Transact-SQL)

sys.database_files (Transact-SQL)

sys.master_files (Transact-SQL)

Conceitos

Instantâneos de banco de dados (SQL Server)