Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
Restore DB
mercoledì 19 novembre 2008 - 16.57
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
mer 19 nov 2008 - 16:57
Ciao a tutti, vi spiego brevemente la mia situazione.
Praticamente io ho un DB con due backup, uno che chiamerò back1 e l'altro che chiamerò back2..
Questi due backup li ho fatti da una macchina che ha SQL Server 2005 Developer Edition e li devo ripristinare
in una macchina che ha SQL Server Express Edition.
Adesso, il restore di back1 me lo fa senza problemi, quello di back2 mi da il seguente errore:
Eccezione durante l'esecuzione di un'istruzione o un batch Transact-SQL. (Microsoft.SqlServer.Express.ConnectionInfo)
------------------------------
ADDITIONAL INFORMATION:
Impossibile aprire la periferica di backup 'C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\DB.bak'. Errore del sistema operativo 5(Accesso negato.).
Interruzione anomala di RESTORE HEADERONLY in corso. (Microsoft SQL Server, Error: 3201)
Qualcuno mi sa aiutare?
Ciao e grazie in anticipo!
jenga
Profilo
| Newbie
44
messaggi | Data Invio:
mer 19 nov 2008 - 17:20
>Impossibile aprire la periferica di backup 'C:\Programmi\Microsoft
>SQL Server\MSSQL.1\MSSQL\Backup\DB.bak'. Errore del sistema operativo
>5(Accesso negato.).
Verifica le abilitazioni per l'utente che sta eseguendo il restore sul file indicato.
Accesso negato sembrerebbe proprio che non riesce ad accedere nemmeno al file.
oggi la mia voglia di lavorare è pari a null
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
mer 19 nov 2008 - 17:30
Parli di autorizzazioni di rete per quella cartella? Se sì, ti posso dire che back1 nella stessa directory e nello stesso file me l'ha ripristinato...poi sovrascrivendolo con il back2 mi ha dato la sorpresina..
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 19 nov 2008 - 21:11
>Parli di autorizzazioni di rete per quella cartella? Se sì, ti
>posso dire che back1 nella stessa directory e nello stesso file
>me l'ha ripristinato...poi sovrascrivendolo con il back2 mi ha
>dato la sorpresina..
Ciao Stefano,
Quello che dici è molto interessante
Non conosco la soluzione al problema, ma procediamo con ordine:
1) Qual è l'account con il quale viene eseguito il servizio MSSQL$SQLEXPRESS? (lo puoi vedere dall'applet Services oppure dal Configuration Manager)
2) Verifica che tale account abbia le permission di Full Control sulla directory C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup
Inizia ad eseguire queste verifiche, poi proseguiremo con l'indagine
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 20 nov 2008 - 16:19
>Quello che dici è molto interessante
Ehehe, quando non sai che fare le provi proprio tutte..cmq tornando a noi, io non lo so se si è già notato ma la mia preparazione in materia è molto bassa.
su configuration manager mi da solo due servizi, -SQL Server (SQLEXPRESS)- e -SQL Server Browser- il servizio MSSQL$SQLEXPRESS, sempre se si veda sotto -
Gestione configurazione SQL Server (Locale)- ->Servizi di SQL Server 2005- non c'è.
Poi volevo farvi notare due cose..vabbè a parte che se provo ad eseguire il restore con questo codice:
"RESTORE DATABASE [DB] FROM DISK = N'C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\db.bak' WITH FILE = 1, NOUNLOAD, REPLACE, STATS = 10
GO"
mi da il seguente errore:
Impossibile aprire la periferica di backup 'C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\db.bak'. Errore del sistema operativo 5(Accesso negato.).
Messaggio 3013, livello 16, stato 1, riga 1
Interruzione anomala di RESTORE DATABASE in corso.
Poi ho pensato che la differenza sostanziale alla fine tra back1 e back2 sarebbe la dimensione. Perchè, a parità di DIRECTORY, NOME, DB-ORIGINE, DB-DESTINAZIONE ed EFFETTIVA FISICITA' DEL F I L E
(SCUSATE IL TERMINE ROZZO) , alla fine l'unica differenza (apparente, ovviamente), è proprio la dimensione: back1=11mb e back2=70mb.
Mi era venuto il dubbio della dimensione eprchè comunque l'Express edition non supporta più di 4 gb se non sbaglio...ma cavolo 70 mb ad arrivare a 4 gb...
L'ultima cosa vabbè, perchè comuqnue ancora non l'avevo scritto anche se era palese, il funzionamento del back2 è verificato eh.
Grazie e ciao
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 20 nov 2008 - 16:27
>su configuration manager mi da solo due servizi, -SQL Server
>(SQLEXPRESS)- e -SQL Server Browser- il servizio MSSQL$SQLEXPRESS,
>sempre se si veda sotto -
>
>Gestione configurazione SQL Server (Locale)- ->Servizi di
>SQL Server 2005- non c'è.
Non ho capito niente
Rifaccio la domanda: con quale account viene eseguito il servizio di SQL Server?
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 20 nov 2008 - 16:33
parli di account di windows? i permessi che ha? admin..istrator.......?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 20 nov 2008 - 16:35
>parli di account di windows? i permessi che ha? admin..istrator.......?
Ti ho chiesto con che account windows viene eseguito il servizio di SQL Server...
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 20 nov 2008 - 16:39
dicevi che si poteva vedere dal configuration manager, l'unica cosa che assomiglia ad un account è NT AUTHORITY/NetworkService.
L'account windows è administrator...
Se sono entrambe sbagliate scusami ma non ti so rispondere.
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 20 nov 2008 - 17:16
>dicevi che si poteva vedere dal configuration manager, l'unica
>cosa che assomiglia ad un account è NT AUTHORITY/NetworkService.
Ecco, ti chiedevo proprio questo
La seconda domanda che ti ho fatto è di verificare che NT AUTHORITY/NetworkService abbia le permission di Full Control sulla directory C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup.
Apri Windows Explorer, seleziona la directory Backup, tasto DX, Proprietà, Protezione.
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 20 nov 2008 - 17:34
Ecco, ti chiedevo proprio questo
>La seconda domanda che ti ho fatto è di verificare che NT AUTHORITY/NetworkService abbia le permission di >Full Control sulla directory C:\Programmi\Microsoft SQL Server\MSSQL.1\MSSQL\Backup.
>Apri Windows Explorer, seleziona la directory Backup, tasto DX, Proprietà, Protezione.
Allora..non c'è scritto proprio NT AUTHORITY/NetworkService..ma un utente lunghissimo che inizia con SQLServer2005MSSQLUSER ecc.. se è questo permission full control.
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
gio 20 nov 2008 - 22:06
>Allora..non c'è scritto proprio NT AUTHORITY/NetworkService..ma
>un utente lunghissimo che inizia con SQLServer2005MSSQLUSER ecc..
>se è questo permission full control.
SQLServerMSSQLUser$<nome pc>$MSSQLSERVER è un gruppo locale i cui membri possiedono i privilegi per autenticarsi all'istanza SQL Server.
Boh, sinceramente non capisco per quale motivo ottieni un access denied sul secondo backup set.
Mmmm... ma non è che per caso stai cercando di ripristinare il backup su un database esistente senza specificare l'opzione WITH REPLACE?
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
gio 20 nov 2008 - 23:33
SQLServerMSSQLUser$<nome pc>$MSSQLSERVER è un gruppo locale i cui membri possiedono i privilegi per autenticarsi all'istanza SQL Server.
>Boh, sinceramente non capisco per quale motivo ottieni un access denied sul secondo backup set.
>Mmmm... ma non è che per caso stai cercando di ripristinare il backup su un database esistente senza specificare l'opzione WITH REPLACE?
Ti dirò che ci avevo pensato ma ho provato pure ad azzerare il DB prima del restore, niente, ad eliminarlo e a ricrearlo identico..niente..
Ti faccio una domanda....ho provato pure ad eseguire gli scripts che ti crea in automatico il bellissimo programma SQL Server Database Publishing (crea uno script di TUTTO il Database, compresi record)...mi ha dato un errore di memoria....ho controllato le ram...sto pc (che uso da remoto) ha 480mb...non vorrei che....!?
No eh?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 21 nov 2008 - 09:33
>Ti dirò che ci avevo pensato ma ho provato pure ad azzerare il
>DB prima del restore, niente, ad eliminarlo e a ricrearlo identico..niente..
Il restore di un backup non richiede la presenza di un db "vuoto o azzerato" in quanto sarà la procedura di restore stessa a creare il database.
Se è già presente un db con lo stesso nome, dovrai specificare l'opzione WITH REPLACE per sovrascriverlo.
>Ti faccio una domanda....ho provato pure ad eseguire gli scripts
>che ti crea in automatico il bellissimo programma SQL Server
>Database Publishing (crea uno script di TUTTO il Database, compresi
>record)...mi ha dato un errore di memoria....ho controllato le
>ram...sto pc (che uso da remoto) ha 480mb...non vorrei che....!?
>No eh?
Cosa?
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
ven 21 nov 2008 - 12:32
Il PC ha 480 mb di ram, e mi ci connetto già in remoto, quindi (penso) ne occupo già un pò..non vorrei che non mi ripristina perchè appunto la memoria è insufficente?
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 21 nov 2008 - 12:33
>Il PC ha 480 mb di ram, e mi ci connetto già in remoto, quindi
>(penso) ne occupo già un pò..non vorrei che non mi ripristina
>perchè appunto la memoria è insufficente?
Il problema non è sicuramente questo
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
ven 21 nov 2008 - 16:56
Quando faccio il ripristino con la procedura guidata fleggo in Opzioni, Sovrascrivi il database esistente...
Hai altre prove che posso provare? sto impazzendo..
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
ven 21 nov 2008 - 17:11
>Quando faccio il ripristino con la procedura guidata fleggo in
>Opzioni, Sovrascrivi il database esistente...
E...?
>Hai altre prove che posso provare? sto impazzendo..
Dammi quel maledetto backup set che vedo cosa c'è dentro
Però 70MB sono troppi...
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
tankian
Profilo
| Junior Member
83
messaggi | Data Invio:
mer 26 nov 2008 - 18:39
Scusate ho avuto problemi di connessione! In compenso torno da vincitore visto che sono riuscito a risolvere il problema
.
Adesso non so se è stata una coincidenza, mia fortuna, grazia divina..non lo so...fatto sta che facendo aggiungere 2gb di ram il ripristino è andato.
In ogni caso ringrazio lbenaglia soprattutto per la pazienza datami..ciao grazie ed a presto!
dops
Profilo
| Newbie
8
messaggi | Data Invio:
gio 1 gen 2009 - 21:30
ciao, scusate se riprendo il posto dopo tutto questo tempo.. però la domanda di lbenaglia era abbastanza chiara.. voleva sapere con quale utente veniva eseguito il servizio sql server. Il problema infatti derivava dall'utenza di esecuzione che non aveva i permessi necessari.. Per vederlo cmq basta poco.. start > esegui > services.msc selezioni il servizio, pulsdxmouse > proprietà > scheda connessione.
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !