sys.dm_os_volume_stats (Transact-SQL)sys.dm_os_volume_stats (Transact-SQL)

SE APLICA A: SQL Server Azure SQL Database Azure Synapse Analytics Almacenamiento de datos paralelos

Devuelve información sobre el volumen (directorio) del sistema operativo en que están almacenados los archivos y bases de datos especificados en SQL ServerSQL Server.Returns information about the operating system volume (directory) on which the specified databases and files are stored in SQL ServerSQL Server. Utilice esta función de administración dinámica para comprobar los atributos de la unidad de disco física y obtener información sobre el espacio disponible en el directorio.Use this dynamic management function to check the attributes of the physical disk drive or return available free space information about the directory.

Icono de vínculo de tema Convenciones de sintaxis de Transact-SQLTopic link icon Transact-SQL Syntax Conventions

SintaxisSyntax

sys.dm_os_volume_stats (database_id, file_id)  

ArgumentosArguments

database_iddatabase_id
Identificador de la base de datos.ID of the database. database_id es de tipo int y no tiene ningún valor predeterminado.database_id is int, with no default. No puede ser NULL.Cannot be NULL.

file_idfile_id
Id. del archivo.ID of the file. file_id es de tipo int y no tiene ningún valor predeterminado.file_id is int, with no default. No puede ser NULL.Cannot be NULL.

Tabla devueltaTable Returned

ColumnaColumn Tipo de datosData type DescripciónDescription
database_iddatabase_id intint Identificador de la base de datos.ID of the database. No puede ser NULL.Cannot be null.
file_idfile_id intint Id. del archivo.ID of the file. No puede ser NULL.Cannot be null.
volume_mount_pointvolume_mount_point nvarchar(512)nvarchar(512) Punto de montaje en el que el volumen tiene su raíz.Mount point at which the volume is rooted. Puede devolver una cadena vacía.Can return an empty string. Devuelve null en el sistema operativo Linux.Returns null on Linux operating system.
volume_idvolume_id nvarchar(512)nvarchar(512) Identificador del volumen del sistema operativo.Operating system volume ID. Puede devolver una cadena vacía.Can return an empty string. Devuelve null en el sistema operativo Linux.Returns null on Linux operating system.
logical_volume_namelogical_volume_name nvarchar(512)nvarchar(512) Nombre lógico del volumen.Logical volume name. Puede devolver una cadena vacía.Can return an empty string. Devuelve null en el sistema operativo Linux.Returns null on Linux operating system.
file_system_typefile_system_type nvarchar(512)nvarchar(512) Tipo de volumen de sistema de archivos (por ejemplo NTFS, FAT, RAW).Type of file system volume (for example, NTFS, FAT, RAW). Puede devolver una cadena vacía.Can return an empty string. Devuelve null en el sistema operativo Linux.Returns null on Linux operating system.
total_bytestotal_bytes bigintbigint Tamaño total del volumen en bytes.Total size in bytes of the volume. No puede ser NULL.Cannot be null.
available_bytesavailable_bytes bigintbigint Espacio disponible del volumen.Available free space on the volume. No puede ser NULL.Cannot be null.
supports_compressionsupports_compression tinyinttinyint Indica si el volumen admite la compresión del sistema operativo.Indicates if the volume supports operating system compression. No puede ser null en Windows y devuelve null en el sistema operativo Linux.Cannot be null on Windows and returns null on Linux operating system.
supports_alternate_streamssupports_alternate_streams tinyinttinyint Indica si el volumen admite flujos alternativos.Indicates if the volume supports alternate streams. No puede ser null en Windows y devuelve null en el sistema operativo Linux.Cannot be null on Windows and returns null on Linux operating system.
supports_sparse_filessupports_sparse_files tinyinttinyint Indica si el volumen admite archivos dispersos.Indicates if the volume supports sparse files. No puede ser null en Windows y devuelve null en el sistema operativo Linux.Cannot be null on Windows and returns null on Linux operating system.
is_read_onlyis_read_only tinyinttinyint Indica si el volumen está marcado actualmente como de solo lectura.Indicates if the volume is currently marked as read only. No puede ser NULL.Cannot be null.
is_compressedis_compressed tinyinttinyint Indica si el volumen está comprimido actualmente.Indicates if this volume is currently compressed. No puede ser null en Windows y devuelve null en el sistema operativo Linux.Cannot be null on Windows and returns null on Linux operating system.
incurs_seek_penaltyincurs_seek_penalty tinyinttinyint Indica el tipo de almacenamiento que admite este volumen.Indicates the type of storage supporting this volume. Los valores posibles son:Possible values are:

0: no hay penalización de búsqueda en este volumen, normalmente cuando el dispositivo de almacenamiento es PMM o SSD0: No seek penalty on this volume, typically when the storage device is PMM or SSD

1: buscar penalización en este volumen, normalmente cuando el dispositivo de almacenamiento es HDD1: Seek penalty on this volume, typically when the storage device is HDD

2: no se puede determinar el tipo de almacenamiento cuando el volumen está en una ruta de acceso UNC o en recursos compartidos montados2: The storage type can't be determined when the volume is on a UNC path or mounted shares

NULL: el tipo de almacenamiento no se puede determinar en el sistema operativo LinuxNULL: The storage type can't be determined on Linux operating system

Se aplica a: SQL ServerSQL Server (a partir de SQL Server 2019 (15.x)SQL Server 2019 (15.x) )Applies to: SQL ServerSQL Server (starting with SQL Server 2019 (15.x)SQL Server 2019 (15.x))

SeguridadSecurity

PermisosPermissions

Requiere el permiso VIEW SERVER STATE.Requires VIEW SERVER STATE permission.

EjemplosExamples

A.A. Devolver el espacio total y el espacio disponible de todos los archivos de base de datosReturn total space and available space for all database files

El ejemplo siguiente devuelve el espacio total y el espacio disponible (en bytes) de todos los archivos de base de datos de la instancia de SQL ServerSQL Server.The following example returns the total space and available space (in bytes) for all database files in the instance of SQL ServerSQL Server.

SELECT f.database_id, f.file_id, volume_mount_point, total_bytes, available_bytes  
FROM sys.master_files AS f  
CROSS APPLY sys.dm_os_volume_stats(f.database_id, f.file_id);  

B.B. Devolver el espacio total y el espacio disponible de la base de datos actualReturn total space and available space for the current database

El ejemplo siguiente devuelve el espacio total y el espacio disponible (en bytes) de los archivos de base de datos de la base de datos actual.The following example returns the total space and available space (in bytes) for the database files in the current database.

SELECT database_id, f.file_id, volume_mount_point, total_bytes, available_bytes  
FROM sys.database_files AS f  
CROSS APPLY sys.dm_os_volume_stats(DB_ID(f.name), f.file_id);  

Consulte tambiénSee Also

sys.master_files ()de Transact-SQL sys.master_files (Transact-SQL)
sys.database_files (Transact-SQL)sys.database_files (Transact-SQL)