powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Что делать... ?
17 сообщений из 17, страница 1 из 1
Что делать... ?
    #32943053
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
День добрый,

при старте ASE 12.5.1 в логе вот это вылезло:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
00:00000:00016:2005/03/03 10:24:58.48 server  Redo pass of recovery has processed 8870 committed and 0 aborted transactions.
00:00000:00016:2005/03/03 10:24:58.48 server  Completed REDO pass for database 'dbccdb'.
00:00000:00016:2005/03/03 10:24:58.48 server  Recovery of database 'dbccdb' will undo incomplete nested top actions.
00:00000:00016:2005/03/03 10:24:58.48 server  Started UNDO pass for database 'dbccdb'. The total number of log records to process is 20.
00:00000:00016:2005/03/03 10:24:58.48 server  Roll back transaction '$ins' -- was aborted.
00:00000:00016:2005/03/03 10:24:58.49 server  Error: 1105, Severity: 17, State: 3
00:00000:00016:2005/03/03 10:24:58.49 server  Can't allocate space for object 'syslogs' in database 'dbccdb' 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:00016:2005/03/03 10:24:58.49 server  Error: 21, Severity: 21, State: 1
00:00000:00016:2005/03/03 10:24:58.49 server  WARNING - Fatal Error 3475 occurred at Mar  3 2005 10:24AM.  Please note the error and time, and contact a user with System Administrator (SA) authorization.
00:00000:00016:2005/03/03 10:24:58.49 server  Error: 3475, Severity: 21, State: 7
00:00000:00016:2005/03/03 10:24:58.49 server  There is no space available in SYSLOGS for process 16 to log a record for which space has been reserved. This process will retry at intervals of one minute. The internal error number is -4.

при попытке сделать или 'dump tran' или 'alter database' сервер пишет

Код: plaintext
1.
Database 'dbccdb' has not been recovered yet - please wait and try again.

`востанавливается` уже почаса, dbccdb размером 500 мб

Что делать ???
...
Рейтинг: 0 / 0
Что делать... ?
    #32943081
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, sp_who таки пишет:

0 16 sleeping NULL NULL 0 dbccdb RECOVERY 0
...
Рейтинг: 0 / 0
Что делать... ?
    #32943098
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно сделать так (при условии что нет реп-агента на базе) :
update master..sysdatabases set status=-32768 where dbid=db_id('dbccdb')
передернуть сервер
use dbccdb
dbcc traceon(3604)
dbcc rebuild_log(dbccdb,1,1)
должно отрабатывать долго(от 30 секунд и выше в зависимости от размера)
update master..sysdatabases set status=524 where dbid=db_id('dbccdb')
передернуть сервер
поднимется нормально, с чистім лог-сегментом
...
Рейтинг: 0 / 0
Что делать... ?
    #32943183
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
0rcможно сделать так (при условии что нет реп-агента на базе) :
update master..sysdatabases set status=-32768 where dbid=db_id('dbccdb')
передернуть сервер
use dbccdb
dbcc traceon(3604)
dbcc rebuild_log(dbccdb,1,1)
должно отрабатывать долго(от 30 секунд и выше в зависимости от размера)
update master..sysdatabases set status=524 where dbid=db_id('dbccdb')
передернуть сервер
поднимется нормально, с чистім лог-сегментом

спасибо, помогло.
...
Рейтинг: 0 / 0
Что делать... ?
    #32944104
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
0rc
dbcc traceon(3604)
dbcc rebuild_log(dbccdb,1,1)
должно отрабатывать долго(от 30 секунд и выше в зависимости от размера)
update master..sysdatabases set status=524 where dbid=db_id('dbccdb')
передернуть сервер
поднимется нормально, с чистім лог-сегментом


Делая это, вы рискуете потерять вашу базу.
...
Рейтинг: 0 / 0
Что делать... ?
    #32944129
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZiv 0rc
dbcc traceon(3604)
dbcc rebuild_log(dbccdb,1,1)
должно отрабатывать долго(от 30 секунд и выше в зависимости от размера)
update master..sysdatabases set status=524 where dbid=db_id('dbccdb')
передернуть сервер
поднимется нормально, с чистім лог-сегментом


Делая это, вы рискуете потерять вашу базу.

почему ?
...
Рейтинг: 0 / 0
Что делать... ?
    #32944189
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
...и как тогда правильно делать ?
...
Рейтинг: 0 / 0
Что делать... ?
    #32944241
Litus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Можно дамп снять лога попробовать или лог расширить. Или это невозможно?

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Что делать... ?
    #32944300
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Litus
Можно дамп снять лога попробовать или лог расширить. Или это невозможно?


...ОНО замечено поздно было, вылезло после перезагрузки сервера, и база dbccdb остановилась на recovery...

В общем то способ 0rc'а помог, вопрос только почему так делать не стоит ?
...
Рейтинг: 0 / 0
Что делать... ?
    #32944539
serg08
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
=======================
В общем то способ 0rc'а помог, вопрос только почему так делать не стоит ?
=======================
Я знаю почему нельзя так делать!!!!

Все кто имеет отношение к фирме Sybase делают вид что команд
DBCC ваще нет. Ну разве что dbcc tablealloc!!
А всё остальное само пойдёт.
...
Рейтинг: 0 / 0
Что делать... ?
    #32944592
Litus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Однажды года 2 назад у нас тоже подобное было с логом. По незнанию
перегрузили сервер... Уж не знаю всегда-ли база становится неподъемной
после перезагрузки с забитым логом, но неприятностей была уйма (правда не у
меня)....
Классическую ошибку 1105 я потом вычитал у Хичкока :-)

Вопрос к гуру: После переполнения лога и последующей перезагрузки сервера с
такой базой, она всегда падает подобным образом?
Может быть можно пойти таким путем:
1) поднять сервер без восстановления пользовательских баз
2) добавить новое устройство и расширить лог поврежденной базы на него
3) перегрузить сервер в нормальном режиме



Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Что делать... ?
    #32944661
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
отчасти я согласен с сергом в том плане что этой команды нет в описании ;)
потерять базу при этом можно в ситуации когда имеем отрицательный размер лог-сегмента, и он переполнен...
если лог на отдельном девайсе, не имеет проблем - тогда вряд ли...
это утверждение основано на практическом применении...

хотя честно - не для того случая когда просто лог забился ;) но пояснять как потом убрать "лишний" девайс по-моему более опасная ситуация...
...
Рейтинг: 0 / 0
Что делать... ?
    #32946003
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nik2
Делая это, вы рискуете потерять вашу базу.
почему ?
[/quot]

Потому что если были транзакции после последнего checkpoint, то не все страницы данных могут быть сброшены на диск. Т.е. на диске (откуда поднимается БД) они старые. А новыми они станут после наката лога. Ну а если его обрезать, то все эти изменения потеряются. Соотв. если повезет и БД была в согласованном состоянии на диске в момент опускания (или падения) сервера, то хорошо, а если нет - могут потеряться данные (что еще не очень плохо) или даже, что совсем плохо, нарушится системные данные о связях страниц, строк и т.п.
...
Рейтинг: 0 / 0
Что делать... ?
    #32946184
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слушай, так у тебя это DBCCDB ? Так плюнь ты на нее, создай ее заново и все.
Знаешь как от нее избавляться ?
...
Рейтинг: 0 / 0
Что делать... ?
    #32946209
nik2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MasterZivСлушай, так у тебя это DBCCDB ? Так плюнь ты на нее, создай ее заново и все.
Знаешь как от нее избавляться ?

да плюнуть то плюнул, тоесть я ее:
1 - поднял с чистым лог сегментом сначала,
2 - а потом один фиг собрал заново...

а как правильно без пункта 1 надо было ?
...
Рейтинг: 0 / 0
Что делать... ?
    #32948265
serg08
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Делать видимо следующее:
Не допускать переполнения лога.
Если можно включать "abort tran on log full" то наверное включить.
Можно пороговую процедуру.
Единственно не забывать проверять и лечить Syslogs
Если в централе видим отрицательный лог то фиг с ним.
А вот если helpsegment показывает отрицательный лог , то обязательно
на него dbcc tablealloc(syslogs,full,fix).
B противном случае лог теряеться и про
то что сработает "abort tran on log full" можно забыть.
Наверное можно забыть и про корректную работу порогов.
И далее будет описанное выше.
...
Рейтинг: 0 / 0
Что делать... ?
    #32958387
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DBCC DBREPAIR(dropdb)
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Что делать... ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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