AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: База знаний и проекты
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.09.2008, 10:07   #1  
Weez is offline
Weez
Участник
Axapta Retail User
 
250 / 89 (3) ++++
Регистрация: 18.01.2006
Адрес: Moscow city
Угу, помогло
__________________
Существует 10 типов людей: одни понимают двоичную систему, другие - нет.
Старый 17.09.2008, 18:39   #2  
Sergey Petrov is offline
Sergey Petrov
Участник
 
80 / 19 (1) ++
Регистрация: 03.04.2007
Адрес: Saint-Petersburg, Russia
Всё чудесно, но одно большое НО - где бы найти информацию по аналогу комбинации
FROM master.dbo.dm_tran_locks as a
JOIN master.dbo.partitions as b
в SQL Server 2000? Что-то я нашёл про табличку syslockinfo, но там есть поле такое rsc_objid, по которому никак не получается у меня получить имя объекта (в предложенном решении эта инфориация как раз и получается за счёт связки с partitions).
Без этой части совсем не интересно получается (для меня, с моим старичком 2000-м).
Старый 18.09.2008, 09:47   #3  
DocSerzh is offline
DocSerzh
Участник
 
51 / 22 (0) +++
Регистрация: 28.06.2004
Цитата:
Сообщение от Sergey Petrov Посмотреть сообщение
Всё чудесно, но одно большое НО - где бы найти информацию по аналогу комбинации
FROM master.dbo.dm_tran_locks as a
JOIN master.dbo.partitions as b
в SQL Server 2000? Что-то я нашёл про табличку syslockinfo, но там есть поле такое rsc_objid, по которому никак не получается у меня получить имя объекта (в предложенном решении эта инфориация как раз и получается за счёт связки с partitions).
Без этой части совсем не интересно получается (для меня, с моим старичком 2000-м).
Пример здесь посмотрите

Маленькая тулза, может кто писал...

К сожалению, сейчас проверить не могу...
Старый 17.03.2010, 12:39   #4  
CDR is offline
CDR
MCTS
MCBMSS
 
236 / 175 (6) ++++++
Регистрация: 27.11.2003
Цитата:
Сообщение от Sergey Petrov Посмотреть сообщение
Всё чудесно, но одно большое НО - где бы найти информацию по аналогу комбинации
FROM master.dbo.dm_tran_locks as a
JOIN master.dbo.partitions as b
в SQL Server 2000? Что-то я нашёл про табличку syslockinfo, но там есть поле такое rsc_objid, по которому никак не получается у меня получить имя объекта (в предложенном решении эта инфориация как раз и получается за счёт связки с partitions).
Без этой части совсем не интересно получается (для меня, с моим старичком 2000-м).
Спустя почти два года на клиенте пришлось дорабатывать свою же форму для MSSQL2000. Соответственно всем ветеранам с MSSQL 2000 посвящается :
X++:
    select    a.req_spid     As SPID,
        a.rsc_objid     As ObjId,
        b.name         As ObjName,
        substring (v.name, 1, 4) As Type,
        substring (u.name, 1, 8) As Mode,
        substring (x.name, 1, 5) As Status
    from
        master.dbo.spt_values v,
        master.dbo.spt_values x,
        master.dbo.spt_values u,
        master.dbo.syslockinfo a,
        <DBNAME>.dbo.sysobjects b
    where
        a.req_spid = <SPID>
        and a.rsc_objid = b.id
        and a.rsc_type = v.number
        and v.type = 'LR'
        and a.req_status = x.number
        and x.type = 'LS'
        and a.req_mode + 1 = u.number
        and u.type = 'L'
Для корректной работы запроса вместо <DBNAME> нужно подставить имя Аксаптовой базы. Вместо <SPID> нужный индентификатор процесса.
__________________
Dynamics AX Experience
За это сообщение автора поблагодарили: Logger (3).
Старый 17.03.2010, 12:46   #5  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Для быстрого поиска виновника блокировок (когда они раньше у нас были) для MS SQL Server, использую следующий запрос.
Он отбражает только виновника, который является корнем всех остальных блокировок.

PHP код:
use master
go
select 
from sysProcesses
where spid in
(select blocked from sysProcesses where blocked <> and blocked <> spid
and 
spid in (select spid from sysProcesses where blocked or blocked spid)
order by spid 
Старый 17.03.2010, 12:56   #6  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,983 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Цитата:
Сообщение от Ace of Database Посмотреть сообщение
Для быстрого поиска виновника блокировок (когда они раньше у нас были) для MS SQL Server, использую следующий запрос.
Он отбражает только виновника, который является корнем всех остальных блокировок.

PHP код:
use master
go
select 
from sysProcesses
where spid in
(select blocked from sysProcesses where blocked <> and blocked <> spid
and 
spid in (select spid from sysProcesses where blocked or blocked spid)
order by spid 
Не разбирал детально суть запроса, но мне кажется он не поймает случай дедлоков, когда сессии блокируют друг друга.
Старый 17.03.2010, 12:58   #7  
Ace of Database is offline
Ace of Database
Участник
Аватар для Ace of Database
 
877 / 649 (23) +++++++
Регистрация: 14.10.2004
Эх! опять зря написал
Старый 17.01.2013, 12:18   #8  
Player1 is offline
Player1
Участник
Самостоятельные клиенты AX
 
306 / 137 (5) +++++
Регистрация: 21.04.2008
:)
Для 4ки бы кто запилил =)
Теги
download, sql, sql 2005, sql 2008, sql server, администрирование, блокировки, законченный пример, инструменты, разработка

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
DAX 2009 SP1 + MS SQL Server 2008 xshaman DAX: Администрирование 7 10.12.2008 12:26
msdynamicsax: DAX 2009 and MS SQL 2008 Blog bot DAX Blogs 0 09.08.2008 14:05
Неизвестный сбой!!! Dynamics AX 4.0 SP2 with MS SQL 2005 MarunYA DAX: Администрирование 6 06.12.2007 12:16
обеспечение лучшей производительности ms sql SHiSHok DAX: Администрирование 0 08.12.2005 11:12
MS SQL-server 2000 and Navision Yoil DAX: Администрирование 21 20.12.2002 17:37

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 19:45.