Hva er NDF-filformatet?
.ndf er en sekundær datafil som brukes av Microsoft SQL Server for å lagre relasjonsdatabaseinnhold. Den utvider en database utover dens primære .mdf-fil, vanligvis for å spre data over flere fysiske disker for forbedret I/O-gjennomstrømning eller for å overskride størrelsesgrenser for enkeltfiler. En database kan ha null eller mange .ndf-filer; de er alltid valgfrie.
Internt bruker .ndf-filer det identiske 8 KB sidebaserte binærformatet som .mdf-primærfiler. Hver side er nummerert og klassifisert etter type: datasider inneholder tabellrader, indekssider inneholder B-tre-indeksstrukturer, og allokeringssider (PFS, GAM, SGAM) sporer ledig plass. Sider er gruppert i 64 KB «extents» av 8 sammenhengende sider. Valgfri komprimering på sidenivå (rad- eller sidekomprimering, SQL Server 2008+) og Transparent Data Encryption (TDE, AES-128/256) gjelder for .ndf-filer på identisk måte som for .mdf.
En .ndf-fil kan ikke åpnes eller gjenopprettes isolert - SQL Server må koble den sammen med den primære .mdf og transaksjonsloggen .ldf som en komplett databaseenhet. Maksimal filstørrelse er 16 TB på SQL Server 2016 og senere.
Formatet ble formalisert med SQL Server 7.0 (1998), og det interne sideformatet har forblitt i hovedsak uendret siden den gang. SQL Server 2017 utvidet støtten til Linux og containermiljøer ved bruk av det samme filformatet.
Sikkerhet og trygghet
RISIKO: LOWSQL Server-datafiler er passive binære datalagre. Risikoen er knyttet til datakonfidensialitet - NDF-filer kan inneholde sensitivt databaseinnhold. Hvis de finnes uventet på et system, bør kildedatabasen verifiseres før deling. TDE-krypterte NDF-filer krever krypteringsnøkkelen for tilgang.
Formatdetaljer
i et nøtteskall- Navision Database File (eldre Microsoft Dynamics NAV) - .ndf ble brukt som den opprinnelige filendelsen for databaser i eldre Microsoft Navision/Dynamics NAV-installasjoner før migrering til SQL Server.
Programmer som åpner NDF-filer
Tekniske detaljer
dyp spesifikasjon| Utvikler | Microsoft Corporation |
| Koding | Binær (little-endian) |
| Sidestørrelse | 8 KB (8 192 byte) per side - identisk internt format som MDF-primærfiler |
| Extent-størrelse | 64 KB (8 sammenhengende 8 KB-sider) |
| Sidetyper | Data, indeks, LOB/tekst, PFS, GAM, SGAM, IAM og filhodesider |
| Komprimering | Valgfritt - rad- eller sidekomprimering (SQL Server 2008+, Enterprise- og Developer-utgaver) |
| Kryptering | Valgfritt - Transparent Data Encryption (TDE), AES-128 eller AES-256 (SQL Server 2008+) |
| Sideintegritet | PAGE_VERIFY CHECKSUM som standard siden SQL Server 2005; lagret i 96-byte sidehode |
| Maksimal filstørrelse | 16 TB (SQL Server 2016+) |
| Standard autogrowth-økning | 64 MB per hendelse (SQL Server 2012+) |
| Plattform | Windows; Linux (SQL Server 2017+); Docker og containermiljøer |
| Avhengighet | Kan ikke åpnes alene - må kobles til med .mdf-primærfil og .ldf-loggfil |
| Introdusert | SQL Server 7.0 (1998) - konvensjonen for sekundære datafiler ble formalisert i denne versjonen |
| Utgitt | SQL Server 7.0 (1998) - NDF extension formalised; data page format consistent since SQL Server 7 |
| Siste versjon | SQL Server 2022 (v16); page format essentially unchanged since SQL Server 7 |
| Spesifikasjon | learn.microsoft.com |
NDF-konverteringer
Spørsmål og svar fra fellesskapet
spurt av brukereIngen spørsmål ennå - vær den første til å spørre om NDF-filer.