Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пробблема Buffer IO / 9 сообщений из 9, страница 1 из 1
14.12.2019, 23:11
    #39903073
Максим Александровитч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Добрый день.
Не могу выполнить банальный скрипт по определению фрагментации
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
DECLARE @db_name varchar(50) = N'LEAD5',
                @table_name varchar(250) = N'db_name.dbo.tbl_name'

SELECT  IndStat.database_id,
                IndStat.object_id,
                QUOTENAME(s.name) + '.' + QUOTENAME(o.name) AS [object_name],
                IndStat.index_id,
                QUOTENAME(i.name) AS index_name,
                IndStat.avg_fragmentation_in_percent,
                IndStat.partition_number,
                (SELECT count (*) FROM sys.partitions p
                        WHERE p.object_id = IndStat.object_id AND p.index_id = IndStat.index_id) AS partition_count
FROM sys.dm_db_index_physical_stats
    (DB_ID(@db_name), OBJECT_ID(@table_name), NULL, NULL , 'LIMITED') AS IndStat
        INNER JOIN sys.objects AS o ON (IndStat.object_id = o.object_id)
        INNER JOIN sys.schemas AS s ON s.schema_id = o.schema_id
        INNER JOIN sys.indexes i ON (i.object_id = IndStat.object_id AND i.index_id = IndStat.index_id)
WHERE IndStat.avg_fragmentation_in_percent > 10 AND IndStat.index_id > 0




Запрос просто замирает и все.
По процессам смотрю Wait_Info PAGEIOLATCH_SH
Подскажите,как с этим бороться?
TempDB лежит на 1 диске с рабочими(SAS кажется 10-й рейд)
Осталные системные на диске С,там где система
...
Рейтинг: 0 / 0
15.12.2019, 00:03
    #39903086
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Максим Александровитч
Запрос просто замирает и все.
"Замирает" - это какой статус?
...
Рейтинг: 0 / 0
15.12.2019, 13:42
    #39903160
Максим Александровитч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
alexeyvg
Максим Александровитч
Запрос просто замирает и все.
"Замирает" - это какой статус?


Текущий wait_info PAGEIOLATCH_SH
Запрос же просто постоянно в статусе выполняется..
...
Рейтинг: 0 / 0
16.12.2019, 14:44
    #39903486
архивариус
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Максим Александровитч
Код: sql
1.
2.
DECLARE @db_name varchar(50) = N'LEAD5',
                @table_name varchar(250) = N'db_name.dbo.tbl_name'



возможно поправить 2 строчку надо:
@table_name varchar(250) = N'LEAD5.dbo.tbl_name'
...
Рейтинг: 0 / 0
16.12.2019, 14:54
    #39903500
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Максим Александровитч

По процессам смотрю Wait_Info PAGEIOLATCH_SH
...
TempDB лежит на 1 диске с рабочими(SAS кажется 10-й рейд)

темпдб каким тут местом?
чтобы узнать фрагментацию, надо прочесть таблицу/индекс с диска.
ваши ожидания и показывают, что с диска читает
...
Рейтинг: 0 / 0
16.12.2019, 15:00
    #39903509
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
архивариус
Максим Александровитч
Код: sql
1.
2.
DECLARE @db_name varchar(50) = N'LEAD5',
                @table_name varchar(250) = N'db_name.dbo.tbl_name'



возможно поправить 2 строчку надо:
@table_name varchar(250) = N'LEAD5.dbo.tbl_name'

и что будет, если передавать латиницу не юникодом,
да еще и в неюникодную же переменную?
с диска перестанет начитывать?
...
Рейтинг: 0 / 0
16.12.2019, 15:04
    #39903519
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Yasha123
архивариус
пропущено...

возможно поправить 2 строчку надо:
@table_name varchar(250) = N'LEAD5.dbo.tbl_name'

и что будет, если передавать латиницу не юникодом,
да еще и в неюникодную же переменную?
с диска перестанет начитывать?

извиняюсь.
там написано, что базу надо передать, а не N подставить.
вроде и красным выделено...
...
Рейтинг: 0 / 0
16.12.2019, 15:21
    #39903535
Yasha123
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
не в мастере случаем запускаете?
выполните там же
Код: sql
1.
select OBJECT_ID(@table_name)


если выдает null (в этой базе нет такого объекта), вы же по всем объектам запустили.
это и хотел сказать архивариус ,
а тут я с дурацким комментарием,
который еще и узалить нельзя...
...
Рейтинг: 0 / 0
16.12.2019, 21:49
    #39903737
Максим Александровитч
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Пробблема Buffer IO
Да,норм,спс
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Пробблема Buffer IO / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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