web-dev-qa-db-ja.com

SQL Server Management Studioを介して別のサーバーをマップする方法

コマンドを入力して別のサーバーをマップしようとしています

EXEC xp_cmdshell 
    'Net Use H:\\568.256.8.358\backup_147 1234abc /USER:cranew /PERSISTENT:yes'

これでエラーが発生しました:

ネットワークパスが見つかりません

しかし、別のサーバーを手動でマップすることができます。これを整理するのを手伝ってください。

10
Anto

これはNet Use質問はSSMS/SQLサーバーの質問よりもです。

Net Use の構文は次のとおりです。

Net Use [{DeviceName | *}] 
   [\\\\ComputerName\ShareName[\volume]] [{Password | *}]] 
   [/user:[DomainName\]UserName] [/user:[DottedDomainName\]UserName] 
   [/user: [UserName@DottedDomainName] [/savecred] [/smartcard] 
   [{/delete | /persistent:{yes | no}}]

だから、私はあなたのコマンドが次のようになると期待します:

EXEC xp_cmdshell 
    'Net Use H: \\568.256.8.358\backup_147 1234abc /USER:cranew /PERSISTENT:yes'
6
孔夫子

ネットワークドライブを割り当てないでください。ネットワークパスに直接バックアップするだけです。

マップされたドライブを使用すると、ドライブ文字が次回利用可能になると想定し始めると、トリッキーになります。後でサーバーに別のハードドライブを追加し、そのドライブ文字を使用したい場合はどうなりますか? Windowsがドライブを切断してネットワークソケットを再利用するとどうなりますか?

2
mrdenny

再起動後、サーバーはコマンドプラスソリューションの保存コマンドを実行する必要があります...

Use Master
GO

EXEC master.dbo.sp_configure 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO

EXEC master.dbo.sp_configure 'xp_cmdshell', 1
RECONFIGURE WITH OVERRIDE
GO

exec xp_cmdshell 'Net Use  \\ip\xxx pass /user:xxx /persistent:no'

Use Master
GO

EXEC master.dbo.sp_configure 'show advanced options', 1
RECONFIGURE WITH OVERRIDE
GO

EXEC master.dbo.sp_configure 'xp_cmdshell', 0
RECONFIGURE WITH OVERRIDE
2
saeed