Як зіставити інший сервер через SQL Server Management Studio


10

Я намагаюся відобразити інший сервер, даючи команду

EXEC xp_cmdshell 
    'NET USE H:\\568.256.8.358\backup_147 1234abc /USER:cranew /PERSISTENT:yes'

Я отримав помилку з цим:

мережевий шлях не знайдено

Але я в змозі картувати інший сервер вручну. Будь ласка, допоможіть мені в цьому розібратися.


Здрастуйте, щоб уникнути позначення або видалення вашого запитання модниками, надайте більше інформації. Як ви намагаєтеся підключитися до іншого сервера, використовуючи SQL Server Management Studio точно? Ви використовуєте powerhell? XP_CMDSHELL? Ваша команда NET USE також абсолютно неправильна. Я не бачу, як це буде працювати ніде, всередині або зовні SQL Server. Для роботи вам потрібні 2 косої риски (\) та папка.
Алі Разегі

Чи є помилка друку у заяві про використання мережі? Я очікував щось на кшталт:NET USE H:\ \\server\share 1234abc /USER:cranew /PERSISTENT:yes
Стюарт Мур,

Зображення подібного мережевого накопичувача насправді не є гарною ідеєю з причин, зазначених у відповідях нижче. Чому б ви не просто використали шлях до UNC?
Даніель Хатмахер

@DanielHutmacher, а як би це виглядало, будь ласка !?
Пол-Себастьян Маноле

@ Поль-SebastianManole замість використання H:\ , ви могли б просто виписати повний шлях \\server\share\folder\filename.bak. Це прекрасно працює для створення резервних копій, OPENROWSET тощо, за умови правильного налаштування дозволів облікового запису служби.
Даніель Хатмахер

Відповіді:


6

Це скоріше NET USEпитання, ніж питання SSMS / SQL Server.

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'

2

Не картографуйте мережеві накопичувачі та не очікуйте їх наявності. Просто створіть резервну копію на мережевий шлях безпосередньо.

Використання відображених накопичувачів швидко стає складним, коли ви починаєте робити припущення, що літера диска буде доступна наступного разу. Що станеться, якщо пізніше ви додасте інший жорсткий диск на сервер і хочете використовувати цю букву диска? Що відбувається, коли Windows відключить накопичувач, щоб повернути мережеву розетку?


2

після перезапуску сервер повинен виконати команду збереження рішення зберегти команду ...

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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.