Администрирование баз данных (Pervasive.SQL, MS SQL, Oracle, утилита Support)
Модераторы: m0p3e , edward_K , Модераторы
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 11 янв 2007, 17:50
WiRuc писал(а): Предлагаю очистить журнал и настроить в плане обслуживания перестройку индексов.
А можно както руками запустить перенастройку индексов?
И возможно ли ее делать при работающих пользователях?
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 11 янв 2007, 18:38
Код: Выделить всё
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
Запускать при работающих пользователях можно, но крайне нежелательно, т.к. возможны блокировки, тормоза и т.д. Лучше запускать на ночь.
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 11 янв 2007, 18:50
EXEC dbo.sp_MSforeachtable 'DBCC DBREINDEX (''?'') WITH NO_INFOMSGS; UPDATE STATISTICS ? WITH FULLSCAN'
go
здесь что то менять нужно? что означает "?"
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 11 янв 2007, 19:02
здесь что то менять нужно? что означает "?"
Ничего менять не нужно. В QA выбираете ту базу, которую хотите обработать и запускаете скрипт.
Гарик
Сообщения: 14 Зарегистрирован: 25 апр 2006, 18:27
Откуда: Россия
Контактная информация:
Сообщение
Гарик » 12 янв 2007, 09:44
Стирите таблицу X$JOURNAL
Скриптом В базе!
"Пример Скрипта"
DELETE FROM [databasename].[dbo].[X$JOURNAL]
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 12 янв 2007, 11:26
Стирите таблицу 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
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 12 янв 2007, 12:25
А где находится "журнал транзакций"? как его посмотреть?
Можно ли его урезать?
Или допустим выкинуть из него древние транзакции?
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 12 янв 2007, 12:40
evchic писал(а): А где находится "журнал транзакций"? как его посмотреть?
Можно ли его урезать?
Или допустим выкинуть из него древние транзакции?
Настройте план обслуживания, это уже раньше говорилось.
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 12 янв 2007, 17:05
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
Запускать при работающих пользователях можно, но крайне нежелательно, т.к. возможны блокировки, тормоза и т.д. Лучше запускать на ночь.
После выполнения скрипта БД выросла еще!!!
Побывал на тестовой она была 24Гб после чего стала 26Гб
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 12 янв 2007, 17:41
Вырос журнал или данные?
Приведите результаты выполнения sp_helpfile
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 12 янв 2007, 18:04
Выросла DATA!
1 STFSQLSystem.dat PRIMARY 223680 KB Unlimited 1024 KB data only
2 STFSQLLog.dat NULL 78848 KB Unlimited 1024 KB log only
3 STFSQLData.dat DATA_SEG 8084928 KB Unlimited 1024 KB data only
4 STFSQLIndex.dat INDEX_SEG 17597120 KB Unlimited 1024 KB data only
5 STFSQLJournal.dat OURNAL_SEG 30720 KB Unlimited 1024 KB data only
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 12 янв 2007, 18:31
А теперь приведите результаты
Код: Выделить всё
DBCC UPDATEUSAGE (0)
go
exec sp_spaceused
go
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 12 янв 2007, 18:44
STFSQL 25406.56Mb 3635,58Mb
22214352 KB 8234848 KB 13894688 KB 84816 KB
WiRuc
Местный житель
Сообщения: 414 Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж
Сообщение
WiRuc » 12 янв 2007, 18:48
А до запуска?
evchic
Местный житель
Сообщения: 216 Зарегистрирован: 25 апр 2006, 12:05
Откуда: г.Ростов-на-Дону
Контактная информация:
Сообщение
evchic » 12 янв 2007, 18:51
до запуска чего?