Megosztás a következőn keresztül:


Adatbázis-pillanatkép ritka fájljának méretének megtekintése (Transact-SQL)

A következőkre vonatkozik:SQL Server

Ez a témakör azt ismerteti, hogyan használható Transact-SQL annak ellenőrzésére, hogy egy SQL Server-adatbázisfájl ritka fájl-e, és hogyan deríthető ki a tényleges és maximális mérete. A ritkán használt fájlokat, amelyek az NTFS fájlrendszer egyik funkciója, az SQL Server adatbázis-pillanatképei használják.

Jegyzet

Az adatbázis pillanatképének létrehozása során a rendszer a ritkán használt fájlokat a CREATE DATABASE utasításban szereplő fájlnevekkel hozza létre. Ezeket a fájlneveket sys.master_files tárolja a physical_name oszlopban. A sys.database_files (akár a forrásadatbázisban, akár egy pillanatképben) a physical_name oszlop mindig tartalmazza a forrásadatbázis-fájlok nevét.

Ellenőrizze, hogy az adatbázisfájl ritka fájl-e

  1. Az SQL Server példányán:

    Válassza ki a is_sparse oszlopot vagy az adatbázis pillanatképének sys.database_files táblájából, vagy a sys.master_filestáblából. Az érték azt jelzi, hogy a fájl ritka fájl-e, az alábbiak szerint:

    1 = A fájl ritka fájl.

    0 = A fájl nem ritka fájl.

Ritkított fájl tényleges méretének megállapítása

Jegyzet

A ritka fájlok 64 kilobájtos (KB) növekményekben nőnek; így a lemezen lévő ritka fájlok mérete mindig 64 KB többszöröse.

Ha meg szeretné tekinteni, hogy egy pillanatkép egyes ritka fájljai hány bájtot használnak a lemezen, kérdezze le az SQL Server sys.dm_io_virtual_file_stats dinamikus felügyeleti nézet size_on_disk_bytes oszlopát.

A ritkán használt fájlok által használt lemezterület megtekintéséhez kattintson a jobb gombbal a fájlra a Microsoft Windowsban, kattintson a Tulajdonságokelemre, és tekintse meg a lemezméret értékét.

A ritka fájlok maximális méretének megismerése

A ritka állomány maximális mérete a megfelelő forrásadatbázis-fájl méretéig növekedhet a pillanatkép létrehozásának időpontjában. Ennek a méretnek a megismeréséhez használhatja az alábbi lehetőségek egyikét:

  • A Windows parancssorának használata:

    1. Windows dir parancsok használata.

    2. Jelölje ki a ritkított fájlt, nyissa meg a fájl Tulajdonságok párbeszédpanelt a Windowsban, és nézze meg a Méret értéket.

  • Az SQL Server példányán:

    Válassza ki a méret oszlopot a sys.database_files adatbázis pillanatképéből vagy a sys.master_filesközül. A méret oszlop értéke azt a maximális helyet tükrözi az SQL-oldalakon, amelyet a pillanatkép valaha is használhat; ez az érték megegyezik a Windows Méret mezővel, azzal a különbségkel, hogy a fájl SQL-lapjainak száma alapján van jelölve; a méret bájtban a következő:

    ( oldalszám * 8192)

Példa

Az alábbi szkript az egyes ritka fájlok lemezméretét jeleníti meg kilobájtban. A szkript megabájtban is megjeleníti a maximális méretet, amelyre a ritka fájlok növekedhetnek. Hajtsa végre a Transact-SQL szkriptet az SQL Server Management Studióban.

SELECT  DB_NAME(sd.source_database_id) AS [SourceDatabase], 
		sd.name AS [Snapshot],
		mf.name AS [Filename], 
		size_on_disk_bytes/1024 AS [size_on_disk (KB)],
		mf2.size/128 AS [MaximumSize (MB)]
FROM sys.master_files mf
JOIN sys.databases sd
	ON mf.database_id = sd.database_id
JOIN sys.master_files mf2
	ON sd.source_database_id = mf2.database_id
	AND mf.file_id = mf2.file_id
CROSS APPLY sys.dm_io_virtual_file_stats(sd.database_id, mf.file_id)
WHERE mf.is_sparse = 1
AND mf2.is_sparse = 0
ORDER BY 1;

Lásd még:

adatbázis-pillanatképek (SQL Server)
sys.fn_virtualfilestats (Transact-SQL)
sys.database_files (Transact-SQL)
sys.master_files (Transact-SQL)