Страница 1 из 1

Сжатие идет больше 8 часов!

Добавлено: 03 мар 2009, 10:46
Гаврилюк Марина
По одной базе сжатие журнала не может пройти за 8 часов. В чем может быть причина? Это мешает работе, т.к. задание в шедулере запускается в 23 часа и утром в 8.30 все еще висит на сжатии. Тормоза страшные....

Добавлено: 03 мар 2009, 10:57
Andrey
А такая процедура как отключить-включить (можно предварительно очистить журнал) не помогает?

Добавлено: 03 мар 2009, 15:43
edward_K
Удаляйте стороними средствами. Если это первасив, то наверно давно пора грохнуть(переместить) файл журнала.

Добавлено: 03 мар 2009, 18:23
Гаврилюк Марина
База Оракловая, работающая, расчет зарплаты, закрытие счетов. пользователей около 400. Журнал за 3 месяца.
Оракловый админ переносил табличные пространства по базе, потом вернул все на место. Неделю уже не проходит сжатие. Чекора не может проверить мемо-поля и журнал
Может есть возможность скриптом сжать журнал. а не средствами Галактики? Если кто пользуется своими средствами для сжатия журнала, помогите пожалуйста...

Добавлено: 03 мар 2009, 18:51
Andrey
если чистить журнал оракловыми средствами, то у вас эти действия нем попадут в галактический журнал и, соответсвенно, не возможен галактический откат этих действий. Через sqlplus удалите строки из таблицы с условием по дате.

Добавлено: 03 мар 2009, 21:27
Начинающий путь
Марина, а зачем вам 3 месяца держать журнал? У нас 32 дня и хватает. Проверьте журнал на последнюю дату. Было в практике на компе выставили типа 2020 года - записи с этой датой попали в журнал и он автоматически не сжимался ночью.

Добавлено: 04 мар 2009, 13:23
Гаврилюк Марина
Начинающий путь

У нас иногда спохватываются и через 90 дней (. Этот срок установлен как возможный по размерам табличного пространства на журнал.

Andrey

В Саппорте не идет удаление. В оракле вижу, что отключается триггер отвечающий за удаление. Удалять через Оракл? а как быть с J$xxxxxx, которые связаны с журналом?

Добавлено: 04 мар 2009, 16:02
oiko
сделайте как я себе скрипт по типу
TRUNCATE TABLE GAL."X$JOURNAL";
TRUNCATE TABLE GAL."J$6";
TRUNCATE TABLE GAL."J$9";
и т.д.
перечень таблиц тоже можно получить скриптом.

Добавлено: 04 мар 2009, 16:10
Polimer
У нас для чистки журнала используется такой запрос:

Код: Выделить всё

DECLARE curTables CURSOR 
FOR
SELECT
  so.Name, 
  src.Name,
  xf.XF$Title
FROM
  SysObjects so
  INNER JOIN X$FILES xf ON xf.XF$Code = CONVERT(INT, SUBSTRING(so.Name, 3, 16))
  INNER JOIN SysObjects src ON src.type='U' AND src.name = 'T$' + xf.XF$Name
WHERE
  so.Type = 'U' AND so.Name LIKE 'J$%'
ORDER BY so.Name

DECLARE @Name VARCHAR(200), @SrcName VARCHAR(200), @Title VARCHAR(200), @SQL VARCHAR(8000)
DECLARE @I INTEGER
SELECT @I = 0

SET NOCOUNT ON
OPEN curTables
FETCH NEXT FROM curTables INTO @Name, @SrcName, @Title
WHILE @@FETCH_STATUS = 0
BEGIN
  SET @SQL = 'TRUNCATE TABLE [' + RTRIM(@Name) + ']'
  PRINT 'Очищаю таблицу ' + @Name + ' (журнал таблицы ' + @SrcName + ' - ' + @Title + ')'
  EXEC(@SQL)  
  SELECT @I = @I + 1
  FETCH NEXT FROM curTables INTO @Name, @SrcName, @Title
END
PRINT 'Всего очищено таблиц: ' + LTRIM(@I)

CLOSE curTables
DEALLOCATE curTables
SET NOCOUNT OFF

Добавлено: 05 мар 2009, 09:36
SergZol
По одной базе сжатие журнала не может пройти за 8 часов. В чем может быть причина? Это мешает работе, т.к. задание в шедулере запускается в 23 часа и утром в 8.30 все еще висит на сжатии. Тормоза страшные....
От имени какого пользователя сжимеется журнал?
нада от имени админа. необходимо проверить роли в базе, возможно нехватает некоторых ролей. типа EXECUTE

Добавлено: 05 мар 2009, 15:33
Гаврилюк Марина
SergZol
От админа.


По ораклу вижу: затыкается на таблице J$15064. По truncate очищаю ее, удаляю из x$journal записи по 15064 , запускаю сжатие - проходит. На следующиейдень висит уже по j$22311. Операцию повторяю. Но боюсь что вообще весь журнал так удалить прийдется ((((((
Как будто ссылки побились все.

Добавлено: 05 мар 2009, 16:41
Начинающий путь
Support->Восстановление БД->Сервис->Проверка журнала
Делали?

Добавлено: 13 мар 2009, 12:29
Гаврилюк Марина
Делали, но не до конца - большой очеь. И сидеть клавишу жать подтверждая удаление некорректной записи напрягает

Добавлено: 13 мар 2009, 14:27
LaaLaa
Клавишу подтверждения можно не держать. :grin: Следующие параметры GALNET.CFG вам помогут:

Код: Выделить всё

[AQA]
  AutoMessageTimeout = 5
  AutoMessageCountDown = on
  AutoMessageLogFile = msg.log
PS: Появились в версии 5.4.

Добавлено: 13 мар 2009, 14:47
Гаврилюк Марина
у нас 7-ка