powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
11 сообщений из 11, страница 1 из 1
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32653612
debor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
00:00000:00001:2004/08/17 18:50:22.84 server Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents. If you ran out of space in syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase size of the segment.
00:00000:00001:2004/08/17 18:50:22.84 server Error: 1105, Severity: 17, State: 4
00:00000:00001:2004/08/17 18:50:22.84 server Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents. If you ran out of space in syslogs, dump the transaction log. Otherwise, use ALTER DATABASE or sp_extendsegment to increase size of the segment.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32653626
Компостеров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поставь sp_tresholdaction. ( Прочитать можно в System Administrator )
Ну а сейчас сделай

dump tran master with no_log
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32653643
debor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
выкрутился из централа добавил немного места в лог вроде прошло.
про Поставь sp_tresholdaction почитаю.
про dump tran master with no_log примерно так и думал правда на днях не получилось.Интересная система работы с логами в Sybase.
возник новый вопрос.
делал так называемую конвертацию(конвертация базы на новую версия приложения) естественно есть длинные транзакции.Кроче он не шла в разумные сроки посоветовали поставить на базу опцию Abort transaction on full log кажется база упала сейчас не могу посмотреть.Я неспециалист Sybase но подозрение название говорит само за себя.
В итоге когда я опять понял что в разумное время это не закончит прегрузил сервер .
База упала на все говорит что требуется востоновление,приче у баз у которых id -к
меньше оной от рекрверились на этой застряло и базы с id- ком поле оной тоже не отрековерилсь.
Сильно времени нет но из того что прочел понял есть два пути отодвинуть эту базу на болле старший id-к что бы отстальные отресоверилсь (правда что не получилось) и рекаверить эту базу как незнаю.
Может all подсказать что нибудь на эту тему?
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32654776
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если база не восстанавливается, то все, ее надо восстанавливать из доступных источников (пересоздавать , то есть).

Есть конечно возможность получить доступ к этой базе, но только на чтение, и то еще неизвестно, что то, что там будет прочитано, будет правильным.
Поскольку ты не продвинутый пользователь ASE, описывать эту процедуру не буду, она далеко не тривиальна.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32655648
Comandor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
debor
делал так называемую конвертацию(конвертация базы на новую версия приложения) естественно есть длинные транзакции.Кроче он не шла в разумные сроки посоветовали ....

Еще вариант ... :-)
Что бы не переполнять логи и конвертацию делать быстрее можно попробовать конвертировать данные через временные таблицы. Конечно, если таблицы с тригерами и внешними ключами, то задача может усложниться и прийдется их удалять и пересоздавать после конвертации. Но игра может стоить свечь, временные таблицы работают на апдейт намного быстрее.
В двух словах, алгоритм такой:

1. select * into #t from t

2. update #t ... -- твоя конвертация

3. truncate table t

4. insert t select * from #t

PS. Да и по поводу логов и размеров базы, сейчас не могу припомнить детали, но размерами tempdb можно было играться, в отличии от постоянной базы на которой возможно только увеличение.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32655969
debor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А как отдвинуть упавшую базу на айдишник постарше ,что бы при перегрузке
отрековерились остальные бвзы ,вроде нашел есть процедура sp_dbrecovery_order
но как ей пользоваться не в курсах.

Есть конечно возможность получить доступ к этой базе, но только на чтение, и то еще неизвестно, что то, что там будет прочитано, будет правильным.
Поскольку ты не продвинутый пользователь ASE, описывать эту процедуру не буду, она далеко не тривиальна.
Идею понял я так делал только на другой базе,основное чтобы DML небыло.

Что бы не переполнять логи и конвертацию делать быстрее можно попробовать конвертировать данные через временные таблицы
Временыю табл через логи не идут?


Сильно времени нет но из того что прочел понял есть два пути отодвинуть эту базу на болле старший id-к что бы отстальные отресоверилсь (правда что не получилось) и рекаверить эту базу как незнаю.
Может all подсказать что нибудь на эту тему?
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32655982
Компостеров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй сделать так:

1) Поставь опцию запуска для ASE -T 3608 ( при старте сервера рековерить только БД master)
2) Поправь в конфигурационом файле сервера опцию allow updates to system tables = 1
3) Стартуй сервер
4) update sysdatabases set status = 0 where dbid = <твой Id>
checkpoint
shutdown
5) Перестартуй сервер

А вдруг что получиться ?
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32656455
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
debor
Временыю табл через логи не идут?

Идут. Только через свои логи, tempdb. И еще - там говорили в треде, что tempdb якобы можно и урезать - неправда, tempdb - такая же база, как и остальные, с ней можно делать все то же самое, что и с другими базами, но не больше.

debor
Сильно времени нет но из того что прочел понял есть два пути отодвинуть эту базу на болле старший id-к что бы отстальные отресоверилсь (правда что не получилось) и рекаверить эту базу как незнаю.
Может all подсказать что нибудь на эту тему?


Да нечего здесь подсказывать. Если база не-recover-иться, то ей одна дорога - в могилу. Максимум что можно сделать, это прочитать из нее структуру и данные. Как - если ОЧЕНЬ надо - можно рассказать. Собственно, Cmmandor уже почти все и расписал, только вот насчет пергрузки сервера кажется приврал - грузить ничего не надо, (и status = 0 я бы поостерегся писать ), как только бит DB ONLINE поставил - сразу же надо прочитать данные и структуру а потом - DBCC DBRECOVER(DROPDB).
И пусть земля ей будет пухом.

Да, кстати, кажется эта процедура даже в документации расписана.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32656489
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, еще.
Я как-то вообще не понял немного постановку вопроса насчет
"Как при upgrade-е вашего приложения не переполнять логи".
Это не зависит от того, что ты делаешь в базе - upgrade-ишь ее, или просто работаешь, дело в том, что транзакции у тебя при этом большие слишком.
С этим и надо бороться.

Делать вставки /(изменения) данных порциями, например, с помощью SET ROWCOUNT

Использовать для заливки/переливки данных утилиту BCP в БЫСТРОМ(!!!) режиме.

А если никак - расширять лог, или делать его truncate on checkpoint, или
руками периодически в процессе.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32656898
Comandor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZiv debor
Временыю табл через логи не идут?

Идут. Только через свои логи, tempdb. И еще - там говорили в треде, что tempdb якобы можно и урезать - неправда, tempdb - такая же база, как и остальные, с ней можно делать все то же самое, что и с другими базами, но не больше.

Администрирование не моя область, поэтому, не судите строго, выскажу идею не вдаваясь в детали:
Размер tempdb уменьшался удалением записей из какой то системной таблицы. Затем, сервер перезапускался и все было как и прежде.
...
Рейтинг: 0 / 0
как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
    #32854696
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Размер tempdb уменьшался удалением записей из какой то системной >таблицы. Затем, сервер перезапускался и все было как и прежде.
это можно сделать удалением строк из sysusages, но при условии что удаляться будут ПОСЛЕДНИЕ строки, описывающие размещение темпдб...
и сразу перестартовать сервер, чтобы темпдб пересоздалась...
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / как с этим бороться .Can't allocate space for object 'syslogs' in database 'master' because 'logsegment' segment is full/has no free extents.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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