Frage

Wie tun Sie wiederherstellen eine Sicherung der Datenbank mithilfe von SQL Server 2005 über das Netzwerk?Ich erinnere mich, dies zu tun, bevor, aber es war etwas seltsam über die Art und Weise Sie es tun mussten.

War es hilfreich?

Lösung

Die Datenbank ist oft läuft als Dienst unter einem Konto ohne Zugriff auf das Netzwerk.Wenn dies der Fall ist, dann würden Sie nicht in der Lage sein, die Wiederherstellung direkt über das Netzwerk.Entweder das backup kopiert werden müssen, um den lokalen Computer oder die service-Datenbank ausgeführt werden muss als Benutzer mit den entsprechenden Zugriff auf das Netzwerk.

Andere Tipps

Sie haben einige Optionen für die Verwendung eines Netzwerk-Datei, die als backup-Quelle

  1. Karte Netzwerk-Laufwerk/Pfad, hosting-Datei, die unter dem GLEICHEN Benutzer wie MS-SQL-Server.
  2. Verwenden Sie erweiterte gespeicherte Prozedur xp_cmdshell to map network drive aus innerhalb von MS SQL (solche Weise, Befehls-shell haben die gleichen privilegies als Benutzerkonto ausgeführt SSMS)
-- 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
EXEC xp_cmdshell 'NET USE Z: \\Srv\Path password1 /USER:Domain\UserName'

Danach Laufwerk Z:sichtbar Server Managment studio, oder einfach nur

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

Sie können dies über die SSMS-GUI, aber Sie können es tun, indem Sie ein Skript verwenden.RESTORE DATABASE from DISK='\unc\Pfad\Dateiname', Wenn Sie müssen diesen Prozess automatisiert, der beste Weg, um setup eine SQL-Server-Job und führen Sie es als ein Benutzer mit Zugriff auf den Speicherort der Datei.

Stellen Sie sicher, dass der Benutzer bei der Ausführung Ihres SQL services in "Services.msc" active directory "Domain User" dies wird das Problem beheben.

Sie können die SP xp_cmdshell zum anzeigen der networkdrive für sql server, danach wird es zeigen, bis in den Datei-browsing-Fenster.

EXEC xp_cmdshell 'NET USE Z: SERVERLOCATION PASSWORD /USER:DOMAIN\USERNAME'

mehr Infos hier: DB Wiederherstellen von Netzwerk-Laufwerk

Arbeitete für mich!

Ich habe, um dies zu tun ein paar mal, und es gibt nur zwei Optionen, die ich kenne.Kopieren Sie die Datei lokal auf dem SQL Server oder SQL server erstellen Sie ein zugeordnetes Netzlaufwerk, um den Anteil, der die Sicherungsdatei enthält.

Außerdem müssen Sie sicherstellen, dass der SQL Server-Dienst ausgeführt wird, wie ein Benutzer mit Netzwerkzugriff - und-Berechtigungen auf die Freigabe, in der backup-Datei zu Leben."Lokales System" nicht über die Berechtigungen um auf das Netzwerk zuzugreifen.

Als eine Seite beachten, wenn Sie geschehen, werden mit SQL auf einer Virtuellen Maschine oft ist es weniger Streit, nur vorübergehend, bis ein neues Laufwerk auf der VM mit genügend Speicherplatz zum kopieren Ihrer backup-Dateien, führen Sie die Wiederherstellung aus, dass neue lokale Kopie, und löschen Sie dann das temp-Laufwerk.

Dies kann nützlich sein, wenn stoppen/starten des SQL-Dienstes zu ändern, das Konto ist ein Problem.

Erstellen Sie ein freigegebenes Laufwerk auf dem Rechner, auf dem die sicherungen, sagen server1 hat die backups im Ordner "Backups".Gewähren Sie Vollzugriff auf das Konto ausführen der SQL-Server.Auf dem Server, den Sie wiederherstellen möchten, starten Sie SSMS gehen "Datenbank wiederherstellen" und wählen Sie "Von Gerät".In der "Locate Backup file-"Server" - dialog-box und entfernen Sie alles, was Sie im "Pfad" Feld " und in der "File Name" field supply vollständigen Pfad, also "\server\backups\db.bak".Zumindest funktionierte es für mich, wenn die Migration von 05 bis 08.Nicht die bevorzugte Methode, da jedes Netzwerk Schluckauf verursachen können, ein Problem mit der Wiederherstellung.

EXEC sp_configure 'show advanced options', 1
GO

-- Update wird aktuell konfigurierten Werte für die erweiterten Optionen.

RECONFIGURE
GO
-- To enable xp_cmdshell
EXEC sp_configure 'xp_cmdshell', 1
GO

-- Update wird aktuell konfigurierten Werte für die erweiterten Optionen.

RECONFIGURE
GO

--Diese sollte ausgeführt werden, auf Eingabeaufforderung (cmd)

NET USE Z: \\172.100.1.100\Shared Password /USER:administrator /Persistent:no

dann auf SQL Server

EXEC xp_cmdshell 'NET USE Z: \\172.100.1.100\Shared Password /USER:administrator /Persistent:no'

--Danach Laufwerk Z:sichtbar in Server Management studio, oder einfach nur

RESTORE DATABASE DB FROM DISK = 'Z:\DB.BAK'
WITH REPLACE
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top