Wiederherstellen einer Datenbank von einem Netzwerklaufwerk

Quelle: Quelle: http://stackoverflow.com/questions/16491/restore-database-backup-over-the-network

/*
Wiederherstellen einer Datenbank von einem Netzwerklaufwerk
Problem: Der SQL-Server erlaubt nur lokale Laufwerke
Lösung: "NET USE ..." in Verbindung von "xp_cmdshell"
Hinweis: Ein benutzes Passwort kann/wird bei Passwort-Wechsel Problemen führen

Quelle: http://stackoverflow.com/questions/16491/restore-database-backup-over-the-network
*/
-- zuvor prüfen, wie die werte in der master vor dem setzen der werte eingerichtet sind,
-- um sie hinterher wieder auf die ursprünglichen werte zurücksetzen zu können
EXEC sp_configure

-- prüfen und dokumentieren, zum zudrückstellen auf die ursprungswerte
-- werte unter !!!show advanced options!!!
-- JETZT muss die advanced options eingeschaltet werden, um danach zu prüfen, ob die xp_cmdshell bereits aktiviert ist oder nicht.

-- Setzen der werte + aktivieren der xp_cmdshell
-- STEP 1:

-- allow changes to advanced options 
EXEC sp_configure 'show advanced options', 1
GO
-- Update currently configured values for advanced options.
RECONFIGURE
GO
-- To enable xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO
-- Update currently configured values for advanced options.
RECONFIGURE
GO

-- nutzen der xp_cmdshell zum mounten des netzwerkpfades direkt im SMSS
-- STEP 2:

EXEC xp_cmdshell 'NET USE Z: \\Srv\Path password1 /USER:Domain\UserName'


-- wiederherstellen der datenbank mit dem nun sichtbaren laufwerk
-- STEP 3:

RESTORE DATABASE DataBaseNameHere FROM DISK = 'Z:\BackNameHere.BAK'
GO

/*
ggf. EXEC xp_cmdshell 'NET USE DELETE Z:'
ggf. EXEC sp_configure 'xp_cmdshell', 0
ggf. EXEC sp_configure 'show advanced options', 0
*/
Print Friendly, PDF & Email