Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / LINKED SERVER unable to begin a distributed transaction / 19 сообщений из 19, страница 1 из 1
06.12.2017, 12:57:16
    #39564995
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Добрый день.

Такой запрос выполняется успешно:
Код: sql
1.
EXECUTE [10.0.0.2].master.dbo.xp_sqlagent_enum_jobs 1,'';





А такой:
Код: sql
1.
2.
insert into @CurrentJobs 
EXECUTE [10.0.0.2].master.dbo.xp_sqlagent_enum_jobs 1,'';



Выдает ошибку:


OLE DB provider "SQLNCLI" for linked server "10.0.0.2" returned message "Диспетчер транзакций отключил поддержку удаленных и сетевых транзакций.".
Сообщение 7391, уровень 16, состояние 2, строка 31
The operation could not be performed because OLE DB provider "SQLNCLI" for linked server "10.0.0.2" was unable to begin a distributed transaction.



При этом
@CurrentJobs - это табличная переменная и запрос с локального сервера в нее выполняется успешно:
Код: sql
1.
2.
insert into @CurrentJobs 
EXECUTE master.dbo.xp_sqlagent_enum_jobs 1,'';




Как присвоить значение табличной переменной из EXECUTE с линкованого сервера?
...
Рейтинг: 0 / 0
06.12.2017, 13:00:27
    #39564998
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
гогол,

select * from msdb.dbo.sysjobs и т.п.
...
Рейтинг: 0 / 0
06.12.2017, 13:01:25
    #39565000
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
У вас или DTC на обоих серверах не настроен или что-то ещё.
...
Рейтинг: 0 / 0
06.12.2017, 13:07:30
    #39565004
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Владислав Колосовгогол,

select * from msdb.dbo.sysjobs и т.п.

Мне нужен статус джоба его там нет ((
...
Рейтинг: 0 / 0
06.12.2017, 13:08:23
    #39565005
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Владислав КолосовУ вас или DTC на обоих серверах не настроен или что-то ещё.

DTS True
...
Рейтинг: 0 / 0
06.12.2017, 13:44:00
    #39565036
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Владислав КолосовУ вас или DTC на обоих серверах не настроен или что-то ещё.


я спутал с RPC .



Подскажите пожалуйста где настройки DTC проверить?
...
Рейтинг: 0 / 0
06.12.2017, 14:06:30
    #39565061
LINKED SERVER unable to begin a distributed transaction
гогол
Код: sql
1.
2.
-- не явной транзакции нет 
EXECUTE [10.0.0.2].master.dbo.xp_sqlagent_enum_jobs 1,'';



Код: sql
1.
2.
3.
-- не явная транзакция началась (ибо это insert)
insert into @CurrentJobs 
EXECUTE [10.0.0.2].master.dbo.xp_sqlagent_enum_jobs 1,'';




гоголКак присвоить значение табличной переменной из EXECUTE с линкованого сервера?

Никак. Insert - это всегда транзакция. А если идёт обращение к линкеду то будет распределённая.

Можно на уровне провайдера отключить транзакции (опция distribtx в строке соединения). В provider string прописывается при создании linked'а.

Можно проверить работу DTS: https://www.google.ru/search?q=dtcping и починить то, что не работает https://www.google.ru/search?q=how to use dtcping
Можно настроит сеть для DTS: https://www.google.ru/search?q=distributed transaction service port
...
Рейтинг: 0 / 0
06.12.2017, 16:20:25
    #39565227
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
DTCPing по IP не пингует:

remote host name can only be NetBIOS name


По имени сервера с доменом тоже
...
Рейтинг: 0 / 0
06.12.2017, 16:24:17
    #39565228
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
ага, надо на двух сразу запустить...

пока не нашел где нетбиос имя брать правда...
...
Рейтинг: 0 / 0
06.12.2017, 16:29:48
    #39565236
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
от DTC можно отказаться переписав через OPENQUERY
...
Рейтинг: 0 / 0
06.12.2017, 16:56:21
    #39565252
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
TaPaKот DTC можно отказаться переписав через OPENQUERY


Что-то не получается получить значения функции, как уже только не пробовал:


Код: sql
1.
SELECT * FROM  OPENQUERY ( [10.0.0.2] ,'EXECUTE master.dbo.xp_sqlagent_enum_jobs 1,'''';' )
...
Рейтинг: 0 / 0
06.12.2017, 17:00:44
    #39565259
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
гоголTaPaKот DTC можно отказаться переписав через OPENQUERY


Что-то не получается получить значения функции, как уже только не пробовал:


Код: sql
1.
SELECT * FROM  OPENQUERY ( [10.0.0.2] ,'EXECUTE master.dbo.xp_sqlagent_enum_jobs 1,'''';' )




Добавил SET FMTONLY OFF и сработало о_О
...
Рейтинг: 0 / 0
06.12.2017, 17:10:30
    #39565267
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
На счет DTCPing .


Запускаю его.

Он создает лог.

В логе прописаны настройки.


Так в этих настройках NetBIOS name пустое
...
Рейтинг: 0 / 0
06.12.2017, 17:28:13
    #39565282
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
UDP port 1434, see SQL Server Browser Service
...
Рейтинг: 0 / 0
06.12.2017, 17:42:49
    #39565298
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Konst_OneUDP port 1434, see SQL Server Browser Service

ничего не понял... причем тут SSBS ?
...
Рейтинг: 0 / 0
06.12.2017, 17:44:17
    #39565300
Konst_One
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
проверьте порт, должен быть доступен с обеих сторон
...
Рейтинг: 0 / 0
06.12.2017, 17:57:21
    #39565317
гогол
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
Konst_Oneпроверьте порт, должен быть доступен с обеих сторон

проверил телнотом - доступны.
...
Рейтинг: 0 / 0
06.12.2017, 18:24:47
    #39565343
felix_ff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
гогол,

what? telnet клиент проверяет доступность только TCP порта.

а вообще проверьте 1) services.msc => включена ли служба MSDTC
2) dcomcfg => используется ли для хоста локальный координатор по умолчанию?
в безопасности учетка входа NT AUTHORITY\Network service
...
Рейтинг: 0 / 0
06.12.2017, 18:26:13
    #39565344
felix_ff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
LINKED SERVER unable to begin a distributed transaction
ну и DTC имеет доступ к сети и разрешена связь с диспетчером.
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / LINKED SERVER unable to begin a distributed transaction / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]