Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
k700
Member

Откуда: Moscow
Сообщений: 103
Дано: В сети 4 сервера MSSQL2KSP3:
2 - под Win2000srv, 2 - под Win2003srv
На сервере S1 под W2003 выполняется запрос:
insert tblName(t1) exec srvWin2K.dbName.dbo.procName
srvWin2K - linked server на сервере S1. Он под Win2000srv

Проблема: запрос выдаёт ошибку:

Server: Msg 7391, Level 16, State 1, Line 2
The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
[OLE/DB provider returned message: New transaction cannot enlist in the specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a].

При этом тот же запрос между Win2003srv и Win2003srv,
а также между Win2000srv и Win2000srv проходит на "Ура!"

Перерыл весь форум (к-стати - большой человеческий от меня респект sql.ru, в итоге решил трабл)
- включил всяческие:
ANSI_NULLS,
ANSI_WARNINGS,
XACT_ABORT,

компонент: Enable network DTC access,
ключик: TurnOffRpcSecurity,(Если верить MS, в этом случае "DTC authentication security level for RPC calls goes back to a level that is available in Microsoft Windows 2000 Server"),
чекбокс: Component Services->My Computer->MS DTC->Security Configuration->"Network DTC Access",
...
сервис WINS поднимал
Пускал DTCPing (всё там полный success)

- не помогло. Всё та же (не к ночи будь помянута) ошибка 7391.

Читал последние изыскания Microsoft на эту тему:
You receive error 7391 when you run a distributed transaction against a linked server
(Article ID: 329332 March 30, 2005 между прочим!)
К-стати так и не нашёл в системе упомянутый там пункт 6:
"Under Network DTC Access, click Network Transactions" ;)) кто знает - где это там "Network Transactions" - поделитесь, будет очч. интересно!
Тоже не помогло.

В-итоге метод дедукции (т.е. простая крестьянская смекалка) победил:
Отключил "Mutual Authentication" - заработало!
(сначала поставил "No Authentication Required", потом "Incoming Caller Authentication Required" - работает)

Уже после этого нашёл занятную статью от производителя (правда там случай когда сервера в разных доменах):
"MSDTC fails to mutually authenticate...."
[url=http://]http://support.microsoft.com/default.aspx?scid=kb;en-us;827805&Product=sql2k[/url]
где в первом пункте говорится: "Make sure that both computers are running Windows Server 2003" :))


Внимание - ВОПРОС!
Что это за зверь - "Mutual Authentication"?
Она что - в-принципе не может работать между Win2000srv и Win2003srv?
А что такое "Incoming Caller Authentication Required"?
Не страдает ли безопасность системы при "Incoming Caller Authentication Required"?


Всем гурум заранее моё БОЛЬШОЕ спасибо!
12 апр 05, 21:43    [1462719]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
jimmers
Member

Откуда: Санкт-Петербург - New York City
Сообщений: 5072
Что-то не воспроизводится у меня.

Сервера:

Microsoft SQL Server 2000 - 8.00.760 (Intel X86)
Dec 17 2002 14:22:05
Copyright (c) 1988-2003 Microsoft Corporation
Enterprise Edition on Windows NT 5.0 (Build 2195: Service Pack 4)

Microsoft SQL Server 2000 - 8.00.760 (Intel X86)
Dec 17 2002 14:22:05
Copyright (c) 1988-2003 Microsoft Corporation
Enterprise Edition on Windows NT 5.2 (Build 3790: )

Что делал:

На Win2000 играл:

USE master
GO
EXEC sp_addlinkedserver 
    'WIN2003',
    N'SQL Server'
GO

EXEC sp_addlinkedsrvlogin 'WIN2003', 'false', NULL, 'sa', 'XXX'
GO

CREATE TABLE SampleTable (val varchar(4000), row int)

insert SampleTable exec WIN2003.master.dbo.sp_readerrorlog

Все машины в домене.

С уважением,
Мартин Рахманов
http://jimmers.russia.webmatrixhosting.net/
13 апр 05, 16:45    [1465611]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
k700
Member

Откуда: Moscow
Сообщений: 103
Привет, Мартин!

автор
Что-то не воспроизводится у меня.


Ты имеешь в виду - проходит без ошибки?
Если так - у тебя на обоих серверах стоит "Mutual AuthenticationRequired"?

(Component Services->My Computer->MS DTC->Security Configuration->Transaction Manager Communication)
26 апр 05, 11:36    [1497413]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
jimm3rs
Guest
А где это?

К сообщению приложен файл. Размер - 0Kb
26 апр 05, 14:32    [1498469]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
k700
Member

Откуда: Moscow
Сообщений: 103
Оппа...
А у тебя сервер под чем работает? (мой - под WinServ2003 Ent ed. SP1)

У меня несколько иная картинка:

К сообщению приложен файл. Размер - 0Kb
27 апр 05, 13:22    [1501568]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
jimm3rs
Guest
У меня без SP сервер. Сейчас установлю и проверю.
27 апр 05, 13:55    [1501746]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
jimm3rs
Guest
Не устанавливается: )

---------------------------
Service Pack 1 Setup Error
---------------------------
Windows Server 2003 Service Pack 1 cannot install.



The product key used to install Microsoft Windows may not be valid. For more information about why you have received this error message, and steps you can take to resolve this issue visit www.howtotell.com.
---------------------------
OK
---------------------------
27 апр 05, 14:22    [1501916]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
k700
Member

Откуда: Moscow
Сообщений: 103
Это что ж творится??!
Нуежели MS таки сделала чтобы сервиспаки активацию продукта проверяли??
:((

(я надеюсь у тебя сервер установлен как у всех порядочных людей - с диска, купленного в переходе метро?)
27 апр 05, 16:21    [1502568]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
jimm3rs
Guest
2k700

Разумеется, с диска метро. Ещё платить за такое...
27 апр 05, 16:42    [1502665]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
Stenly Tvidl
Member

Откуда: Москва
Сообщений: 30
Здравствуйте.


Таже проблема "...unable to begin a distributed transaction."
Два сервера:
Server1: W2k3 (только патчи) + SQL2k (SP3)
Server2: W2k3 (SP1) + SQL2k (SP3)

Если делать запрос с Server1 на Server2 , то ошибка "...unable to begin a distributed transaction."
Если делать запрос с Server2 на Server1 все работает без ошибок.

Сервис пак на Server2 был установлен в четверг, а в субботу перестал выполняться запрос :(

Причем если из QA делать маленькие запросы все проходит с обоих сторон.

Где копать?
3 май 05, 13:00    [1512995]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
Stenly Tvidl
Member

Откуда: Москва
Сообщений: 30
Разобрались!!!

На сервере, где установлен W2k3 + SP1 надо в
Security Settings -> Transaction Manager Communication
выставить Incoming Caller Authentication Required.

И все опять работает :)
4 май 05, 17:37    [1516819]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
Spectrator
Guest
у меня такая же картинка как у jimm3rs - нет линка на Security Settings

система Win 2000

как в него войти?
18 май 05, 13:47    [1551373]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
k700
Member

Откуда: Moscow
Сообщений: 103
Войти просто - надо поставить SP1 на Win2003server :)
24 май 05, 19:33    [1568966]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
Spectrator
Guest
k700

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


проблема не решена, тригерры запущенные между локальными серверами отрабатываются на ура, запросы на удаленный инет сервер тоже нормально отрабатываются - все линковки соблюдены

Но если мы обычный инсерт вставляем в триггер на удаленный инет сервер, то он выдает ошибку

The operation could not be performed because the OLE DB provider 'SQLOLEDB' was unable to begin a distributed transaction.
[OLE/DB provider returned message: New transaction cannot enlist in the specified transaction coordinator. ]
OLE DB error trace [OLE/DB Provider 'SQLOLEDB' ITransactionJoin::JoinTransaction returned 0x8004d00a].


все версии сервис паков одинаковые и систем и скуэля...

что делать

как настроить Security Configuration->Transaction Manager Communication
на Windows 2000 сервере?
30 май 05, 13:49    [1581310]     Ответить | Цитировать Сообщить модератору
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
ivenhoe
Member

Откуда: Город М (не Москва)
Сообщений: 120
Вопрос актуален! Помогите! Повторю Spectrator'а: как это сделать на 2000 системе?
31 май 06, 11:44    [2724373]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
san_d
Member

Откуда: Киев
Сообщений: 60
так и все таки, как же настроить MS DTC между Win2003SP2 и Win2000SP4. Как в 2000м добраться до закладки Security Confuguration? Ее там тупо нет:(
Это вообще возможно? Делал кто-нибуть?
17 авг 09, 13:41    [7546141]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Распр. транзакции Win2000 <-> Win2003 и MSDTC mutual authentication..  [new]
Кесарь
Member

Откуда:
Сообщений: 671
san_d
так и все таки, как же настроить MS DTC между Win2003SP2 и Win2000SP4. Как в 2000м добраться до закладки Security Confuguration? Ее там тупо нет:(
Это вообще возможно? Делал кто-нибуть?


Нам вот из-за этого пришлось переставлять операционку на сервере (ну и заодно и сервер обновили).
8 дек 11, 12:38    [11728302]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить