Novità del database SQL di Azure & SQL Istanza gestitaWhat's new in Azure SQL Database & SQL Managed Instance?

SI APPLICA A: Database SQL di Azure Istanza gestita di SQL di Azure

Questo articolo elenca le funzionalità del database SQL di Azure e di Azure SQL Istanza gestita attualmente disponibili in anteprima pubblica.This article lists Azure SQL Database and Azure SQL Managed Instance features that are currently in public preview. Per gli aggiornamenti e i miglioramenti del database SQL e di SQL Istanza gestita, vedere SQL database & sql istanza gestita Service Updates.For SQL Database and SQL Managed Instance updates and improvements, see SQL Database & SQL Managed Instance service updates. Per gli aggiornamenti e i miglioramenti apportati ad altri servizi di Azure, vedere Aggiornamenti del servizio.For updates and improvements to other Azure services, see Service updates.

NovitàWhat's new?

La documentazione per il database SQL di Azure e Istanza gestita SQL di Azure è stata suddivisa in sezioni separate.Documentation for Azure SQL Database and Azure SQL Managed Instance has been split into separate sections. È stato anche aggiornato il modo in cui si fa riferimento a un'istanza gestita dall' istanza gestita di database SQL di Azure ad Azure SQL istanza gestita.We've also updated how we refer to a managed instance from Azure SQL Database managed instance to Azure SQL Managed Instance.

Questa operazione è stata eseguita perché alcune funzionalità e funzionalità variano molto tra un singolo database e un'istanza gestita e sono diventate sempre più complesse per spiegare le sfumature complesse tra il database SQL di Azure e Istanza gestita SQL di Azure in singoli articoli condivisi.We've done this because some features and functionality vary greatly between a single database and a managed instance, and it has become increasingly challenging to explain complex nuances between Azure SQL Database and Azure SQL Managed Instance in individual shared articles.

Questo chiarimento tra i diversi prodotti SQL di Azure dovrebbe semplificare e semplificare il processo di utilizzo del SQL Server motore di database in Azure, indipendentemente dal fatto che si tratti di un singolo database gestito nel database SQL di Azure, di un'istanza gestita completa che ospita più database in Azure SQL Istanza gestita o del familiare prodotto locale SQL Server ospitato in una macchina virtuale in Azure.This clarification between the different Azure SQL products should simplify and streamline the process of working with the SQL Server database engine in Azure, whether it's a single managed database in Azure SQL Database, a fully fledged managed instance hosting multiple databases in Azure SQL Managed Instance, or the familiar on-premises SQL Server product hosted on a virtual machine in Azure.

Si tenga presente che questo è un lavoro in corso e non tutti gli articoli sono stati ancora aggiornati.Consider that this is a work in progress and not every article has been updated yet. Ad esempio, la documentazione per le istruzioni Transact-SQL (T-SQL), le stored procedure e molte funzionalità condivise tra il database SQL di Azure e Istanza gestita SQL di Azure non sono ancora state completate, quindi ci ringraziamo per la pazienza mentre continuiamo a chiarire il contenuto.For example, documentation for Transact-SQL (T-SQL) statements, stored procedures, and many features shared between Azure SQL Database and Azure SQL Managed Instance are not yet complete, so we thank you for your patience as we continue clarifying the content.

Questa tabella fornisce un confronto rapido per la modifica della terminologia:This table provides a quick comparison for the change in terminology:

Nuovo termineNew term Termine precedentePrevious term SpiegazioneExplanation
Istanza gestita di database SQL di AzureAzure SQL Managed Instance Istanza gestita di database SQL di AzureAzure SQL Database managed instance Azure SQL Istanza gestita è il proprio prodotto all'interno della famiglia SQL di Azure, anziché semplicemente un'opzione di distribuzione nel database SQL di Azure.Azure SQL Managed Instance is its own product within the Azure SQL family, rather than just a deployment option within Azure SQL Database.
Database SQL di AzureAzure SQL Database Database singolo database SQL di AzureAzure SQL Database single database Se non specificato diversamente in modo esplicito, il nome del prodotto database SQL di Azure include sia database singoli che database distribuiti in un pool elastico.Unless explicitly specified otherwise, the product name Azure SQL Database includes both single databases and databases deployed to an elastic pool.
Database SQL di AzureAzure SQL Database Pool elastico del database SQL di AzureAzure SQL Database elastic pool Se non specificato diversamente in modo esplicito, il nome del prodotto database SQL di Azure include sia database singoli che database distribuiti in un pool elastico.Unless explicitly specified otherwise, the product name Azure SQL Database includes both single databases and databases deployed to an elastic pool.
Database SQL di AzureAzure SQL Database Database SQL di AzureAzure SQL Database Sebbene il termine rimanga invariato, ora si applica solo alle distribuzioni di database singolo e del pool elastico e non include l'istanza gestita.Though the term stays the same, it now only applies to single database and elastic pool deployments, and does not include managed instance.
SQL di AzureAzure SQL N/DN/A Questo si riferisce alla famiglia di prodotti SQL Server motore di database disponibili in Azure: database SQL di Azure, Azure SQL Istanza gestita e SQL Server in macchine virtuali di Azure.This refers to the family of SQL Server database engine products that are available in Azure: Azure SQL Database, Azure SQL Managed Instance, and SQL Server on Azure VMs.

Funzionalità disponibili in anteprima pubblicaFeatures in public preview

FunzionalitàFeature DettagliDetails
Rescupero accelerato del database con database singoli e pool elasticiAccelerated database recovery with single databases and elastic pools Per informazioni, vedere Ripristino accelerato del database.For information, see Accelerated Database Recovery.
Individuazione dati e classificazioneData discovery & classification Per informazioni, vedere database SQL di Azure e individuazione dei dati di analisi delle sinapsi di azure & classificazione.For information, see Azure SQL Database and Azure Synapse Analytics data discovery & classification.
Processi di database elastici (anteprima)Elastic database jobs (preview) Per informazioni, vedere Creare, configurare e gestire processi elastici.For information, see Create, configure, and manage elastic jobs.
Query elasticheElastic queries Per informazioni, vedere Panoramica delle query elastiche.For information, see Elastic query overview.
Transazioni elasticheElastic transactions Transazioni distribuite tra database cloud.Distributed transactions across cloud databases.
Editor di query nel portale di AzureQuery editor in the Azure portal Per informazioni, vedere Usare l'editor di query SQL del portale di Azure per connettersi ed eseguire query sui dati.For information, see Use the Azure portal's SQL query editor to connect and query data.
R Services/Machine Learning con database singoli e pool elasticiR services / machine learning with single databases and elastic pools Per informazioni, vedere Machine Learning Services nel database SQL di Azure.For information, see Machine Learning Services in Azure SQL Database.
Analitica SQLSQL Analytics Per informazioni, vedere Analisi SQL di Azure.For information, see Azure SQL Analytics.
 

SQL Istanza gestita nuove funzionalità e problemi notiSQL Managed Instance new features and known issues

Aggiornamenti di SQL Istanza gestita H2 2019SQL Managed Instance H2 2019 updates

Aggiornamenti di SQL Istanza gestita H1 2019SQL Managed Instance H1 2019 updates

Le funzionalità seguenti sono abilitate nel modello di distribuzione di SQL Istanza gestita in H1 2019:The following features are enabled in the SQL Managed Instance deployment model in H1 2019:

Problemi notiKnown issues

ProblemaIssue Data individuataDate discovered StatoStatus Data risoltaDate resolved
L'entità servizio non può accedere a Azure AD e AKVService Principal cannot access Azure AD and AKV 2020 agostoAug 2020 Ha una soluzione alternativaHas Workaround
Il ripristino del backup manuale senza CHECKSUM potrebbe avere esito negativoRestoring manual backup without CHECKSUM might fail Maggio 2020May 2020 RisoltoResolved Giugno 2020June 2020
Agent smette di rispondere durante la modifica, la disabilitazione o l'abilitazione di processi esistentiAgent becomes unresponsive upon modifying, disabling, or enabling existing jobs Maggio 2020May 2020 RisoltoResolved Giugno 2020June 2020
Autorizzazioni per il gruppo di risorse non applicate a SQL Istanza gestitaPermissions on resource group not applied to SQL Managed Instance Febbraio 2020Feb 2020 Ha una soluzione alternativaHas Workaround
Limitazione del failover manuale tramite il portale per i gruppi di failoverLimitation of manual failover via portal for failover groups Gennaio 2020Jan 2020 Ha una soluzione alternativaHas Workaround
Per i ruoli SQL Agent sono necessarie autorizzazioni EXECUTE esplicite per gli accessi diversi da sysadminSQL Agent roles need explicit EXECUTE permissions for non-sysadmin logins Dicembre 2019Dec 2019 Ha una soluzione alternativaHas Workaround
I processi di SQL Agent possono essere interrotti dal riavvio del processo dell'agenteSQL Agent jobs can be interrupted by Agent process restart Dicembre 2019Dec 2019 RisoltoResolved Marzo 2020Mar 2020
Gli account di accesso e gli utenti Azure AD non sono supportati in SSDTAzure AD logins and users are not supported in SSDT Novembre 2019Nov 2019 Nessuna soluzione alternativaNo Workaround
I limiti di memoria di OLTP in memoria non vengono applicatiIn-memory OLTP memory limits are not applied Ottobre 2019Oct 2019 Ha una soluzione alternativaHas Workaround
Errore sbagliato restituito durante il tentativo di rimozione di un file non vuotoWrong error returned while trying to remove a file that is not empty Ottobre 2019Oct 2019 Ha una soluzione alternativaHas Workaround
Le operazioni che consentono di modificare il livello di servizio e creare istanze sono bloccate dal ripristino di database in corsoChange service tier and create instance operations are blocked by ongoing database restore Settembre 2019Sep 2019 Ha una soluzione alternativaHas Workaround
Potrebbe essere necessario riconfigurare Resource Governor sul livello di servizio business critical dopo il failoverResource Governor on Business Critical service tier might need to be reconfigured after failover Settembre 2019Sep 2019 Ha una soluzione alternativaHas Workaround
È necessario reinizializzare le finestre di dialogo Service Broker tra database dopo l'aggiornamento del livello di servizioCross-database Service Broker dialogs must be reinitialized after service tier upgrade Agosto 2019Aug 2019 Ha una soluzione alternativaHas Workaround
La rappresentazione dei tipi di account di accesso Azure AD non è supportataImpersonation of Azure AD login types is not supported Luglio 2019Jul 2019 Nessuna soluzione alternativaNo Workaround
Parametro @query non supportato in sp_send_db_mail@query parameter not supported in sp_send_db_mail April 2019Apr 2019 Nessuna soluzione alternativaNo Workaround
È necessario riconfigurare la replica transazionale dopo il failover geograficoTransactional Replication must be reconfigured after geo-failover Marzo 2019Mar 2019 Nessuna soluzione alternativaNo Workaround
Il database temporaneo viene usato durante l'operazione RESTORETemporary database is used during RESTORE operation Ha una soluzione alternativaHas Workaround
La struttura e il contenuto di TEMPDB vengono ricreatiTEMPDB structure and content is re-created Nessuna soluzione alternativaNo Workaround
Superamento dello spazio di archiviazione con file di database di piccole dimensioniExceeding storage space with small database files Ha una soluzione alternativaHas Workaround
Valori GUID visualizzati al posto dei nomi di databaseGUID values shown instead of database names Ha una soluzione alternativaHas Workaround
I log degli errori non sono permanentiError logs aren't persisted Nessuna soluzione alternativaNo Workaround
L'ambito della transazione in due database nella stessa istanza non è supportatoTransaction scope on two databases within the same instance isn't supported Ha una soluzione alternativaHas Workaround Marzo 2020Mar 2020
I moduli CLR e i server collegati a volte non riescono a fare riferimento all'indirizzo IP localeCLR modules and linked servers sometimes can't reference a local IP address Ha una soluzione alternativaHas Workaround
Coerenza del database non verificata usando DBCC CHECKDB dopo il ripristino del database dall'Archiviazione BLOB di Azure.Database consistency not verified using DBCC CHECKDB after restore database from Azure Blob Storage. RisoltoResolved Novembre 2019Nov 2019
Il ripristino temporizzato di database dal livello business critical al livello utilizzo generico non avrà esito positivo se il database di origine contiene oggetti OLTP in memoria.Point-in-time database restore from Business Critical tier to General Purpose tier will not succeed if source database contains in-memory OLTP objects. RisoltoResolved Ottobre 2019Oct 2019
Funzionalità posta elettronica database con server di posta elettronica esterni (non Azure) tramite connessione protettaDatabase mail feature with external (non-Azure) mail servers using secure connection RisoltoResolved Ottobre 2019Oct 2019
Database indipendenti non supportati in SQL Istanza gestitaContained databases not supported in SQL Managed Instance RisoltoResolved Agosto 2019Aug 2019

L'entità servizio non può accedere a Azure AD e AKVService Principal cannot access Azure AD and AKV

In alcune circostanze potrebbe esistere un problema con l'entità servizio usata per accedere ai servizi Azure AD e Azure Key Vault (AKV).In some circumstances there might exist an issue with Service Principal used to access Azure AD and Azure Key Vault (AKV) services. Questo problema influisca quindi sull'utilizzo dell'autenticazione Azure AD e della crittografia Transparent Database Encryption (Transparent Database Encryption) con SQL Istanza gestita.As a result, this issue impacts usage of Azure AD authentication and Transparent Database Encryption (TDE) with SQL Managed Instance. Questo potrebbe essere un problema di connettività intermittente o non essere in grado di eseguire istruzioni, ad esempio creare un account di accesso/utente da un PROVIDER esterno o eseguire come account di accesso/utente.This might be experienced as an intermittent connectivity issue, or not being able to run statements such are CREATE LOGIN/USER FROM EXTERNAL PROVIDER or EXECUTE AS LOGIN/USER. La configurazione di Transparent Data Encryption con una chiave gestita dal cliente in un nuovo Istanza gestita SQL di Azure potrebbe anche non funzionare in alcune circostanze.Setting up TDE with customer-managed key on a new Azure SQL Managed Instance might also not work in some circumstances.

Soluzione alternativa: per evitare che questo problema si verifichi nel istanza gestita SQL prima di eseguire i comandi di aggiornamento o, nel caso in cui il problema sia già stato riscontrato dopo l'aggiornamento, passare al portale di Azure, accedere al Pannello di amministrazionedi SQL istanza gestita Active Directory.Workaround: To prevent this issue from occurring on your SQL Managed Instance before executing any update commands, or in case you have already experienced this issue after update commands, go to Azure Portal, access SQL Managed Instance Active Directory admin blade. Verificare che venga visualizzato il messaggio di errore "Istanza gestita necessaria un'entità servizio per accedere Azure Active Directory.Verify if you can see the error message "Managed Instance needs a Service Principal to access Azure Active Directory. Fare clic qui per creare un'entità servizio ".Click here to create a Service Principal”. Se è stato rilevato questo messaggio di errore, fare clic su di esso e seguire le istruzioni dettagliate fornite fino a quando l'errore non è stato risolto.In case you have encountered this error message, click on it, and follow the step by step instructions provided until this error have been resolved.

Il ripristino del backup manuale senza CHECKSUM potrebbe avere esito negativoRestoring manual backup without CHECKSUM might fail

In alcuni casi, il backup manuale dei database eseguiti in un'istanza gestita senza CHECKSUM potrebbe non essere ripristinato.In certain circumstances manual backup of databases that was made on a managed instance without CHECKSUM might fail to be restored. In questi casi, riprovare a ripristinare il backup fino a quando l'operazione non viene completata.In such cases, retry restoring the backup until you're successful.

Soluzione alternativa: eseguire il backup manuale dei database nelle istanze gestite con checksum abilitato.Workaround: Take manual backups of databases on managed instances with CHECKSUM enabled.

Agent smette di rispondere durante la modifica, la disabilitazione o l'abilitazione di processi esistentiAgent becomes unresponsive upon modifying, disabling, or enabling existing jobs

In alcuni casi, la modifica, la disabilitazione o l'abilitazione di un processo esistente può causare la mancata risposta da parte dell'agente.In certain circumstances, modifying, disabling, or enabling an existing job can cause the agent to become unresponsive. Il problema viene risolto automaticamente al momento del rilevamento, con conseguente riavvio del processo dell'agente.The issue is automatically mitigated upon detection, resulting in a restart of the agent process.

Autorizzazioni per il gruppo di risorse non applicate a SQL Istanza gestitaPermissions on resource group not applied to SQL Managed Instance

Quando il ruolo Azure collaboratore SQL Istanza gestita viene applicato a un gruppo di risorse (RG), non viene applicato a SQL Istanza gestita e non ha alcun effetto.When the SQL Managed Instance Contributor Azure role is applied to a resource group (RG), it's not applied to SQL Managed Instance and has no effect.

Soluzione temporanea: configurare un ruolo di collaboratore di SQL istanza gestita per gli utenti a livello di sottoscrizione.Workaround: Set up a SQL Managed Instance Contributor role for users at the subscription level.

Limitazione del failover manuale tramite il portale per i gruppi di failoverLimitation of manual failover via portal for failover groups

Se un gruppo di failover si estende su più istanze in sottoscrizioni o gruppi di risorse di Azure diversi, non è possibile avviare il failover manuale dall'istanza primaria del gruppo di failover.If a failover group spans across instances in different Azure subscriptions or resource groups, manual failover cannot be initiated from the primary instance in the failover group.

Soluzione temporanea: avviare il failover tramite il portale dall'istanza geografica secondaria.Workaround: Initiate failover via the portal from the geo-secondary instance.

Per i ruoli SQL Agent sono necessarie autorizzazioni EXECUTE esplicite per gli accessi diversi da sysadminSQL Agent roles need explicit EXECUTE permissions for non-sysadmin logins

Se gli account di accesso non sysadmin vengono aggiunti ai ruoli predefiniti del database di SQL Agent, esiste un problema per cui le autorizzazioni Execute esplicite devono essere concesse alle stored procedure master per il funzionamento di tali account di accesso.If non-sysadmin logins are added to any SQL Agent fixed database roles, there exists an issue in which explicit EXECUTE permissions need to be granted to the master stored procedures for these logins to work. Se si verifica questo problema, si riceve l'errore "The EXECUTE permission was denied on the object <object_name> (Microsoft SQL Server, Error: 229) [L'autorizzazione EXECUTE è stata negata per l'oggetto <object_name> (Microsoft SQL Server, Error: 229)]".If this issue is encountered, the error message "The EXECUTE permission was denied on the object <object_name> (Microsoft SQL Server, Error: 229)" will be shown.

Soluzione alternativa: dopo aver aggiunto gli account di accesso a un ruolo predefinito del database di SQL Agent (SQLAgentUserRole, SQLAgentReaderRole o SQLAgentOperatorRole), per ognuno degli account di accesso aggiunti a questi ruoli, eseguire lo script T-SQL seguente per concedere esplicitamente le autorizzazioni Execute alle stored procedure elencate.Workaround: Once you add logins to a SQL Agent fixed database role (SQLAgentUserRole, SQLAgentReaderRole, or SQLAgentOperatorRole), for each of the logins added to these roles, execute the below T-SQL script to explicitly grant EXECUTE permissions to the stored procedures listed.

USE [master]
GO
CREATE USER [login_name] FOR LOGIN [login_name]
GO
GRANT EXECUTE ON master.dbo.xp_sqlagent_enum_jobs TO [login_name]
GRANT EXECUTE ON master.dbo.xp_sqlagent_is_starting TO [login_name]
GRANT EXECUTE ON master.dbo.xp_sqlagent_notify TO [login_name]

I processi di SQL Agent possono essere interrotti dal riavvio del processo dell'agenteSQL Agent jobs can be interrupted by Agent process restart

(Risolto nel 2020 marzo) SQL Agent crea una nuova sessione ogni volta che viene avviato un processo, aumentando gradualmente il consumo di memoria.(Resolved in March 2020) SQL Agent creates a new session each time a job is started, gradually increasing memory consumption. Per evitare di raggiungere il limite di memoria interno, che blocca l'esecuzione dei processi pianificati, il processo dell'agente verrà riavviato quando il consumo di memoria raggiunge la soglia.To avoid hitting the internal memory limit, which would block execution of scheduled jobs, Agent process will be restarted once its memory consumption reaches threshold. Potrebbe causare l'interruzione dei processi in esecuzione al momento del riavvio.It may result in interrupting execution of jobs running at the moment of restart.

I limiti di memoria di OLTP in memoria non vengono applicatiIn-memory OLTP memory limits are not applied

In alcuni casi, il livello di servizio business critical non applica correttamente i limiti di memoria massima per gli oggetti ottimizzati per la memoria .The Business Critical service tier will not correctly apply max memory limits for memory-optimized objects in some cases. SQL Istanza gestita può consentire al carico di lavoro di usare più memoria per le operazioni di OLTP in memoria, che potrebbero influire sulla disponibilità e sulla stabilità dell'istanza.SQL Managed Instance may enable workload to use more memory for in-memory OLTP operations, which may affect availability and stability of the instance. Le query di OLTP in memoria che raggiungono i limiti potrebbero non avere subito esito negativo.In-memory OLTP queries that are reaching the limits might not fail immediately. Questo problema verrà risolto a breve.This issue will be fixed soon. Le query che usano una quantità maggiore di memoria OLTP in memoria avranno esito negativo prima di raggiungere i limiti.The queries that use more in-memory OLTP memory will fail sooner if they reach the limits.

Soluzione alternativa: monitorare l'utilizzo dell'archiviazione OLTP in memoria utilizzando SQL Server Management Studio per garantire che il carico di lavoro non utilizzi una quantità di memoria superiore a quella disponibile.Workaround: Monitor in-memory OLTP storage usage using SQL Server Management Studio to ensure that the workload is not using more than the available memory. Aumentare i limiti di memoria che dipendono dal numero di vCore oppure ottimizzare il carico di lavoro per usare meno memoria.Increase the memory limits that depend on the number of vCores, or optimize your workload to use less memory.

Errore sbagliato restituito durante il tentativo di rimozione di un file non vuotoWrong error returned while trying to remove a file that is not empty

SQL Server e SQL Istanza gestita non consentono a un utente di eliminare un file non vuoto.SQL Server and SQL Managed Instance don't allow a user to drop a file that is not empty. Se si tenta di rimuovere un file di dati non vuoto utilizzando un' ALTER DATABASE REMOVE FILE istruzione, l'errore Msg 5042 – The file '<file_name>' cannot be removed because it is not empty non verrà restituito immediatamente.If you try to remove a nonempty data file using an ALTER DATABASE REMOVE FILE statement, the error Msg 5042 – The file '<file_name>' cannot be removed because it is not empty will not be immediately returned. SQL Istanza gestita continuerà a provare a eliminare il file e l'operazione avrà esito negativo dopo 30 minuti con Internal server error .SQL Managed Instance will keep trying to drop the file, and the operation will fail after 30 minutes with Internal server error.

Soluzione temporanea: rimuovere il contenuto del file utilizzando il DBCC SHRINKFILE (N'<file_name>', EMPTYFILE) comando.Workaround: Remove the contents of the file using the DBCC SHRINKFILE (N'<file_name>', EMPTYFILE) command. Se si tratta dell'unico file del gruppo di file, è necessario eliminare i dati dalla tabella o dalla partizione associata a questo gruppo di file prima di compattare il file e, facoltativamente, caricare i dati in un'altra tabella o partizione.If this is the only file in the file group you would need to delete data from the table or partition associated to this file group before you shrink the file, and optionally load this data into another table/partition.

Le operazioni che consentono di modificare il livello di servizio e creare istanze sono bloccate dal ripristino di database in corsoChange service tier and create instance operations are blocked by ongoing database restore

RESTOREL'istruzione continuativa, il processo di migrazione del servizio migrazione dei dati e il ripristino temporizzato incorporato bloccano l'aggiornamento di un livello di servizio o il ridimensionamento dell'istanza esistente e la creazione di nuove istanze fino al termine del processo di ripristino.Ongoing RESTORE statement, Data Migration Service migration process, and built-in point-in-time restore will block updating a service tier or resize of the existing instance and creating new instances until the restore process finishes.

Il processo di ripristino bloccherà queste operazioni sulle istanze gestite e sui pool di istanze nella stessa subnet in cui è in esecuzione il processo di ripristino.The restore process will block these operations on the managed instances and instance pools in the same subnet where the restore process is running. Le istanze nei pool di istanze non sono interessate.The instances in instance pools are not affected. La creazione o la modifica delle operazioni del livello di servizio non avrà esito negativo o il timeout. Verranno eseguiti dopo il completamento o l'annullamento del processo di ripristino.Create or change service tier operations will not fail or time-out. They will proceed once the restore process is completed or canceled.

Soluzione temporanea: attendere il completamento del processo di ripristino o annullare il processo di ripristino se l'operazione di creazione o aggiornamento del livello di servizio ha una priorità più alta.Workaround: Wait until the restore process finishes, or cancel the restore process if the creation or update-service-tier operation has higher priority.

Potrebbe essere necessario riconfigurare Resource Governor sul livello di servizio business critical dopo il failoverResource Governor on Business Critical service tier might need to be reconfigured after failover

La funzionalità Resource Governor che consente di limitare le risorse assegnate al carico di lavoro dell'utente potrebbe classificare erroneamente un carico di lavoro dell'utente dopo il failover o una modifica avviata dall'utente del livello di servizio (ad esempio, la modifica delle dimensioni massime di archiviazione delle istanze di vCore o max).The Resource Governor feature that enables you to limit the resources assigned to the user workload might incorrectly classify some user workload after failover or a user-initiated change of service tier (for example, the change of max vCore or max instance storage size).

Soluzione temporanea: eseguire ALTER RESOURCE GOVERNOR RECONFIGURE periodicamente o come parte di un processo di SQL Agent che esegue l'attività SQL quando l'istanza viene avviata se si usa Resource Governor.Workaround: Run ALTER RESOURCE GOVERNOR RECONFIGURE periodically or as part of a SQL Agent job that executes the SQL task when the instance starts if you are using Resource Governor.

È necessario reinizializzare le finestre di dialogo Service Broker tra database dopo l'aggiornamento del livello di servizioCross-database Service Broker dialogs must be reinitialized after service tier upgrade

Le finestre di dialogo Service Broker tra database interromperanno l'invio di messaggi ai servizi di altri database dopo l'operazione di modifica del livello di servizio.Cross-database Service Broker dialogs will stop delivering the messages to the services in other databases after change service tier operation. I messaggi non vengono persied è possibile trovarli nella coda del mittente.The messages are not lost, and they can be found in the sender queue. Qualsiasi modifica delle dimensioni di archiviazione dell'istanza o di Vcore in SQL Istanza gestita causerà la modifica di un service_broke_guid valore nella vista sys. databases per tutti i database.Any change of vCores or instance storage size in SQL Managed Instance will cause a service_broke_guid value in sys.databases view to be changed for all databases. Qualsiasi DIALOG oggetto creato utilizzando un'istruzione BEGIN DIALOG che fa riferimento a broker di servizio in un altro database arresterà il recapito dei messaggi al servizio di destinazione.Any DIALOG created using a BEGIN DIALOG statement that references Service Brokers in other database will stop delivering messages to the target service.

Soluzione temporanea: arrestare tutte le attività che usano le conversazioni di dialogo Service Broker tra database prima di aggiornare un livello di servizio e reinizializzarle successivamente.Workaround: Stop any activity that uses cross-database Service Broker dialog conversations before updating a service tier, and reinitialize them afterward. Se sono presenti messaggi rimanenti che non vengono recapitati dopo una modifica del livello di servizio, leggere i messaggi dalla coda di origine e inviarli nuovamente alla coda di destinazione.If there are remaining messages that are undelivered after a service tier change, read the messages from the source queue and resend them to the target queue.

La rappresentazione dei tipi di account di accesso Azure AD non è supportataImpersonation of Azure AD login types is not supported

La rappresentazione tramite EXECUTE AS USER o EXECUTE AS LOGIN delle seguenti entità di Azure Active Directory (Azure ad) non è supportata:Impersonation using EXECUTE AS USER or EXECUTE AS LOGIN of the following Azure Active Directory (Azure AD) principals is not supported:

  • Utenti Azure AD con alias.Aliased Azure AD users. In questo caso viene restituito l'errore seguente: 15517 .The following error is returned in this case: 15517.
  • Azure AD gli account di accesso e gli utenti basati su applicazioni Azure AD o entità servizio.Azure AD logins and users based on Azure AD applications or service principals. In questo caso vengono restituiti gli errori seguenti: 15517 e 15406 .The following errors are returned in this case: 15517 and 15406.

Parametro @query non supportato in sp_send_db_mail@query parameter not supported in sp_send_db_mail

Il parametro @query nella procedura sp_send_db_mail non funziona.The @query parameter in the sp_send_db_mail procedure doesn't work.

È necessario riconfigurare la replica transazionale dopo il failover geograficoTransactional Replication must be reconfigured after geo-failover

Se la replica transazionale è abilitata in un database in un gruppo di failover automatico, l'amministratore di SQL Istanza gestita deve eseguire la pulizia di tutte le pubblicazioni nel database primario precedente e riconfigurarle sul nuovo database primario dopo un failover in un'altra area.If Transactional Replication is enabled on a database in an auto-failover group, the SQL Managed Instance administrator must clean up all publications on the old primary and reconfigure them on the new primary after a failover to another region occurs. Per ulteriori informazioni, vedere replica.For more information, see Replication.

Gli account di accesso e gli utenti Azure AD non sono supportati in SSDTAzure AD logins and users are not supported in SSDT

SQL Server Data Tools non supportano completamente Azure AD account di accesso e utenti.SQL Server Data Tools don't fully support Azure AD logins and users.

Il database temporaneo viene usato durante l'operazione RESTORETemporary database is used during RESTORE operation

Quando si esegue il ripristino di un database in SQL Istanza gestita, il servizio di ripristino creerà prima di tutto un database vuoto con il nome desiderato per allocare il nome nell'istanza.When a database is restoring in SQL Managed Instance, the restore service will first create an empty database with the desired name to allocate the name on the instance. Dopo un certo periodo di tempo, il database verrà eliminato e verrà avviato il ripristino del database effettivo.After some time, this database will be dropped, and restoring of the actual database will be started.

Il database in stato di ripristino avrà temporaneamente un valore GUID casuale anziché Name.The database that is in Restoring state will temporarily have a random GUID value instead of name. Al termine del processo di ripristino, il nome temporaneo verrà modificato con il nome desiderato specificato nell' RESTORE istruzione.The temporary name will be changed to the desired name specified in the RESTORE statement once the restore process finishes.

Nella fase iniziale, un utente può accedere al database vuoto e persino creare tabelle o caricare dati in questo database.In the initial phase, a user can access the empty database and even create tables or load data in this database. Questo database temporaneo verrà rimosso quando il servizio di ripristino avvierà la seconda fase.This temporary database will be dropped when the restore service starts the second phase.

Soluzione alternativa: non accedere al database in fase di ripristino fino al completamento dell'operazione.Workaround: Do not access the database that you are restoring until you see that restore is completed.

La struttura e il contenuto di TEMPDB vengono ricreatiTEMPDB structure and content is re-created

Il tempdb database viene sempre suddiviso in 12 file di dati e la struttura del file non può essere modificata.The tempdb database is always split into 12 data files, and the file structure cannot be changed. Le dimensioni massime per file non possono essere modificate e non è possibile aggiungere nuovi file a tempdb.The maximum size per file can't be changed, and new files cannot be added to tempdb. Tempdb viene sempre ricreato come database vuoto quando l'istanza viene avviata o si effettua il failover e tutte le modifiche apportate in tempdb non verranno mantenute.Tempdb is always re-created as an empty database when the instance starts or fails over, and any changes made in tempdb will not be preserved.

Superamento dello spazio di archiviazione con file di database di piccole dimensioniExceeding storage space with small database files

Le istruzioni CREATE DATABASE, ALTER DATABASE ADD FILEe RESTORE DATABASE potrebbero avere esito negativo perché l'istanza può raggiungere il limite di Archiviazione di Azure.CREATE DATABASE, ALTER DATABASE ADD FILE, and RESTORE DATABASE statements might fail because the instance can reach the Azure Storage limit.

Ogni istanza per utilizzo generico di SQL Istanza gestita ha fino a 35 TB di spazio di archiviazione riservato per lo spazio su disco Premium di Azure.Each General Purpose instance of SQL Managed Instance has up to 35 TB of storage reserved for Azure Premium Disk space. Ogni file di database si trova in un disco fisico separato.Each database file is placed on a separate physical disk. I dischi possono essere da 128 GB, 256 GB, 512 GB, 1 TB o 4 TB.Disk sizes can be 128 GB, 256 GB, 512 GB, 1 TB, or 4 TB. Lo spazio inutilizzato sul disco non viene conteggiato, ma la somma delle dimensioni dei dischi Premium di Azure non può superare 35 TB.Unused space on the disk isn't charged, but the total sum of Azure Premium Disk sizes can't exceed 35 TB. In alcuni casi, un'istanza gestita che non necessita di 8 TB in totale può superare il limite di Azure di 35 TB per le dimensioni delle risorse di archiviazione a causa della frammentazione interna.In some cases, a managed instance that doesn't need 8 TB in total might exceed the 35 TB Azure limit on storage size due to internal fragmentation.

Ad esempio, un'istanza di per utilizzo generico di SQL Istanza gestita potrebbe avere un file di grandi dimensioni di 1,2 TB in un disco da 4 TB.For example, a General Purpose instance of SQL Managed Instance might have one large file that's 1.2 TB in size placed on a 4-TB disk. Potrebbero inoltre essere presenti 248 file di 1 GB ciascuno e posizionati in dischi 128 GB distinti.It also might have 248 files that are 1 GB each and that are placed on separate 128-GB disks. Esempio:In this example:

  • la dimensione totale della risorsa di archiviazione sul disco allocato è 1 x 4 TB + 248 x 128 GB = 35 TB.The total allocated disk storage size is 1 x 4 TB + 248 x 128 GB = 35 TB.
  • Lo spazio totale riservato per i database nell'istanza è 1 x 1,2 TB + 248 x 1 GB = 1,4 TB.The total reserved space for databases on the instance is 1 x 1.2 TB + 248 x 1 GB = 1.4 TB.

Questo esempio illustra che in determinate circostanze, a causa di una distribuzione specifica dei file, un'istanza di SQL Istanza gestita potrebbe raggiungere il limite di 35 TB riservato per un disco Premium di Azure collegato quando potrebbe non essere previsto.This example illustrates that under certain circumstances, due to a specific distribution of files, an instance of SQL Managed Instance might reach the 35-TB limit that's reserved for an attached Azure Premium Disk when you might not expect it to.

In questo esempio, i database esistenti continuano a funzionare e possono crescere senza alcun problema fino a quando non vengono aggiunti nuovi file.In this example, existing databases continue to work and can grow without any problem as long as new files aren't added. Non è possibile creare o ripristinare nuovi database a causa dello spazio insufficiente per le nuove unità disco, anche se le dimensioni totali di tutti i database non raggiungono il limite di dimensioni dell'istanza.New databases can't be created or restored because there isn't enough space for new disk drives, even if the total size of all databases doesn't reach the instance size limit. L'errore restituito in questo caso potrebbe non essere chiaro.The error that's returned in that case isn't clear.

È possibile identificare il numero di file rimanenti usando le viste di sistema.You can identify the number of remaining files by using system views. Se si raggiunge questo limite, provare a svuotare ed eliminare alcuni dei file più piccoli usando l'istruzione DBCC SHRINKFILE o passare al livello di servizio business critical, che non ha questo limite.If you reach this limit, try to empty and delete some of the smaller files by using the DBCC SHRINKFILE statement or switch to the Business Critical tier, which doesn't have this limit.

Valori GUID visualizzati al posto dei nomi di databaseGUID values shown instead of database names

In numerose viste di sistema, contatori delle prestazioni, messaggi di errore, XEvent e voci del log degli errori sono visualizzati gli identificatori GUID dei database anziché i nomi effettivi.Several system views, performance counters, error messages, XEvents, and error log entries display GUID database identifiers instead of the actual database names. Non fare affidamento su questi identificatori GUID, in quanto vengono sostituiti dai nomi effettivi dei database in futuro.Don't rely on these GUID identifiers because they're replaced with actual database names in the future.

Soluzione temporanea: utilizzare la vista sys. databases per risolvere il nome del database effettivo dal nome del database fisico, specificato sotto forma di identificatori del database GUID:Workaround: Use sys.databases view to resolve the actual database name from the physical database name, specified in the form of GUID database identifiers:

SELECT name as ActualDatabaseName, physical_database_name as GUIDDatabaseIdentifier 
FROM sys.databases
WHERE database_id > 4

I log degli errori non sono permanentiError logs aren't persisted

I log degli errori disponibili in SQL Istanza gestita non sono salvati in modo permanente e la loro dimensione non è inclusa nel limite massimo di archiviazione.Error logs that are available in SQL Managed Instance aren't persisted, and their size isn't included in the maximum storage limit. I log degli errori potrebbero essere cancellati automaticamente se si esegue il failover.Error logs might be automatically erased if failover occurs. Potrebbero esserci gap nella cronologia dei log degli errori perché SQL Istanza gestita è stato spostato più volte su diverse macchine virtuali.There might be gaps in the error log history because SQL Managed Instance was moved several times on several virtual machines.

L'ambito della transazione in due database nella stessa istanza non è supportatoTransaction scope on two databases within the same instance isn't supported

(Risolto a marzo 2020) La classe TransactionScope in .NET non funziona se vengono inviate due query ai due database nella stessa istanza all'interno del medesimo ambito della transazione:(Resolved in March 2020) The TransactionScope class in .NET doesn't work if two queries are sent to two databases within the same instance under the same transaction scope:

using (var scope = new TransactionScope())
{
    using (var conn1 = new SqlConnection("Server=quickstartbmi.neu15011648751ff.database.windows.net;Database=b;User ID=myuser;Password=mypassword;Encrypt=true"))
    {
        conn1.Open();
        SqlCommand cmd1 = conn1.CreateCommand();
        cmd1.CommandText = string.Format("insert into T1 values(1)");
        cmd1.ExecuteNonQuery();
    }

    using (var conn2 = new SqlConnection("Server=quickstartbmi.neu15011648751ff.database.windows.net;Database=b;User ID=myuser;Password=mypassword;Encrypt=true"))
    {
        conn2.Open();
        var cmd2 = conn2.CreateCommand();
        cmd2.CommandText = string.Format("insert into b.dbo.T2 values(2)");        cmd2.ExecuteNonQuery();
    }

    scope.Complete();
}

Soluzione alternativa (non necessaria dal 2020 marzo): usare SqlConnection. ChangeDatabase (String) per usare un altro database in un contesto di connessione anziché usare due connessioni.Workaround (not needed since March 2020): Use SqlConnection.ChangeDatabase(String) to use another database in a connection context instead of using two connections.

I moduli CLR e i server collegati a volte non riescono a fare riferimento all'indirizzo IP localeCLR modules and linked servers sometimes can't reference a local IP address

I moduli CLR in SQL Istanza gestita e i server collegati o le query distribuite che fanno riferimento a un'istanza corrente talvolta non riescono a risolvere l'indirizzo IP di un'istanza locale.CLR modules in SQL Managed Instance and linked servers or distributed queries that reference a current instance sometimes can't resolve the IP of a local instance. Questo errore è un problema temporaneo.This error is a transient issue.

Soluzione temporanea: se possibile, usare connessioni di contesto in un modulo CLR.Workaround: Use context connections in a CLR module if possible.

AggiornamentiUpdates

Per un elenco di aggiornamenti e miglioramenti del database SQL, vedere Aggiornamenti del servizio database SQL.For a list of SQL Database updates and improvements, see SQL Database service updates.

Per gli aggiornamenti e i miglioramenti apportati a tutti i servizi di Azure, vedere Aggiornamenti del servizio.For updates and improvements to all Azure services, see Service updates.

Contribuire al contenutoContribute to content

Per contribuire alla documentazione di Azure SQL, vedere la Guidaper i collaboratori di docs.To contribute to the Azure SQL documentation, see the Docs contributor guide.