Форум: "Базы";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];
ВнизПомогите с примером, как в одном запросе два SQL-сервера юзать! Найти похожие ветки
← →
Aleksandr (2002-04-18 17:16) [0]Долго я мучился с sp_addLinkedServer, вроде и удавалось подключать его, только вот больше ничего не удавалось .
Будьте добры, напишите пример запроса, если есть Server1, Server2 с логином Admin1 паролем Admin1, логином Admin2 и паролем Admin2, у каждого база данных Base и таблица Table и нужен запрос типа
SELECT * FROM Server1.Base.Table
WHERE ID NOT IN (SELECT ID FROM Server2.Base.Table)
← →
zx (2002-04-18 17:28) [1]insert into REST(ShopIndex, Articul, UsingIndex, Quantity)
select ShopIndex, Articul, UsingIndex, Quantity from ACCESS...REST
← →
Aleksandr (2002-04-18 18:28) [2]2 zx:
может, я чего-то не понял... В Вашем ответе я вообще не увидел ни sp_AddLinkedServer ни логина...
← →
sniknik (2002-04-18 19:04) [3]это пример, точнее в BOL
EXEC sp_addlinkedserver
@server = "MBase",
@provider = "Microsoft.Jet.OLEDB.4.0",
@srvproduct = "OLE DB Provider for Jet",
@datasrc = "D:\ZIP\Base.mdb"
потом обращение select * from MBase...MTable
в данном случае конект вообще к другой базе. к SQL ной так же, даже проще.
перед использованием тебе для каждого линка нужно будет sp_addlinkedsrvlogin сделать раз у тебя все запаролено.
← →
Aleksandr (2002-04-18 19:58) [4]Этим BOL даже не подтереться... Примеры они пишут, только вот в тех примерах нет такого, как два SQL-сервера соединить с разными логинами... И я просто не понимаю, на что он ругается при попытке после линкования сервера выполнить sp_addLinkedSrvLogin... И что там с префиксами при обращении к таблицам этих серверов, тоже фиг поймешь.
← →
TSV (2002-04-18 20:51) [5]Ну зачем вот так вот хаять???
Не хочешь через процедуру, сделай через EM. Там все просто и наглядно. А в BOL все нормально описано.
← →
wicked (2002-04-18 20:59) [6]ну так посмотри на sp_addlinkedsrvlogin....
← →
Aleksandr (2002-04-18 21:13) [7]За что люблю нашего брата, так за неистощимость в отсылках серии "посмотри туда-то"... Уж наверное, посмотрел не один раз, если прошу написать пример :(
← →
Aleksandr (2002-04-18 21:36) [8]Для ясности показываю, как я делаю из аналайзера, подключенного к Server1:
EXEC sp_AddLinkedServer
@server = "SERVER2",
@srvproduct="SQL Server",
@provider = "SQLOLEDB",
@datasrc = "SERVER2",
@catalog = "BASE"
EXEC sp_AddLinkedsrvLogin
@rmtsrvname="SERVER2",
@useself="false",
@rmtuser="Admin2",
@rmtpassword="Admin2"
SELECT * FROM SERVER2.BASE.dbo.TABLE
На что аналайзер, в зависимости от настроения выдает ошибки, что я не могу конфигурировать провайдера либо что Server "server2" is not configured for DATA ACCESS.
← →
sniknik (2002-04-18 22:53) [9]а так не пробовал? SELECT * FROM SERVER2...TABLE без всяких dbo.
если все правильно настроено должно работать у других же получается.
отключи пароли чтобы проверить что не правильно, в администраторе в свойствах у LinkedServer-а поставь не использивать идентификацию. тогда можно без логина.
← →
Aleksandr (2002-04-19 10:42) [10]Пробовал и без всяких dbo. Одна ерунда. А вот отключить пароли - батенька, это корпоративная система, где экспериментировать просто нельзя - все все время работает...
← →
sniknik (2002-04-19 19:10) [11]Так кто говорит про отключение? попробовать только, и не у всей базы а для данного линка.
в Enterprice Menedger (смотри линк который создал)
....SQL server Group-> Local-> Security -> Linked Servers -> ErsServer -> свойства
вкладка Security
галочку на "By made without using a security context"
и не надо логина к нему делать.
будеш знать где у тебя глюк в логине или создан неправильно.
здесь же можно и протестировать (видит он чтото или глюки кажет?), если сделан правильно тут же таблици должны быть видны с другого сервера.
кстати если все так серьезно "корпоративная система!!!!" то почему вам матушка не сделать пару эксперементальных баз?
← →
sniknik (2002-04-19 20:48) [12]у тебя явно линк криво создается (проверил)
вот этот рабочий, может и корявый (через ODBC) но здесь можно явно пароль задать что тебе и надо.
(пользуйся пока я добрый)
sp_addlinkedserver "SQLPal", " ", "MSDASQL", NULL, NULL,
"Driver={SQL Server};Database=Northwind;Server=Pal;UID=sa;PWD=;"
← →
TSV (2002-04-19 21:35) [13]> Aleksandr © (19.04.02 10:42)
А вот отключить пароли - батенька, это корпоративная система, где экспериментировать просто нельзя - все все время работает...
Согласен с sniknik ©. Не фиг на боевом сервере эксперименты ставить. И даже лишние экспериментальные базы там не к чему. Создайте отдельный физический сервер для разработки, тестирования и экспериментов, и вперед...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.05.16;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.006 c