Database master

Si applica a:SQL ServerDatabase SQL di AzureIstanza gestita di SQL di Azure

Nel database master vengono registrate tutte le informazioni a livello di sistema relative a un sistema SQL Server. inclusi i metadati a livello globale dell'istanza quali gli account di accesso, gli endpoint, i server collegati e le impostazioni di configurazione di sistema. In SQL Server, gli oggetti di sistema non sono più archiviati nel database master, ma sono archiviati nel database Resource. Nel database master vengono inoltre registrate l'esistenza di tutti gli altri database e la posizione dei relativi file di database, nonché le informazioni di inizializzazione per SQL Server. Non è pertanto possibile avviare SQL Server se il database master non è disponibile.

Importante

Per i singoli database e i pool elastici di database SQL di Azure, si applicano solo il database master e il database tempdb. Per altre informazioni, vedere Informazioni sul server di database SQL di Azure. Per una descrizione di tempdb nel contesto del database SQL di Azure, vedere Database tempdb nel database SQL. Per Istanza gestita di SQL di Azure si applicano tutti i database di sistema. Per altre informazioni sulle istanze gestite nel database SQL di Azure, vedere Informazioni su Istanza gestita

Proprietà fisiche del database master

Nella tabella seguente sono illustrati i valori di configurazione iniziali dei file di dati e di log del database master per SQL Server e per Istanza gestita di SQL di Azure. Le dimensioni di questi file possono variare leggermente a seconda dell'edizione di SQL Server.

file Nome logico Nome fisico Aumento di dimensioni del file
Dati primari master master.mdf Aumento automatico del 10% fino a quando il disco risulta pieno.
Log mastlog mastlog.ldf Aumento automatico del 10% fino a un massimo di 2 terabyte.

Per informazioni su come spostare i file di dati e di log del database master , vedere Spostare i database di sistema.

Importante

Per il server di database SQL di Azure, l'utente non ha alcun controllo sulle dimensioni del database master.

Opzioni di database

Nella tabella seguente è indicato il valore predefinito di ogni opzione del database master per SQL Server e per Istanza gestita di SQL di Azure e viene specificato se il valore è modificabile. Per visualizzare le impostazioni correnti di queste opzioni, usare la vista del catalogo sys.databases .

Importante

Per i database singoli e i pool elastici di database SQL di Azure, l'utente non ha alcun controllo su queste opzioni del database.

Opzione di database Valore predefinito Modificabile
ALLOW_SNAPSHOT_ISOLATION In... No
ANSI_NULL_DEFAULT OFF
ANSI_NULLS OFF
ANSI_PADDING OFF
ANSI_WARNINGS OFF
ARITHABORT OFF
AUTO_CLOSE OFF No
AUTO_CREATE_STATISTICS In...
AUTO_SHRINK OFF No
AUTO_UPDATE_STATISTICS In...
AUTO_UPDATE_STATISTICS_ASYNC OFF
CHANGE_TRACKING OFF No
CONCAT_NULL_YIELDS_NULL OFF
CURSOR_CLOSE_ON_COMMIT OFF
CURSOR_DEFAULT GLOBAL
Opzioni relative alla disponibilità del database ONLINE

MULTI_USER

READ_WRITE
No

No

No
DATE_CORRELATION_OPTIMIZATION OFF
DB_CHAINING In... No
ENCRYPTION OFF No
MIXED_PAGE_ALLOCATION In... No
NUMERIC_ROUNDABORT OFF
PAGE_VERIFY CHECKSUM
PARAMETERIZATION SEMPLICE
QUOTED_IDENTIFIER OFF
READ_COMMITTED_SNAPSHOT OFF No
RECOVERY SEMPLICE
RECURSIVE_TRIGGERS OFF
Opzioni relative a Service Broker DISABLE_BROKER No
TRUSTWORTHY OFF

Per una descrizione di queste opzioni di database, vedere ALTER DATABASE (Transact-SQL).

Restrizioni

Nel database master non è possibile eseguire le operazioni seguenti:

  • Aggiunta di file o di filegroup.
  • È possibile eseguire solo un backup completo del database nel database master.
  • Modifica delle regole di confronto. Le regole di confronto predefinite corrispondono a quelle del server.
  • Modifica del proprietario del database. master è di proprietà di sa.
  • Creazione di un catalogo o di un indice full-text.
  • Creazione di trigger nelle tabelle di sistema del database.
  • Eliminazione del database.
  • Eliminazione dell'utente guest dal database.
  • Abilitazione dell'acquisizione dei dati delle modifiche.
  • Partecipazione al mirroring del database.
  • Rimozione del filegroup primario, del file di dati primario o del file di log.
  • Ridenominazione del filegroup primario o del database.
  • Impostazione del database su OFFLINE.
  • Impostazione del database o del filegroup primario su READ_ONLY.

Consigli

Quando si utilizza il database master , è consigliabile attenersi alle indicazioni seguenti:

  • Tenere sempre a disposizione un backup aggiornato del database master .

  • Creare il prima possibile un backup del database master dopo aver eseguito le operazioni seguenti:

    • Creazione, modifica o eliminazione di un database
    • Modifica dei valori di configurazione di un server o di un database.
    • Modifica o aggiunta di account di accesso.
  • Non creare oggetti utente nel database master. In caso contrario, sarà necessario creare backup del database master più frequenti.

  • Non impostare l'opzione TRUSTWORTHY su ON per il database master .

Cosa fare se il database master diventa inutilizzabile

Se il database master diventa inutilizzabile, è possibile ripristinare uno stato utilizzabile del database in uno dei modi seguenti:

  • Ripristinare il database master da un backup del database corrente.

    Se è possibile avviare l'istanza del server, dovrebbe essere possibile anche ripristinare il database master da un backup completo del database. Per altre informazioni, vedere Ripristinare il database master (Transact-SQL).

  • Ricompilare il database master da zero.

    Se non è possibile avviare SQL Server in seguito a gravi danni al database master, è necessario ricompilare il database master. Per altre informazioni, vedere Ricompilare database di sistema.

    Importante

    La ricompilazione del database master comporta la ricompilazione di tutti i database di sistema.