#0
by PR
Порядка 20 пользователей, конфа на базе типовой бухгалтерии, постоянное ожидание захвата таблиц. Требуется понять, что так мордует базу, то есть что и на сколько времени и какие таблицы захватывает. То есть примерно список записей типа: Таблица такая-то была захвачена с такого-то по такое-то время таким-то объектом с такого-то компьютера.
#1
by vde69
совсем недавно давал крипт именно на эту тему, правда там не конкретно какие таблици а причины длительности блокировок!!! у нас после тестированич админы уменьшели скорость проведения документов почти в 4 раза (правда чего делали - не знаю) вот пользуйся: создаешь ХП в мастес После создания вызываешь EXEC track_waitstats 300, 1 300 - минуты скока мерить CREATE proc get_waitstats AS SET nocount ON DECLARE @now datetime,@totalwait numeric(20,1) ,@endtime datetime,@begintime datetime ,@hr int,@min int,@sec int SELECT @now=max(now),@begintime=min(now),@endtime=max(now) FROM waitstats WHERE [wait type] = 'Total' -- Subtract waitfor, sleep, and resource_queue from total. SELECT @totalwait = sum([wait time]) + 1 FROM waitstats WHERE [wait type] NOT IN ('WAITFOR','SLEEP','RESOURCE_QUEUE', 'Total', DELETE waitstats WHERE [wait type] = '***total***' AND now = @now INSERT INTO waitstats SELECT '***total***',0,@totalwait,@totalwait,@now SELECT [wait type],[wait time],percentage=cast (100*[wait time]/@totalwait FROM waitstats WHERE [wait type] NOT IN ('WAITFOR','SLEEP','RESOURCE_QUEUE','Total') AND now = @now ORDER BY percentage desc GO CREATE proc track_waitstats (@num_samples int=10,@delaynum int=1,@delaytype nvarchar='minutes') AS SET nocount ON IF NOT EXISTS (SELECT 1 FROM sysobjects WHERE name = 'waitstats') CREATE table waitstats ([wait type] varchar, [signal wait time] numeric(20,1), now datetime default getdate) ELSE truncate table waitstats dbcc sqlperf (waitstats,clear) -- Clear out waitstats. DECLARE @i int,@delay varchar,@dt varchar,@now datetime, @totalwait numeric(20,1),@endtime datetime,@begintime datetime,@hr int, @min int,@sec int END IF @dt NOT IN ('s','m') BEGIN PRINT 'please supply delay type e.g. seconds or minutes' RETURN END IF @dt = 's' IF @hr > 23 or @min > 59 or @sec > 59 BEGIN SELECT 'hh:mm:ss delay time cannot > 23:59:59' SELECT 'delay interval and type: ' + convert (varchar,@delaynum) + ',' + RETURN BEGIN INSERT INTO waitstats ([wait type], requests, [wait time],[signal wait time]) GO SET QUOTED_IDENTIFIER OFF GO SET ANSI_NULLS ON GO
#2
by PR
Спасибо. Несколько вопросов :)) Что есть "причины длительности блокировок"? Пример причины можно? :)) Что есть "ХП", хранимая процедура? Что это такое, просто временный запрос, который я могу выполнить? Что есть "мастес", таблица "Мастер"? Ну, как вызвать "EXEC track_waitstats 300, 1" я думаю сам разберусь :)) И главный вопрос, как результат сохранить в таблицу Excel? :))
#3
by vde69
1. - например - "ожидание клиента для получения данных", то есть SQL все сделал и ждет когда клиент получит данные и закроет транкзацию... пока клиент это не сделает на SQL сервере висят блокировки 3. это системная база SQL - называеться master, хранимку создаешь вызывая текст начиная со строки CREATE proc get_waitstats и дальше весь текст целиком, выполнить нужно для базы master 4. ... 5. результат скопируешь и вставишь куда хочешь
#4
by Ковычки
я нафик вырубил блокировки и не парюсь уже 3 года, почти стокаже скока адинесю правдо в базе бордак )) но это другая песня, не из-за совместного проведения недостачи )))
#5
by vde69
LOL кроме того интересно как ты это сделал??? неужели сгенерированые хранимки правил? ИХМО - не советую так поступать никому
#6
by Ковычки
да при начале работы системы, но только избранным... ну и ни советуй, а оно работает, если копать глубже, то свои блокировки в проведении накропать и все... (мене этого не надо было, обошелся некоторыми проверками)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Ошибка захвата таблиц 1SJOURN ..... :0(
- 1cv8 SQL: Имя SQL сервера и имя SQL базы данных
- Как таблицу значений значений превратить во временную таблицу SQL ?
- Соответствие таблиц SQL и таблиц объектов метаданных
- как в SQL обратится к таблице сформированной в менеджере временных таблиц?
- Менеджер временных таблиц (Временная таблица уже существует) :-(
- v7: Установить "Время ожидания захвата таблиц Базы данных" для всех пользователей.
- Как в SQL developer связать таблицу с самой таблицей ?
- ЗУП: Как проанализировать почему сотрудник не попадает в вемомость к выплате?
В этой группе 1С
- "Последний" регистратор в срезе последних
- SQL База вылетает с ошибкой при выполнении запрса
- Изменить существующие элементы справочника 1С 8.1
- Проблема с таблицами регистра бухгалтерии Остатки и ОстаткиИОбороты
- v7: Как сделать откат расчетного периода по одному сотруднику ?
- Сортировка табличной части обработки по нажатию на шапку колонки ?
- Как запретить удаление строки табличного поля?
- Обновление регламенированной отчетности!
- Полоса прокрутки в окнах списка
- Внешняя обработка по заполнению табличных частей
- Как распечатать план счетов?
- При проведении документа 1с сворачивается
- Помогите сменить название окна 1С (в левом верхнем углу) !
- Принтер HP 9040 - настройка дуплекса
- Как отправить пачкой на печать
- Как отправить пачку на печать
- Нет КБК нужного вида для счета 401.03.
- Посоветуйте учебники по ТиС 7.7 для чайников-программистов
- При выгрузке из УТ в БП документы создаются непроведёнными. Как исправить?
- запрос к регистру расчета