2016-05-24 8 views
1

Ich versuche, eine Backup-Datei von einem Remote-System lokal zu kopierenAusgabe mit xp_cmdshell

EXEC master.sys.xp_cmdshell 'XCopy src dest'

Befehl. Der oben genannte Befehl gibt Datei nicht gefunden Fehler zurück. Der Befehl XCopy kopiert jedoch die Datei remote system in die Datei local system, wenn er in der Befehlszeile der local system ausgeführt wird. Kann jemand eine Lösung vorschlagen?

Antwort

1

Sie versuchen, auf einen Remote-Server zuzugreifen. Wenn Sie dies über die Befehlszeile versuchen, verwenden Sie Ihre Berechtigungen.

Allerdings wird xp_cmdshell mit den Berechtigungen des SQL Server-Dienstkontos ausgeführt. Natürlich sollte dieses Konto mit minimalen Berechtigungen ausgeführt werden, möglicherweise müssen Sie seine Berechtigungen für den anderen Server erhöhen.

MSDN

1

Auch vergessen Sie nicht, dass, wenn die xp_cmdshell die SQL-Konto Berechtigungen führt unter die Netzlaufwerksbuchstaben zugeordnet werden nicht zur Verfügung. Sie müssen den UNC-Pfad verwenden. z. B. \\ Servername \ Freigabename \ Pfad \ Datei