VENDITE: 1-800-867-1389

Linee guida e limitazioni generali per il database SQL di Azure

Aggiornamento: gennaio 2015

Questo argomento illustra le linee guida generali e le limitazioni di Database SQL di Microsoft Azure. Le linee guida generali e i dettagli relativi alle limitazioni vengono trattati nelle seguenti intestazioni:

Per informazioni sulle linee guida e sulle limitazioni relative alla sicurezza, vedere Linee guida e limitazioni per la sicurezza per il database SQL di Azure.

Le DTU consentono di descrivere la capacità relativa di un livello di prestazioni in base a una misurazione combinata di CPU, memoria, letture e scritture. Ogni server dispone di un numero massimo di 2000 DTU per i database Basic, Standard e Premium, oltre al limite generale di database per server e di dimensioni massime per database. Le DTU vengono usate in base alla classificazione DTU per lo specifico livello di prestazioni. Ad esempio, un server con cinque database Basic, due database Standard S1 e tre database Premium P1 usa 365 DTU. Per altre informazioni sulla classificazione DTU associata a ciascun livello di prestazioni, vedere Livelli di servizio e livelli di prestazioni del database SQL di Azure. Per il server database SQL di Azure potrebbe essere disponibile un'estensione di questa quota di DTU. Per altre informazioni, contattare il supporto di Azure

Ogni server supporta fino a 150 database, inclusi i database master. Questo limite si applica a tutti i livelli di servizio. Per il server database SQL di Azure è possibile disporre di un'estensione di questo limite. Per altre informazioni, contattare il supporto di Azure

Oltre al limitare il numero di database per server, ogni livello di servizio (edizione) limita anche le dimensioni massime di ciascun database. Se le dimensioni del database raggiungono il valore MAXSIZE, verrà restituito il codice di errore 40544. In questo caso, non è possibile inserire o aggiornare dati, né creare nuovi oggetti quali tabelle, stored procedure, viste e funzioni. È tuttavia ancora possibile leggere ed eliminare dati, troncare tabelle, eliminare tabelle e indici e ricompilare indici. Se si rimuovono dati per liberare lo spazio di archiviazione, prima di poter inserire nuovi dati potrebbe essere necessario attendere fino a 15 minuti.

Per informazioni sulla creazione dei database, vedere CREATE DATABASE (database SQL di Azure).

In fase di scrittura di applicazioni per Database SQL di Microsoft Azure è possibile usare i driver e le librerie seguenti:

  • Provider di dati .NET Framework per SQL Server (System.Data.SqlClient) da .NET Framework 3.5 Service Pack 1 o versione successiva.

  • Entity Framework da .NET Framework 3.5 Service Pack 1 o versione successiva.

  • Driver ODBC SQL Server 2008 R2 Native Client (e versioni successive). È inoltre supportato il driver ODBC SQL Server 2008 Native Client, ma dispone di meno funzionalità.

  • Driver SQL Server 2008 per PHP 1.1 o versione successiva.

  • Versione aggiornata del driver JDBC 3.0 per SQL Server che supporta Database SQL.

Database SQL di Microsoft Azure supporta il client del protocollo del flusso TDS (Tabular Data Stream) 7.3 o versione successiva. Non sono supportate le versioni precedenti del protocollo del flusso TDS.

La connessione al Database SQL di Microsoft Azure tramite OLE DB o ADO non è supportata.

Quando si scrivono applicazioni per il Database SQL di Microsoft Azure, è possibile usare uno dei linguaggi di programmazione .NET Framework forniti con Visual Studio: Microsoft Visual Basic, Microsoft Visual C# o Microsoft Visual C++. In Visual Studio è disponibile una console di gestione server, Esplora server, per aprire connessioni dati, accedere ai server ed esplorare database. A partire da Visual Studio 2010 è possibile usare Esplora server per connettersi ai database ed esplorarli in database SQL di Azure. Non sono supportate le versioni precedenti di Esplora server. Per altre informazioni, vedere la documentazione di Visual Studio in MSDN.

Se si usano strumenti per connettersi a Database SQL di Microsoft Azure, considerare i seguenti punti:

  • Sono consentite esclusivamente le connessioni TCP/IP.

  • È supportato il servizio Multiple Active Result Sets (MARS).

  • Poiché alcuni strumenti implementano in modo diverso il flusso TDS, potrebbe essere necessario associare il nome del server di database SQL di Azure alla porzione di accesso della stringa di connessione usando la notazione <login>@<server>. Per altre informazioni, vedere Gestione di database e account di accesso in database SQL di Azure.

  • Non è supportato il browser SQL Server 2008 SQL Server, in quanto in Database SQL di Microsoft Azure non sono presenti porte dinamiche, ma solo la porta 1433.

Per altre informazioni sul supporto per gli strumenti, vedere Supporto per strumenti e utilità del database SQL di Azure.

È possibile usare Configurazione delle origini dei dati ODBC per definire origini dati utente e di sistema per Database SQL di Microsoft Azure. Per visualizzare l'elenco delle origini dati utente e di sistema, controllare le schede User DSN o System DSN della finestra di dialogo Amministrazione origine dati ODBC.

Se si usa la procedura guidata Nome origine dati (DSN) per definire un'origine dati per Database SQL di Microsoft Azure, fare clic sull'opzione Autenticazione SQL Server tramite ID e password di accesso immessi dall'utente e selezionare Connettersi a SQL Server per ottenere le impostazioni predefinite per altre opzioni di configurazione. Immettere il nome utente e la password per connettersi al server database SQL di Azure come Login ID e Password. Se si usa SQL Server 2008 Native Client, deselezionare la casella di controllo Connettersi a SQL Server per ottenere le impostazioni predefinite per altre opzioni di configurazione. A partire dal driver ODBC SQL Server 2008 R2 Native Client non è necessario deselezionare la casella di controllo Connettersi a SQL Server per ottenere le impostazioni predefinite per altre opzioni di configurazione. Selezionare Usa il seguente database predefinito e immettere il nome del database SQL di Azure anche se non è visibile nell'elenco. Sono presenti diverse lingue nell'elenco Visualizza i messaggi di sistema di SQL Server in della procedura guidata.

In questa versione, in Database SQL di Microsoft Azure è supportata solo la lingua inglese. Selezionare pertanto Inglese. In Database SQL di Microsoft Azure non è supportato Server mirror o Collega database, pertanto lasciare gli elementi vuoti. Fare clic su Test connessione.

  • Se si usa il driver ODBC SQL Server 2008 Native Client, se si preme il pulsante Test connessione potrebbe essere restituito un errore indicante che master.dbo.syscharsets non è supportato. Ignorare l'errore, salvare il DSN e usarlo. Se inoltre si sceglie di connettersi a un database diverso dal master durante la configurazione del DSN, il messaggio VERIFICA COMPLETATA potrebbe non essere visualizzato anche se non si verificano errori.

  • Con il driver ODBC di SQL Server 2008 R2 Native Client non verrà restituito l'errore indicante che master.dbo.syscharsets non è supportato anche se si è connessi a un altro database.

È possibile trasferire dati a Database SQL di Microsoft Azure mediante i seguenti elementi:

  • SQL Server 2008 Integration Services (SSIS)

  • Utilità della copia bulk (BCP.exe)

  • Classe System.Data.SqlClient.SqlBulkCopy

  • Script che usano istruzioni INSERT per caricare dati nel database

Database SQL di Microsoft Azure non supporta i seguenti elementi:

  • Istruzione RESTORE.

  • Collegamento di un database al server database SQL di Azure.

Per altre informazioni su SSIS, vedere SQL Server Integration Services.

In Database SQL di Microsoft Azure non sono supportati processi o SQL Server Agent. È tuttavia possibile eseguire SQL Server Agent nell'istanza locale di SQL Server e connettersi a Database SQL di Microsoft Azure.

Il Database SQL di Microsoft Azure non supporta le transazioni distribuite, vale a dire transazioni che interessano diverse risorse. Per altre informazioni, vedere Transazioni distribuite (ADO.NET).

A partire da versione 2.0 è possibile promuovere automaticamente le transazioni dell'applicazione in transazioni distribuite. Questa condizione è valida per applicazioni in cui è usata la classe System.Data.SqlClient per eseguire operazioni di database nel contesto di una transazione System.Transactions.

Si verifica una promozione della transazione se si aprono più connessioni a vari server o database all'interno di un TransactionScope o se si integrano più connessioni in un oggetto System.Transactions usando il metodo EnlistTransaction. La promozione della transazione si verifica inoltre se si aprono più connessioni simultanee allo stesso server e al database all'interno dello stesso TransactionScope o usando il metodo EnlistTransaction.

A partire da versione 3.5 non si verificherà la promozione della transazione se le stringhe di connessione per le connessioni simultanee sono identiche. Per altre informazioni sulle transazioni e su come evitare la promozione delle transazioni, vedere Integrazione di System.Transactions con SQL Server (ADO.NET).

noteNota
È possibile che in Database SQL di Microsoft Azure non vengano mantenuti i valori di timestamp senza commit del database corrente (DBTS) tra i vari failover.

Entrambe le opzioni di database READ_COMMITTED_SNAPSHOT e ALLOW_SNAPSHOT_ISOLATION sono impostate su ON in Database SQL di Microsoft Azure. Poiché SET <snapshot_option> non è supportato nell'istruzione ALTER DATABASE di Transact-SQL, non è possibile modificare queste opzioni di database. Per altre informazioni sui livelli di isolamento basati sul controllo delle versioni delle righe, vedere Informazioni sui livelli di isolamento basati sul controllo delle versioni delle righe.

La regola di confronto del database predefinita usata da Database SQL di Microsoft Azure è SQL_LATIN1_GENERAL_CP1_CI_AS, in cui LATIN1_GENERAL è English (United States), CP1 è la tabella codici 1252, CI indica l'assenza di distinzione tra maiuscole e minuscole e AS indica la distinzione tra caratteri accentati e non accentati.

Se si usa SQL Server on-premise è possibile configurare regole di confronto a livello di server, database, colonna ed espressione. In Database SQL di Microsoft Azure non è consentita la configurazione di regole di confronto a livello di server. Per usare le regole di confronto non predefinite con Database SQL di Microsoft Azure, configurare le regole di confronto con l'opzione Collate di Create Database a livello di colonna o espressione. In Database SQL non è supportata l'opzione Collate con il comando Alter Database. Per impostazione predefinita, nel Database SQL i dati temporanei disporranno delle stesse regole di confronto del database. Per altre informazioni sull'impostazione delle regole di confronto, vedere COLLATE (Transact-SQL) nella documentazione online di SQL Server.

In Database SQL di Microsoft Azure non sono supportate tabelle senza indici cluster. Una tabella deve disporre di un indice cluster. Se viene creata una tabella senza un vincolo cluster, è necessario creare un indice cluster prima di consentire un'operazione Insert nella tabella.

Nel seguente esempio, in Transact-SQL viene creata una nuova tabella, quindi un indice cluster e infine vengono inseriti i dati nella tabella. Se si esegue l'operazione Insert senza creare l'indice cluster, verrà generato un errore.

CREATE TABLE Table1 (Col1 int, Col2 char(20))
CREATE CLUSTERED INDEX Table1_Index ON Table1 (Col1)
INSERT INTO Table1 VALUES (1, 'string1')

Per motivi di sicurezza non sono consentiti determinati nomi utente. Non è possibile usare i seguenti nomi:

  • admin

  • administrator

  • guest

  • root

  • sa

I nomi di tutti i nuovi oggetti devono rispettare le regole di SQL Server per gli identificatori. Per altre informazioni, vedere Identificatori.

I nomi utente e di accesso non possono inoltre contenere il carattere \ (Autenticazione di Windows non supportata).

Nel Database SQL di Microsoft Azure è disponibile un servizio di database multi-tenant su larga scala nelle risorse condivise. Per garantire a tutti i clienti di Database SQL di Microsoft Azure un'esperienza ottimale, la connessione al servizio potrebbe essere chiusa a causa delle seguenti condizioni:

  • Utilizzo eccessivo delle risorse

  • Connessioni che sono rimaste inattive per almeno 30 minuti (per informazioni, vedere la pagina relativa alla resilienza delle connessioni inattive)

  • Failover a causa di errori del server

noteNota
La durata massima consentita può variare a seconda dell'uso delle risorse. Una sessione connessa inattiva per 30 minuti verrà automaticamente terminata. È consigliabile usare il pool di connessioni e chiudere sempre la connessione dopo averla usata, per fare in modo che la connessione inutilizzata venga restituita al pool. Per informazioni sul pool di connessioni, vedere Pool di connessioni.

Se la connessione al servizio è chiusa, verrà restituito un errore. Per altre informazioni sull'errore, vedere Connection-Loss Errors.

Un'applicazione database SQL di Azure deve stabilire se una connessione chiusa è causata da un errore temporaneo. In tal caso, tramite un'applicazione deve essere possibile ristabilire la connessione ed eseguire i comandi non riusciti o la query. Per altre informazioni sul nuovo tentativo di connessioni chiuse, vedere:

Vedere anche

Il documento è risultato utile?
(1500 caratteri rimanenti)
Grazie per i commenti inviati.
Mostra:
© 2015 Microsoft