[MSSQL 2005] тормоза linked server'а

grek72

Почему запросы delete/insert/update на linked сервер выполняются намного дольше select'а
(в ~30 раз)?
Где там галочку надо поставить?

al70

Прилинкованный сервер какой: MSSQL, Oracle, <...>?

grek72

MSSQL

Alexander08

может дело все-таке не в том, что сервер линкед, а в блокировках?

grek72

В каких-таких блокировках?
Поясни, пожалуйста, где галочку снять.
В настройках линкед сервера(там вроде особо не понастраиваешь)?
В настройках БД?
В настройках MSDTC?

Alexander08

В каких-таких блокировках?
мда-с... я все понял, просто забей

grek72

Когда не через линкед сервер пишется в таблицу, всё работает быстро.
Так вот, какие-такие блокировки ты имеешь в виду?
ЗЫ: К базе никто одновременно с этими запросами не обращался.

al70

Попробуй через OPENQUERY.
И запрос, кстати, было бы некисло посмотреть.

grek72

Спасибо большое, правда непонятно, почему
insert openquery([bs], 'select a from asd.dbo.Test') values (1)
select * from openquery([bs], 'select a from asd.dbo.Test')
работают мгновенно, а
insert into [bs].asd.dbo.Test(a) values(1)
тупит :confused:

bastii

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

al70

Всё вполне понятно. Когда ты делаешь OPENQUERY, то запрос выполняется на той стороне ровно так, как ты изобразил, а когда ты прикидываешься MSSQL-ем, то вообще хрен знает, что творится в системе. Например, с Ораклом, хотя это и не твой случай, бывает, что драйвер начинает зачем-то качать всю таблицу, а потом выбирать из нее, вместо того, чтобы выбрать записи на той стороне.
Оставить комментарий
Имя или ник:
Комментарий: