Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
Подскажите, как можно руками перенести хотя бы одного пользователя?
и как перенести всех пользователей?

спасибо!
18 окт 13, 13:47    [14998156]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
http://support.microsoft.com/kb/918992/en
18 окт 13, 14:08    [14998317]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
tpg
http://support.microsoft.com/kb/918992/en


а как я могу сделать это вручную для одного пользователя?

после восстановления из бэкапа на новом сервере у меня есть пользователи БД,
но нет пользователей mssql. Я хочу создать нового пользователя vasya, и объединить
его с пользователем vasya в БД. как это сделать?
18 окт 13, 14:25    [14998426]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
Гость333
Member

Откуда:
Сообщений: 3683
newbie_1
Я хочу создать нового пользователя vasya

CREATE LOGIN vasya ...


newbie_1
, и объединить
его с пользователем vasya в БД.

ALTER USER vasya WITH LOGIN = vasya
18 окт 13, 14:33    [14998478]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
newbie_1,

вы наверно не прочитали.
копирование пользователя dbo.sp_help_revlogin 'sa'
получаем скрипт создания пользователя
а если потом его соединить с пользователем в бд, то:
EXEC sp_change_users_login 'Auto_Fix', 'user'
18 окт 13, 14:45    [14998571]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
Slava_Nik
newbie_1,

вы наверно не прочитали.
копирование пользователя dbo.sp_help_revlogin 'sa'
получаем скрипт создания пользователя
а если потом его соединить с пользователем в бд, то:
EXEC sp_change_users_login 'Auto_Fix', 'user'

выполнил скрипт указанный.
Выполнение команд успешно завершено.


не получается выполнить:

есть пользователь ADM.
exec dbo.sp_help_revlogin 'ADM'


Сообщение 208, уровень 16, состояние 1, процедура sp_help_revlogin, строка 16
Invalid object name 'master..sysxlogins'.


dbo.sp_help_revlogin 'ADM'


Сообщение 208, уровень 16, состояние 1, процедура sp_help_revlogin, строка 16
Invalid object name 'master..sysxlogins'.



EXEC master..sp_help_revlogin

Сообщение 208, уровень 16, состояние 1, процедура sp_help_revlogin, строка 12
Invalid object name 'master..sysxlogins'.
18 окт 13, 15:07    [14998719]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
Slava_Nik
Member

Откуда: из России
Сообщений: 901
newbie_1,
вы снова не прочитали статью, там есть код этих процедур.
Процедуры нужно создать сначала.
18 окт 13, 15:16    [14998784]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
у меня есть некоторое приложение, которое работает с БД MSSQL.
приложение стоит на клиентской машине, БД на сервере соответственно.

у приложения есть конфиг, в котором прописаны параметры для подключения к БД.
конфиг выглядит так:

[win32client]
clientname=192.168.1.2

[win32client.dll]
comdll=sqlodb32

[odbcrtr]
remotedbname=avalon_test,DRIVER=SQL Server;SERVER=192.168.10.12;DATABASE=DB_Test;Trusted_Connection=No;APP=MT.7.2


в ODBCad32 (как 32 битном, так и 64 битном) прописал строку для User DSN и System DSN: avalon_test
Проверил соединение, тест прошёл успешно.

Но когда пытаюсь подключиться приложением, то получаю ошибку:
Ошибка при подключении к базе данных:
Не удаётся открыть базу данных
avalon/vasya/******


У меня вопрос: почему приложение пытается подключиться к avalon, а не avalon_test?
Я хочу чтобы пользователь Вася работал с тестовой БД, а не рабочей.

пользователь Вася на тестовой БД существует, доступ к БД имеет.
меня больше всего смущает сообщение про avalon. не тот алиас использует приложение.

других конфигов у приложения замечено не было...
18 окт 13, 15:21    [14998822]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
Slava_Nik
newbie_1,
вы снова не прочитали статью, там есть код этих процедур.
Процедуры нужно создать сначала.


автор
Выполните представленный ниже скрипт на SQL сервере с которого необходимо перенести логины. Этот скрипт создаёт два хранимых процедуры с именами sp_hexadecimal и sp_help_revlogin в системной базе данных master. После успешного исполнения скрипта, выполните операции из пункта 2.


написано, что скрипт создаёт два хранимых процедуры

не видел, гду указано что предварительно их нужно создавать, а именно как создавать
18 окт 13, 15:23    [14998842]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
Glory
Member

Откуда:
Сообщений: 104751
newbie_1
У меня вопрос: почему приложение пытается подключиться к avalon, а не avalon_test?

Может потому, что в строке коннекта задано DATABASE=DB_Test ?
А может потому, что у логина vasya базой по-умолчанию задана отсутствующая база avalon ?
18 окт 13, 15:26    [14998864]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
mag2000
Member

Откуда:
Сообщений: 189
newbie_1,
автор
не видел, гду указано что предварительно их нужно создавать, а именно как создавать

По ссылке от tpg в скрипте создаются необходимые процедуры.
Посмотрите внимательно на команды CREATE PROCEDURE в скрипте.
18 окт 13, 18:48    [15000248]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
newbie_1
Guest
Slava_Nik
newbie_1,

вы наверно не прочитали.
копирование пользователя dbo.sp_help_revlogin 'sa'
получаем скрипт создания пользователя
а если потом его соединить с пользователем в бд, то:
EXEC sp_change_users_login 'Auto_Fix', 'user'



получил скрипт для создания пользователя

/* sp_help_revlogin script 
** Generated Oct 23 2013  1:52PM on IXWS005 */
-- Login: sa
CREATE LOGIN [sa] WITH PASSWORD = 0x01000CC5618997B82B4FD621C7791E2C8D032EDDCD67475AA6F2 HASHED,
 SID = 0x01, DEFAULT_DATABASE = [master], CHECK_POLICY = OFF, CHECK_EXPIRATION = OFF

при попытке создать пользователя получаю сообщение об ошибке:

Msg 15419, Level 16, State 1, Line 6
Supplied parameter sid should be binary(16).


что не так делаю?
23 окт 13, 13:56    [15020521]     Ответить | Цитировать Сообщить модератору
 Re: Как перенести пользователей или хотя бы одного пользователя c Mssql2008 SP1 на Mssql 2008?  [new]
Гость333
Member

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

Системный логин sa создаётся при установке SQL Server. Он существует всегда, его нельзя создать или удалить при помощи скриптов.
23 окт 13, 14:16    [15020698]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить