Конференция "Базы" » приконнектиться к SQL server [D7, MySQL]
 
  • Sergey2 (07.11.08 15:41) [0]
    Задача переписать данные с одного sql-сервера SQLserv1 на другой SQLserv2. именно запросом. через Jobs в Enterprise Manager не то, что нужно.

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

    находясь в SQLserver1 удалось подсоединться с помощью

    EXEC sp_addlinkedserver @server='SQLserver2'

    к SQLserver2.

    теперь пытаюсь вернуть какойнибудь селект из таблицы второго сервера. например вот так:

    SELECT * FROM OPENQUERY(SQLserver2, 'select * from mytable')

    пишет на это

    Login failed for user '(null)'. Reason: Not associated with a trusted SQL Server connection.

    на серваках никаких поролей нет.

    Помогите разобраться плиз, кто сталкивался с такой проблемой.
  • stas © (07.11.08 15:47) [1]
    1. У тебя MSSQL, а не MYSQL
    2. Заведи пользователя и пароль на подключаемом сервере
    3. В свойствах подключения Linked Server  укажи этого пользователя и пароль
    4. Если незнаешь как это сделать командой SQL читай BOL LinkedServer
  • Правильный$Вася (07.11.08 15:47) [2]
    а я вот не пойму, с каких пор MS-синтаксис в MySQl объявился?
  • GRAND © (07.11.08 15:50) [3]

    > Enterprise Manager


    - это тулза под MSQL??? :)
  • GRAND © (07.11.08 15:50) [4]

    > Enterprise Manager


    - это тулза под MySQL??? :)
  • Sergey2 (07.11.08 15:59) [5]
    stas ©   (07.11.08 15:47) [1]  спасибо за ответ.

    вообщемто я и сам уже начал капаться в этом Linked Server.
    Какова последовательность действий? если я заведу пользователя на SQLserver2 - то каким образом в Linked Server внутри Sqlserver1 я увижу этого пользователя ? он видит только список Local Logins - пользователей c первого сервера. или я тут в качестве REmote User - указываю "того" локального со второго сервера ?

    ЗЫ сервак - да конечно же MSSQL
  • GRAND © (07.11.08 16:06) [6]

    > если я заведу пользователя на SQLserver2 - то каким образом
    > в Linked Server внутри Sqlserver1 я увижу этого пользователя
    > ? он видит только список Local Logins - пользователей c
    > первого сервера. или я тут в качестве REmote User - указываю
    > "того" локального со второго сервера ?


    Единую для всех Active Directory зашарабанить - не?
  • stas © (07.11.08 16:15) [7]

    > указываю "того" локального со второго сервера ?

    ага.
    Радиобуттон ставь на
    be made using this security context
  • Sergey2 (07.11.08 16:33) [8]
    В Logins SQLserver2 завел пользователя. в LinkedServer SQLServer1 добавил пользователя этого при выборе Радиобуттон на
    be made using this security context.

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

    Error 18452: Login failed for user '*********'. Reason: Not associated with a trusted SQL Server connection.
  • stas © (07.11.08 16:40) [9]
    А этому юзеру доступ на базы дал?
  • Sergey2 (07.11.08 16:48) [10]
    да - этот пользователь, член домена. Я зовел его и в SQLServer1 и в SQLServer2 в Logins. Доступ на все базы на обоих серверах. В Linked Server
    добавил его в Security и в Be made using this security context:
    и в Local Server Login to remote server login mapping - причем в той таблице и в Local Login и в REmote login...

    всё равно ошибка что не съассоциирован с доверенным
  • stas © (07.11.08 16:50) [11]
    SELECT * FROM OPENQUERY(SQLserver2, 'select * from MYDATABSE.DBO.mytable')
  • Sergey2 (07.11.08 17:07) [12]
    нет. и при выполнении запроса этого и при выборе внутри Linked Server и Tables/Views вылетает одна и таже ошибка
  • stas © (07.11.08 17:11) [13]
    а база по умолчанию какая у юзера через которго конект ?
  • Sergey2 (07.11.08 17:17) [14]
    ну и там и там одна из рабочих баз где все таблицы наши живут.
  • Sergey2 (07.11.08 17:20) [15]
    использованная процедура

    sp_addlinkedserver

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

    USE master EXEC sp_helpserver

    неможет результат какой нибудь ранее "неправильно" используемой процедуры мешать ?

    может можн окакнибудь запросом попробовать приконектится ко второму серваку с указанием пароля логина ?  странно уже то что в самом энтерпрайз манагере - не даёт он просмотреть в линкед серверс ни таблицы ни вьюшки... ппц какой то...
  • Sergey2 (07.11.08 17:21) [16]
    использованная процедура

    sp_addlinkedserver

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

    USE master EXEC sp_helpserver

    неможет результат какой нибудь ранее "неправильно" используемой процедуры мешать ?

    может можн окакнибудь запросом попробовать приконектится ко второму серваку с указанием пароля логина ?  странно уже то что в самом энтерпрайз манагере - не даёт он просмотреть в линкед серверс ни таблицы ни вьюшки... ппц какой то...
  • stas © (07.11.08 17:27) [17]
    Не может она держать подключение постоянно. После перезагрузки точно.
    Че-то накручено с правами поэтому не работает.
    У меня куча Linked Server'ов работают нормально, попробуй приконектится под sa если не отключен этот логин.
  • Sergey2 (07.11.08 17:34) [18]
    не - sa болтается и там и там. добавил - такая же фигня. могут какие то нелепые доменные настройки всему этому мешать ? хотя я ведь добавлял не только виндовых пользователей с ихней аудентификацией. но и заводил sqlserver ных..
  • stas © (07.11.08 17:39) [19]
    У тебя аутентификация на подключаемом сервере должна быть
    SQL+Windows, а не Windows
 
Конференция "Базы" » приконнектиться к SQL server [D7, MySQL]
Есть новые Нет новых   [134477   +39][b:0][p:0.001]