sql >> Database teknologi >  >> RDS >> Sqlserver

Sådan finder du placeringen af ​​datafiler og logfiler i SQL Server

Hvis du nogensinde har brug for at vide, hvor dine databasefiler er placeret, skal du køre følgende T-SQL-kode:

USE master;
SELECT 
  name 'Logical Name', 
  physical_name 'File Location'
FROM sys.master_files;

Dette vil returnere en liste over alle datafiler og logfiler for SQL Server-forekomsten.

Sådan ser det ud, når jeg kører den kode i SQL Operations Management Studio på en Mac:

Hvis du bruger Windows, vil din sti ligne en Windows-sti. Noget som dette:

C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\Music.mdf

Selvom du angiver din egen placering, kunne den lige så nemt se sådan ud:

D:\data\Music.mdf

Hvad er disse filer?

Når du opretter en database i SQL Server, oprettes datafiler og transaktionslogfiler automatisk.

  • Datafilerne indeholder data og objekter såsom tabeller, indekser, lagrede procedurer og visninger.
  • Transaktionslogfilerne registrerer alle transaktioner og databaseændringer foretaget af hver transaktion. Transaktionslogfiler indeholder de oplysninger, der kræves for at gendanne alle transaktioner i databasen.

Hvis du ikke udtrykkeligt angiver en placering og et navn for disse filer, vil SQL Server placere dem på standardplaceringen (standardplaceringen er angivet på serverniveau). Sådan finder du standardplaceringen for datafiler og logfiler i SQL Server.

Find filer til en specifik database

Hvis du kun skal finde placeringen af ​​filerne for en bestemt database, kan du forespørge sys.database_files systemkatalogvisning i stedet. Skift blot til den relevante database og kør forespørgslen.

Her er et eksempel:

USE Solutions;
SELECT
  name 'Logical Name', 
  physical_name 'File Location'
FROM sys.database_files;

Dette returnerer kun data og logfiler for Solutions database.


  1. Kun ét udtryk kan angives i valglisten, når underforespørgslen ikke er introduceret med EXISTS

  2. Sådan udvikler du en offline-første indbygget Android-app

  3. Sådan fungerer LIKE-operatøren i MySQL

  4. Gem SQLite-forespørgselsresultater i en tekstfil