Sintomi
Considerare lo scenario descritto di seguito:
-
È possibile creare un database in Microsoft SQL Server 2008 R2.
-
Per aggiornare il nome logico del database, usare l'istruzione ALTER DATABASE.
-
È possibile eseguire un backup completo del database. Nota Un file di backup completo del database viene generato dopo l'esecuzione del backup.
-
Si prova a ripristinare il database dal file di backup del database.
In questo scenario viene visualizzato il seguente messaggio di errore:
Msg 3234, Level 16, State 2, Line 1Logical file '<logical file name>' is not part of database '<database name>'. Usare RESTORE FILELISTONLY per elencare i nomi di file logici.Msg 3013, Level 16, State 1, Line 1RESTORE DATABASE sta terminando in modo anomalo.
Se si usa l'istruzione RESTORE FILELISTONLY per controllare il file di backup, il nome logico aggiornato è danneggiato. L'ultimo carattere del nome file logico viene troncato. Ad esempio, si tenta di aggiornare il nome logico di un database per DB_modified. Tuttavia, viene modificato in modo non corretto in DB_modifie nel file di backup.Nota Questo problema non si verifica se si riavvia il servizio SQL Server dopo l'aggiornamento del nome file logico.
Risoluzione
Informazioni sugli aggiornamenti cumulativi
SQL Server 2008 R2
La correzione di questo problema è stata rilasciata per la prima volta nell'aggiornamento cumulativo 6. Per altre informazioni su come ottenere questo pacchetto di aggiornamento cumulativo per SQL Server 2008 R2, fare clic sul numero dell'articolo seguente per visualizzare l'articolo della Microsoft Knowledge Base:
2489376 Pacchetto di aggiornamento cumulativo 6 per SQL Server 2008 R2 Nota Poiché le build sono cumulative, ogni nuova versione di correzione contiene tutti gli aggiornamenti rapidi e tutte le correzioni per la sicurezza inclusi nella versione di correzione precedente SQL Server 2008 R2. È consigliabile applicare la versione più recente di correzione che contiene questo hotfix. Per ulteriori informazioni, fare clic sul numero dell'articolo seguente per visualizzare l'articolo nella Microsoft Knowledge Base:
981356 Le build SQL Server 2008 R2 rilasciate dopo SQL Server 2008 R2
Informazioni sull'aggiornamento rapido
Un hotfix supportato è disponibile da Microsoft. Tuttavia, questo hotfix ha lo scopo di correggere solo il problema descritto in questo articolo. Applicare questo hotfix solo ai sistemi che presentano il problema descritto in questo articolo. Questo hotfix potrebbe ricevere ulteriori test. Pertanto, se non si è gravemente colpiti da questo problema, è consigliabile attendere il prossimo aggiornamento software che contiene questo hotfix.Se l'hotfix è disponibile per il download, nella parte superiore di questo articolo della Knowledge Base è presente la sezione "Download di hotfix disponibile". Se questa sezione non viene visualizzata, contattare il supporto tecnico Microsoft per ottenere l'hotfix. Nota Se si verificano altri problemi o se è necessaria una risoluzione dei problemi, potrebbe essere necessario creare una richiesta di servizio separata. I soliti costi di supporto si applicano a ulteriori domande e problemi di supporto che non sono idonei per questo hotfix specifico. Per un elenco completo dei numeri di telefono del servizio clienti Microsoft e del supporto tecnico Microsoft o per creare una richiesta di servizio separata, visita il seguente sito Web Microsoft:
http://support.microsoft.com/contactus/?ws=supportNota Il modulo "Download di hotfix disponibile" mostra le lingue per cui l'hotfix è disponibile. Se non vedi la tua lingua, è perché non è disponibile un hotfix per tale lingua.
Requisiti
Per applicare questo hotfix, è necessario che sia installato Microsoft SQL Server 2008 R2.
Richiesta di riavvio
Non è necessario riavviare il computer dopo aver applicato questo hotfix.
Informazioni sulla sostituzione degli hotfix
Questo hotfix non sostituisce nessun altro hotfix.
Informazioni sui file
La versione in lingua inglese di questo hotfix presenta gli attributi di file elencati nella tabella seguente (o attributi successivi). Le date e le ore di questi file sono espresse nel formato UTC (Coordinated Universal Time). Quando esaminate le informazioni del file, viene convertito in orario locale. Per trovare la differenza tra UTC e l'ora locale, usare la scheda Fuso orario nell'elemento Data e ora in Pannello di controllo.
Istanza di base di Servizi database di Database 2008 a 32 bit SQL Server 2008 R2
|
Nome file |
Versione file |
Dimensione file |
Date |
Ora |
Piattaforma |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
26464 |
24 dic-10 |
0:33 |
x86 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
135520 |
24 dic-10 |
0:33 |
x86 |
|
Etwcls.mof |
Non applicabile |
1116328 |
23-dic-10 |
3:54 |
Non applicabile |
|
instmsdb.sql |
Non applicabile |
2241260 |
22-dic-10 |
20:49 |
Non applicabile |
|
mssqlsystemresource.ldf |
Non applicabile |
524288 |
22-dic-10 |
22:52 |
Non applicabile |
|
mssqlsystemresource.mdf |
Non applicabile |
63569920 |
22-dic-10 |
22:52 |
Non applicabile |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
13664 |
24 dic-10 |
0:31 |
x86 |
|
sqlaccess.dll |
2009.100.1755.0 |
415584 |
24 dic-10 |
0:29 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
367968 |
24 dic-10 |
0:34 |
x86 |
|
sqlagent100_msdb_upgrade.sql |
Non applicabile |
2371245 |
23-dic-10 |
3:53 |
Non applicabile |
|
sqlos.dll |
2009.100.1755.0 |
14688 |
24 dic-10 |
0:22 |
x86 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
14688 |
24 dic-10 |
0:21 |
x86 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4611424 |
24 dic-10 |
0:21 |
x86 |
|
sqlservr.exe |
2009.100.1755.0 |
42904928 |
24 dic-10 |
0:34 |
x86 |
|
sqsrvres.dll |
2009.100.1755.0 |
89952 |
24 dic-10 |
0:21 |
x86 |
Istanza di base di Servizi database di Database 2008 SQL Server 2008 R2 a 64 bit
|
Nome file |
Versione file |
Dimensione file |
Date |
Ora |
Piattaforma |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
31584 |
23-dic-10 |
23:40 |
x64 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
262496 |
23-dic-10 |
23:40 |
x64 |
|
Etwcls.mof |
Non applicabile |
1116328 |
23-dic-10 |
3:54 |
Non applicabile |
|
instmsdb.sql |
Non applicabile |
2241260 |
22-dic-10 |
20:49 |
Non applicabile |
|
mssqlsystemresource.ldf |
Non applicabile |
524288 |
22-dic-10 |
22:52 |
Non applicabile |
|
mssqlsystemresource.mdf |
Non applicabile |
63569920 |
22-dic-10 |
22:52 |
Non applicabile |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
14176 |
23-dic-10 |
23:40 |
x64 |
|
sqlaccess.dll |
2009.100.1755.0 |
403296 |
23-dic-10 |
23:38 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
428384 |
23-dic-10 |
23:40 |
x64 |
|
sqlagent100_msdb_upgrade.sql |
Non applicabile |
2371245 |
23-dic-10 |
3:53 |
Non applicabile |
|
sqlos.dll |
2009.100.1755.0 |
15712 |
23-dic-10 |
23:37 |
x64 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
15712 |
23-dic-10 |
23:37 |
x64 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4610912 |
23-dic-10 |
23:37 |
x64 |
|
sqlservr.exe |
2009.100.1755.0 |
61957984 |
23-dic-10 |
23:40 |
x64 |
|
sqsrvres.dll |
2009.100.1755.0 |
105824 |
23-dic-10 |
23:37 |
x64 |
Architettura Itanium SQL Server istanza di base di Servizi database 2008 R2
|
Nome file |
Versione file |
Dimensione file |
Date |
Ora |
Piattaforma |
|---|---|---|---|---|---|
|
atxcore.dll |
2009.100.1755.0 |
63328 |
23-dic-10 |
23:05 |
ia64 |
|
datacollectorcontroller.dll |
2009.100.1755.0 |
477024 |
23-dic-10 |
23:05 |
ia64 |
|
Etwcls.mof |
Non applicabile |
1116328 |
23-dic-10 |
3:54 |
Non applicabile |
|
instmsdb.sql |
Non applicabile |
2241260 |
22-dic-10 |
20:49 |
Non applicabile |
|
mssqlsystemresource.ldf |
Non applicabile |
524288 |
22-dic-10 |
22:52 |
Non applicabile |
|
mssqlsystemresource.mdf |
Non applicabile |
63569920 |
22-dic-10 |
22:52 |
Non applicabile |
|
sql_engine_core_inst_keyfile.dll |
2009.100.1755.0 |
19296 |
23-dic-10 |
23:05 |
ia64 |
|
sqlaccess.dll |
2009.100.1755.0 |
392032 |
23-dic-10 |
23:01 |
x86 |
|
sqlagent.exe |
2009.100.1755.0 |
1205600 |
23-dic-10 |
23:09 |
ia64 |
|
sqlagent100_msdb_upgrade.sql |
Non applicabile |
2371245 |
23-dic-10 |
3:53 |
Non applicabile |
|
sqlos.dll |
2009.100.1755.0 |
22368 |
23-dic-10 |
22:56 |
ia64 |
|
sqlscriptdowngrade.dll |
2009.100.1755.0 |
20832 |
23-dic-10 |
22:56 |
ia64 |
|
sqlscriptupgrade.dll |
2009.100.1755.0 |
4617056 |
23-dic-10 |
22:56 |
ia64 |
|
sqlservr.exe |
2009.100.1755.0 |
121762656 |
23-dic-10 |
23:09 |
ia64 |
|
sqsrvres.dll |
2009.100.1755.0 |
188768 |
23-dic-10 |
22:56 |
ia64 |
Stato
Microsoft ha confermato che questo problema si verifica nei prodotti elencati nella sezione "Si applica a".
Soluzione alternativa
Per risolvere il problema, usare uno dei due metodi seguenti:
-
Dopo aver modificato il nome logico del file, eseguire le istruzioni seguenti per riavviare il database:ALTER DATABASE <nome database> SET OFFLINEALTER DATABASE <nome del database> SET ONLINE
-
Quando si modifica il nome logico del file, aggiungere uno spazio fittizio nel nuovo nome logico. Ad esempio, se si vuole modificare il nome logico in DB_modified, usare l'istruzione seguente per modificare il nome logico del file:ALTER DATABASE <nome di database> MODIFY FILE (NAME=N'<nome database>', NEWNAME='DB_modified ') -- Append ' to NEWNAME '
Riferimenti
Per ulteriori informazioni sull'istruzione Transact-SQL ALTER DATABASE, visitare il seguente sito Web Microsoft Developer Network (MSDN):
Informazioni generali sull'istruzione Transact-SQL ALTER DATABASEPer ulteriori informazioni sull'istruzione Transact-SQL RESTORE FILELISTONLY, visita il seguente sito Web Microsoft Developer Network (MSDN):
Informazioni generali sull'istruzione RESTORE FILELISTONLY Transact-SQL