Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как по transaction_id получить имя_базы или id_базы? / 10 сообщений из 10, страница 1 из 1
23.09.2019, 09:32
    #39865408
MAULER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
Здравствуйте.
Подскажите пожалуйста, как из всего списка активных транзакций получить имя БД, для которой эта транзакция выполняется?

т.е. делаю:
Код: sql
1.
select * from sys.dm_tran_active_transactions


по [name] вижу, что в "где-то" выполняется бекап, но для какой БД не понимаю. Как выкупить, какая транзакция для какой БД?
...
Рейтинг: 0 / 0
23.09.2019, 09:42
    #39865412
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
MAULER,

смотрите sys.dm_exec_requests

транзакция не привязана к одной базе
ну или можно
dm_tran_active_transactions -> sys.dm_tran_session_transactions -> sysprocesses
...
Рейтинг: 0 / 0
23.09.2019, 09:51
    #39865416
MAULER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
TaPaK,

т.е. имя БД можно выцепить только из текста выполняющегося запроса, если она там указана? И больше нигде?
...
Рейтинг: 0 / 0
23.09.2019, 09:52
    #39865418
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
MAULERTaPaK,

т.е. имя БД можно выцепить только из текста выполняющегося запроса, если она там указана? И больше нигде?
кхм.... это как такой вывод случился?
...
Рейтинг: 0 / 0
23.09.2019, 09:57
    #39865420
MAULER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
TaPaK,

У меня не получается найти нормальной связки с какими либо системными таблицами, в которой бы через transaction_id можно было выйти на database_id или database_name.

Только эта: sys.dm_tran_active_transactions -> sys.dm_tran_session_transactions -> sys.dm_exec_sessions
...
Рейтинг: 0 / 0
23.09.2019, 09:58
    #39865423
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
можете проще дёргать sp_who лишние поля что бы мозг не нагружали
или поднять sp_whoisactive
...
Рейтинг: 0 / 0
23.09.2019, 09:59
    #39865424
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
MAULERTaPaK,

У меня не получается найти нормальной связки с какими либо системными таблицами, в которой бы через transaction_id можно было выйти на database_id или database_name.

Только эта: sys.dm_tran_active_transactions -> sys.dm_tran_session_transactions -> sys.dm_exec_sessions

ну dbid можете искать
...
Рейтинг: 0 / 0
23.09.2019, 10:06
    #39865429
MAULER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
TaPaK,

да, только вот когда в sys.dm_tran_active_transactions висит какая то транзакция, то в sys.dm_tran_session_transactions
пусто, и джоин по transaction_id возвращает пустоту.
...
Рейтинг: 0 / 0
23.09.2019, 10:13
    #39865437
TaPaK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
MAULER,

dm_tran_database_transactions
...
Рейтинг: 0 / 0
23.09.2019, 10:20
    #39865440
MAULER
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как по transaction_id получить имя_базы или id_базы?
TaPaKMAULER,

dm_tran_database_transactions
О! Благодарю! То что нужно!
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как по transaction_id получить имя_базы или id_базы? / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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