Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 RESTORE DATABASE master  [new]
shanton
Member

Откуда: Украина г. Хмельницкий
Сообщений: 628
Восстанавливаю базу master с bak-файла:
-Остановил службы SQL Server и Agent.
-Запустил sqlservr.exe в однопользовательском режиме:
sqlservr.exe -f -m -s SERG

Теперь хочу выполнить:
RESTORE DATABASE master FROM DISK = 'C:\2017-06-27_12-40-54.nt1.master.backup.full'

но не знаю где.
Пробую через MSSMS, при входе получаю ошибку:

Картинка с другого сайта.

Пробую через DAC:
-создал файл C:\tmp\1.sql
RESTORE DATABASE master FROM DISK = 'C:\2017-06-27_12-40-54.nt1.master.backup.full'

-подключась к DAC:
sqlcmd -s SERG\SERG -A

или
sqlcmd -s SERG\SERG

выдаёт ошибку

Картинка с другого сайта.

Помогите понять, как мне подключиться к серверу чтобы выполнить RESTORE master?
Сервер работает на локальной машине, версия:
Microsoft SQL Server 2005 - 9.00.2047.00 (Intel X86) Apr 14 2006 01:12:25 Copyright (c) 1988-2005 Microsoft Corporation Workgroup Edition on Windows NT 6.1 (Build 7601: Service Pack 1)
стартует под UEA\SERG
авторизация mixed.
14 июл 17, 20:15    [20645980]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
o-o
Guest
чтобы по DAC-у подключиться, надо знать порт.
не тот, что на каждый день, а для DAC.
экземпляр именованный, значит или запускайте брау3ер,
или в еррорлоге прочтите, на каком порту DAC
14 июл 17, 20:19    [20645986]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
shanton
Member

Откуда: Украина г. Хмельницкий
Сообщений: 628
В ERRORLOG записано:
Dedicated admin connection support was established for listening remotely on port 49221.

пробую
sqlcmd -s SERG\SERG, 49221 -A

получаю ту же ошибку
SQL Network Interfaces: An error occurred while obtaining the dedicated administrator connection (DAC) port. Make sure that SQL Browser is running, or check the error log for the port number [xFFFFFFFF]. 
15 июл 17, 10:20    [20646602]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
dskdfg
Guest
https://docs.microsoft.com/ru-ru/sql/relational-databases/scripting/sqlcmd-connect-to-the-database-engine
15 июл 17, 13:44    [20646829]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
shanton
Member

Откуда: Украина г. Хмельницкий
Сообщений: 628
dskdfg,

Спасибо!
Для меня ключевым моментом было:
2) Закрываем окошко коннекта (т.к. Object Explorer не может подключаться к SQL Server с помощью DAC (вот почему у меня когда-то не получилось подключиться))

а я сразу пытался законектится.
Но уже другая проблема:

Картинка с другого сайта.

вдимо какая-то локальная программа заняла коннект. В процессах:

Картинка с другого сайта.

это я так понимаю последний процесс.
Как проверить кто запустил процесс или кто занял коннект?
15 июл 17, 15:50    [20647001]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
o-o
Guest
shanton
Для меня ключевым моментом было:
2) Закрываем окошко коннекта (т.к. Object Explorer не может подключаться к SQL Server с помощью DAC (вот почему у меня когда-то не получилось подключиться))

а я сразу пытался законектится.

вы не видите, что ошибка изменилась?
ваш первый вопрос был, что делать с "an error occured while obtaining the dedicator administrator connection (DAC) port"
и ответ на это: порт верный указывайте,
или браузер запустите: он сделает это за вас.
вы же порт, даже правильный, указываете неверно,
ибо вы снова указываете имя экземпляра:
автор
sqlcmd -s SERG\SERG, 49221 -A

а это заставляет сетевую библиотеку игнорировать все, что написано далее,
и идти опрашивать браузер на предмет порта.
а браузер не запущен, в результате экземпляр не найден.
указывать порт надо сразу за именем компа, вот так:
-s SERG,49221


а вот следующий пост уже подключение к другому серверу, NT1.
и полученная ошибка совсем другая: что уже кто-то подключен, а сервер с сингл юзере.

что вы валите все в одну кучу
и выдаете решение второй проблемы за решение первой?
17 июл 17, 09:27    [20649191]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
o-o
Guest
shanton
Как проверить кто запустил процесс или кто занял коннект?

об этом знает сервер, а не Task Manager.
или надо было выставить логирование и успешных логинов тоже
(тогда в еррорлоге было бы сейчас написано, кто подключился)
или теперь никак, сервер перегрузить и быть первым.

можно, отправляя в сингл юзер, указать в кавычках программу, которая будет подключаться.
тогда остальные будут отвергнуты.
программу укажите sqlcmd
17 июл 17, 09:33    [20649213]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
o-o
Guest
или можно сделать проще.
никто, кроме вас, не знает DAC-порт.
все получают его, опросив браузер.
остается остановить браузер и подключаться, явно указав порт.
остальные же его не указывают, а браузер им уже не поможет
17 июл 17, 10:04    [20649313]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
icprog
Member

Откуда:
Сообщений: 166
Попробуйте
sqlcmd -S .\SERG -E

Обратите внимание, S - большая
17 июл 17, 10:05    [20649318]     Ответить | Цитировать Сообщить модератору
 Re: RESTORE DATABASE master  [new]
shanton
Member

Откуда: Украина г. Хмельницкий
Сообщений: 628
Всем большое спасибо, за советы. Попробовать смогу только на след. выходных, поскольку сервера сейчас работают в штатном режиме и запустить в однопользовательском не получиться. На моей машине (SERG) подключиться удалось, а на NT1 и NT2 ошибка, что уже кто-то подключён. Извините, что спутал вопросы.
17 июл 17, 12:52    [20649950]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить