Добавлено: 11 янв 2007, 17:50
А можно както руками запустить перенастройку индексов?WiRuc писал(а):Предлагаю очистить журнал и настроить в плане обслуживания перестройку индексов.
И возможно ли ее делать при работающих пользователях?
Обсуждение различных вопросов, связанных с сопровождением, администрированием и программированием
https://ns1.tyumbit.ru/
А можно както руками запустить перенастройку индексов?WiRuc писал(а):Предлагаю очистить журнал и настроить в плане обслуживания перестройку индексов.
Код: Выделить всё
DBCC SHRINKDATABASE ('', 0, NOTRUNCATE)
go
CHECKPOINT
go
EXEC dbo.sp_MSforeachtable 'DBCC DBREINDEX (''?'') WITH NO_INFOMSGS; UPDATE STATISTICS ? WITH FULLSCAN'
go
CHECKPOINT
go
DBCC SHRINKDATABASE ('', 0, NOTRUNCATE)
go
DBCC UPDATEUSAGE (0) WITH COUNT_ROWS,NO_INFOMSGS
go
CHECKPOINT
go
здесь что то менять нужно? что означает "?"
EXEC dbo.sp_MSforeachtable 'DBCC DBREINDEX (''?'') WITH NO_INFOMSGS; UPDATE STATISTICS ? WITH FULLSCAN'
go
Ничего менять не нужно. В QA выбираете ту базу, которую хотите обработать и запускаете скрипт.здесь что то менять нужно? что означает "?"
Если делать так, то это аналогично сжатию журнала из суппорта, тормозит сильно.Стирите таблицу X$JOURNAL
Скриптом В базе!
"Пример Скрипта"
DELETE FROM [databasename].[dbo].[X$JOURNAL]
Код: Выделить всё
exec dbo.sp_execresultset N'select ''truncate table ''+name from sysobjects where type=''U'' and name like ''J$%'''
truncate table x$journal
go
checkpoint
go
Настройте план обслуживания, это уже раньше говорилось.evchic писал(а):А где находится "журнал транзакций"? как его посмотреть?
Можно ли его урезать?
Или допустим выкинуть из него древние транзакции?
После выполнения скрипта БД выросла еще!!!WiRuc писал(а):Запускать при работающих пользователях можно, но крайне нежелательно, т.к. возможны блокировки, тормоза и т.д. Лучше запускать на ночь.Код: Выделить всё
DBCC SHRINKDATABASE ('', 0, NOTRUNCATE) go CHECKPOINT go EXEC dbo.sp_MSforeachtable 'DBCC DBREINDEX (''?'') WITH NO_INFOMSGS; UPDATE STATISTICS ? WITH FULLSCAN' go CHECKPOINT go DBCC SHRINKDATABASE ('', 0, NOTRUNCATE) go DBCC UPDATEUSAGE (0) WITH COUNT_ROWS,NO_INFOMSGS go CHECKPOINT go
Код: Выделить всё
DBCC UPDATEUSAGE (0)
go
exec sp_spaceused
go