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

Sådan angives placeringen af ​​datafiler og logfiler, når du opretter en database i SQL Server

Den enkleste måde at oprette en database i SQL Server på er at bruge CREATE DATABASE my_database uden at angive andet. Når du gør dette, oprettes datafiler og logfiler på standardplaceringen (se, hvordan du finder standardplaceringen).

Men nogle gange vil du måske have, at datafilerne og logfilerne skal ligge et andet sted. Hvis det er tilfældet, skal du bruge følgende kodeeksempel til eksplicit at angive din egen placering for databasens datafiler og logfiler.

USE master;
GO
CREATE DATABASE Solutions
ON
( NAME = Solutions_dat,  
    FILENAME = 'D:\mssql\data\Solutionsdat.mdf',
    SIZE = 10MB,
    MAXSIZE = 50MB,
    FILEGROWTH = 5MB )  
LOG ON
( NAME = Solutions_log,  
    FILENAME = 'D:\mssql\data\Solutionslog.ldf',
    SIZE = 5MB,
    MAXSIZE = 25MB,
    FILEGROWTH = 5MB );
GO

Dette eksempel bruger Windows-stikonventioner (starter med et drevbogstav og bruger en omvendt skråstreg).

Nedenfor er et eksempel for Linux- og Mac-systemer:

USE master;
GO
CREATE DATABASE Solutions
ON
( NAME = Solutions_dat,  
    FILENAME = '/var/opt/mssql/data/Solutionsdat.mdf',
    SIZE = 10MB,
    MAXSIZE = 50MB,
    FILEGROWTH = 5MB )  
LOG ON
( NAME = Solutions_log,  
    FILENAME = '/var/opt/mssql/data/Solutionslog.ldf',
    SIZE = 5MB,
    MAXSIZE = 25MB,
    FILEGROWTH = 5MB );
GO

.mdf fil er datafilen og .ldf fil er transaktionslogfilen. Vi specificerer størrelsen på hver fil, såvel som dens maksimale størrelse og dens filvækst. FILEGROWTH angiver den automatiske vækststigning for filen (mængden af ​​plads, der føjes til filen, hver gang der kræves ny plads).

  • FILESIZE kan angives i KB, MB, GB eller TB.
  • MAXSIZE kan angives i KB, MB, GB, TB eller UNLIMITED.
  • FILEGROWTH kan angives i KB, MB, GB, TB eller %.

Standarden er KB (for kilobytes).


  1. Hvad er CHAR_LENGTH() i MySQL?

  2. Se SQL Server Agent-jobhistorik med SSMS

  3. Konverter månedsnavn til månedsnummer i PostgreSQL

  4. Hvornår kan vi bruge et identifikationsnummer i stedet for dets navn i PostgreSQL?