Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Опыта работы именно с MSSQL у меня к сожалению немного а тут еще случилось так...
что в сети одновременно пали смертью храбрых оба домен контроллера
да так...что пришлось домен поднимать заново(т.е. переустанавливать) а базы ресторить из архивов.
MSSQL-2005 стоял на одном из погибших контроллеров
естественно имеем проблемы со входом в БД

прочитано в MSDN
Перемещение имен входа и паролей между экземплярами SQL Server 2005
http://support.microsoft.com/kb/918992/
поднял старый sql sеrver на другом железе
выполнил пункты 2-3 получил скрипт
--------
-- Login: DOMAIN_NAME\Userneme1
CREATE LOGIN [DOMAIN_NAME\Userneme1] FROM WINDOWS WITH DEFAULT_DATABASE = [basename]

-- Login: DOMAIN_NAME\Userneme2
CREATE LOGIN [DOMAIN_NAME\Userneme1] FROM WINDOWS WITH DEFAULT_DATABASE = [basename]

-- Login: DOMAIN_NAME\Userneme1
CREATE LOGIN [DOMAIN_NAME\Userneme1] FROM WINDOWS WITH DEFAULT_DATABASE = [basename]

---------
выполняю его на новом сервере логины которые совпадают с пользователями БД успешно создаются..но вход в БД по прежнему не осуществляется

далее читаем
SAMPLE Stored Procedures That Helps Map SIDs Between User and Master Databases When A Database Is Moved
http://support.microsoft.com/kb/298897/

выполняю указанную процедуру под пользователем являющимся администратором домена
получаю ошибку при создании хранимой процедуры
Creating Stored Procedure: dbo.sp_SidMap
Msg 259, Level 16, State 1, Procedure sp_SidMap, Line 215
Ad hoc updates to system catalogs are not allowed.

Обращаюсь к тем кто уже проводил подобную процедуру
какой из этих путей реально работает и где что я упустил...
11 ноя 09, 14:48    [7914488]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
Для полного восстановления необходимо кроме пользовательских БД восстановить еще и системные БД, в частности я сейчас веду речь о базах master, msdb.
11 ноя 09, 15:40    [7914976]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
>выполняю его на новом сервере логины которые совпадают с пользователями БД успешно создаются..но вход в БД по прежнему не осуществляется


при этом скорее всего у вас получается, что логин MSSQL и пользователь БД не связаны между собой
11 ноя 09, 15:43    [7915002]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
далее читаем
SAMPLE Stored Procedures That Helps Map SIDs Between User and Master Databases When A Database Is Moved
http://support.microsoft.com/kb/298897/


А что Вы читаете статью, предназначенную для 2000 и пытаетесь применить ее к 2005?!

ALTER USER ... WITH LOGIN ... Вам в помощь, чтобы SIDы перемапить.
11 ноя 09, 16:01    [7915164]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
понял попробую восстановить эти базы....
порылся в сети ...смущает то что судя по всему результат работы процедуры sp_help_revlogin должен быть примерно таким...

-- Login: folio
CREATE LOGIN [folio] WITH
PASSWORD = 0x010***********************************************08 HASHED,
SID = 0x17A***************************C5,
DEFAULT_DATABASE = [hamster],
CHECK_POLICY = OFF,
CHECK_EXPIRATION = OFF

а у меня
-- Login: DOMAIN_NAME\Userneme1
CREATE LOGIN [DOMAIN_NAME\Userneme1] FROM WINDOWS WITH DEFAULT_DATABASE = [basename]
11 ноя 09, 16:01    [7915167]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
понял попробую восстановить эти базы....


Востановление master, где собственно и хранятся логины, Вам ничем не поможет, ибо там SIDы от "старого" домена.
11 ноя 09, 16:04    [7915190]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
pkarklin
А что Вы читаете статью, предназначенную для 2000 и пытаетесь применить ее к 2005?!

ALTER USER ... WITH LOGIN ... Вам в помощь, чтобы SIDы перемапить.


....
да я видел что эта статья для 2005 не предназначена....но в сети есть ссылки указывающие на возможность применения этой схемы и с MSSQL 2005.

пробовал применять
ALTER USER ... WITH LOGIN ... в следующем формате
-----------
use BASENAME;
alter user [DOMAIN_NAME\USERNAME1] WITH NAME=[DOMAIN_NAME\USERNAME1], DEFAULT SCHEMA = [DOMAIN_NAME\USERNAME1], LOGIN=[DOMAIN_NAME\USERNAME1]
-------------
получаю Incorrect syntax near 'LOGIN'.(но синтаксических ошибок лично я тут не вижу)
если убрать секцию LOGIN то ошибка
The name change cannot be performed because the SID of the new name does not match the old SID of the principal.
12 ноя 09, 08:28    [7917764]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
автор
но синтаксических ошибок лично я тут не вижу


а я вижу. С синтаксисом не пробовали сравнивать, да и зачем Вам другие опции, если вам надо тога SIDы перемапить:

alter user [DOMAIN_NAME\USERNAME1] WITH LOGIN=[DOMAIN_NAME\USERNAME1]
12 ноя 09, 08:35    [7917782]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Судя по хелпу секции LOGIN в моей версии MSSQL вообще не должно быть

Цитата из хелпа

ALTER USER user_name
WITH <set_item> [ ,...n ]

<set_item> ::=
NAME = new_user_name
| DEFAULT_SCHEMA = schema_name
12 ноя 09, 08:40    [7917793]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
вариант
alter user [DOMAIN_NAME\USERNAME1] WITH LOGIN=[DOMAIN_NAME\USERNAME1]
я безусловно тоже пробовал..та же синтаксическая ошибка около Login
12 ноя 09, 08:45    [7917811]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Bad_kluster,

Результат SELECT @@version покажите.
12 ноя 09, 08:49    [7917822]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
12 ноя 09, 09:11    [7917892]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
pkarklin
Member

Откуда: Москва (Муром)
Сообщений: 74927
Bad_kluster,

Сервер не мешало бы пропачить.
12 ноя 09, 10:09    [7918230]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Glory
Member

Откуда:
Сообщений: 104760
Bad_kluster
вариант
alter user [DOMAIN_NAME\USERNAME1] WITH LOGIN=[DOMAIN_NAME\USERNAME1]
я безусловно тоже пробовал..та же синтаксическая ошибка около Login

Потому что не надо придумывать синтаксис
Перепривязка пользователя и логина делается через sp_change_users_login
12 ноя 09, 10:17    [7918287]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Glory,
sp_change_users_login c пользователями типа [DOMAIN_NAME\username] не работает
проверено

pkarklin,
Ок..попробуем пропатчить
12 ноя 09, 10:25    [7918341]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Glory
Потому что не надо придумывать синтаксис
Перепривязка пользователя и логина делается через sp_change_users_login


sp_change_users_login (Transact-SQL)
Сопоставляет существующего пользователя базы данных с именем входа SQL Server. В будущей версии Microsoft SQL Server эта возможность будет удалена. Избегайте использования этой возможности в новых разработках и запланируйте изменение существующих приложений, в которых она применяется. Используйте вместо этого команду ALTER USER.

Bad_kluster
вариант
alter user [DOMAIN_NAME\USERNAME1] WITH LOGIN=[DOMAIN_NAME\USERNAME1]
я безусловно тоже пробовал..та же синтаксическая ошибка около Login


ALTER USER userName
WITH <set_item> [ ,...n ]

<set_item> ::=
NAME = newUserName
| DEFAULT_SCHEMA = schemaName
| LOGIN = loginName


Имя пользователя будет автоматически изменено на имя входа, если удовлетворяются следующие условия.

Пользователь является пользователем Windows.
* Имя является именем Windows (содержит обратную косую черту).
* Новое имя не было указано.
* Текущее имя отличается от имени входа.
12 ноя 09, 10:34    [7918397]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Зайцев Фёдор,

наверное вы не все внимательно прочитали
я приводил цитату из хелпа....

ALTER USER user_name
WITH <set_item> [ ,...n ]

<set_item> ::=
NAME = new_user_name
| DEFAULT_SCHEMA = schema_name

и все....никаких LOGIN тут нет.... на LOGIN выдается синтаксическая ошибка

качаю серпак3...поставим...и будем посмотреть...
12 ноя 09, 10:42    [7918460]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Glory
Member

Откуда:
Сообщений: 104760
Bad_kluster


и все....никаких LOGIN тут нет.... на LOGIN выдается синтаксическая ошибка

качаю серпак3...поставим...и будем посмотреть...

LOGIN - это синтаксис SQL2008, а не SQL2005
12 ноя 09, 10:44    [7918474]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Зайцев Фёдор
Member

Откуда: Лужки
Сообщений: 5308
Bad_kluster
Зайцев Фёдор,

наверное вы не все внимательно прочитали
я приводил цитату из хелпа....
так и есть, прошу прощения. не вполне проснулся ещё, судя по всему
12 ноя 09, 10:46    [7918499]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Glory

LOGIN - это синтаксис SQL2008, а не SQL2005


в статье msdn вариант с ALTER USER WITH LOGIN предлагался именно для MSSQL 2005
pkarklin

А что Вы читаете статью, предназначенную для 2000 и пытаетесь применить ее к 2005?!

ALTER USER ... WITH LOGIN ... Вам в помощь, чтобы SIDы перемапить.


лишнее тому подтверждение
12 ноя 09, 10:56    [7918587]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Ну чтож....поставил сервис пак 3...это ничего не дало....
при установке сервиспака небыло возможности выбрать MSSQLSERVER в качестве доступного компонента для обновления
и seleсt @@version по прежнему показывает что он
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
получется серпак не встал?
12 ноя 09, 13:07    [7919852]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Glory
Member

Откуда:
Сообщений: 104760
Bad_kluster
Ну чтож....поставил сервис пак 3...это ничего не дало....
при установке сервиспака небыло возможности выбрать MSSQLSERVER в качестве доступного компонента для обновления
и seleсt @@version по прежнему показывает что он
Microsoft SQL Server 2005 - 9.00.1399.06 (Intel X86) Oct 14 2005 00:33:37 Copyright (c) 1988-2005 Microsoft Corporation Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 2)
получется серпак не встал?

А вы откуда брали сервиспак то ?
12 ноя 09, 13:11    [7919897]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Glory,

с официального сайта Microsoft
http://technet.microsoft.com/en-au/sqlserver/bb895957.aspx
12 ноя 09, 13:30    [7920109]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Glory
Member

Откуда:
Сообщений: 104760
Bad_kluster
Glory,

с официального сайта Microsoft
http://technet.microsoft.com/en-au/sqlserver/bb895957.aspx

И какой из трех предлагаемых файлов вы скачали ?
12 ноя 09, 13:35    [7920159]     Ответить | Цитировать Сообщить модератору
 Re: Восстановление пользователей БД после переустановки домена  [new]
Bad_kluster
Member

Откуда:
Сообщений: 13
Glory,

упс...действительно скачал не то...пора на выходные :-)
12 ноя 09, 14:34    [7920725]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить