powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / sybase 12.5.3 как восстановить базу ?
22 сообщений из 22, страница 1 из 1
sybase 12.5.3 как восстановить базу ?
    #35439009
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Народ need help !

Опишу все по порядку:
При теститовании ПО программа клиент вылетела, пользователь на базе остался в состоянии ROLLBACK, руками не удалялся, решили перегрузить сервак, перегрузили и получали вот такую бяку:

00:00000:00001:2008/07/17 15:18:54.33 server Undo pass for database 'OD272': 8633654 records done (84%); 1523598 records left.
00:00000:00001:2008/07/17 15:19:01.81 server Undo pass for database 'OD272': 9141516 records done (89%); 1015736 records left.
00:00000:00001:2008/07/17 15:19:04.78 server Error: 1105, Severity: 17, State: 3
00:00000:00001:2008/07/17 15:19:04.78 server Can't allocate space for object 'syslogs' in database 'OD272' 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 to increase the size of the segment.
00:00000:00001:2008/07/17 15:19:04.78 server Error: 3475, Severity: 21, State: 7
00:00000:00001:2008/07/17 15:19:04.78 server There is no space available in SYSLOGS to log a record for which space has been reserved. This process will retry at intervals of one minute.

при этом все пользовательские базы не сервере в востоянии offline, в online не переводятся, почему понять не могу, ладно одна база ляснулась, а остальный то чего?

на одном из девайсов базы OD272 еще есть гиг нераспределенного места
при попытке сделать alter database OD272 log on OD272_D1= 1000
получаем :Extending database by 512000 pages (1000.0 megabytes) on disk OD272_D1
Server Message: Number 921, Severity 14
Server 'ST', Line 1:
Database 'OD272' has not been recovered yet - please wait and try again.

тоже самое - Database 'OD272' has not been recovered yet - please wait and try again.
при попытках сделать dump, dump tran, online

как водится дампов нет :-(
как поднять сервак ?
p.s. если нужны результаты каких-нить селектов, еще какая-нить более подробная инфа, пишите постараюсь оперативно ответить.
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439044
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321Народ need help !

Опишу все по порядку:
При теститовании ПО программа клиент вылетела, пользователь на базе остался в состоянии ROLLBACK, руками не удалялся, решили перегрузить сервак, перегрузили и получали вот такую бяку:

00:00000:00001:2008/07/17 15:18:54.33 server Undo pass for database 'OD272': 8633654 records done (84%); 1523598 records left.
00:00000:00001:2008/07/17 15:19:01.81 server Undo pass for database 'OD272': 9141516 records done (89%); 1015736 records left.
00:00000:00001:2008/07/17 15:19:04.78 server Error: 1105, Severity: 17, State: 3
00:00000:00001:2008/07/17 15:19:04.78 server Can't allocate space for object 'syslogs' in database 'OD272' 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 to increase the size of the segment.
00:00000:00001:2008/07/17 15:19:04.78 server Error: 3475, Severity: 21, State: 7
00:00000:00001:2008/07/17 15:19:04.78 server There is no space available in SYSLOGS to log a record for which space has been reserved. This process will retry at intervals of one minute.

при этом все пользовательские базы не сервере в востоянии offline, в online не переводятся, почему понять не могу, ладно одна база ляснулась, а остальный то чего?

на одном из девайсов базы OD272 еще есть гиг нераспределенного места
при попытке сделать alter database OD272 log on OD272_D1= 1000
получаем :Extending database by 512000 pages (1000.0 megabytes) on disk OD272_D1
Server Message: Number 921, Severity 14
Server 'ST', Line 1:
Database 'OD272' has not been recovered yet - please wait and try again.

тоже самое - Database 'OD272' has not been recovered yet - please wait and try again.
при попытках сделать dump, dump tran, online

как водится дампов нет :-(
как поднять сервак ?
p.s. если нужны результаты каких-нить селектов, еще какая-нить более подробная инфа, пишите постараюсь оперативно ответить.
с базой у тебя скорее всего все в порядке.... у тебя просто лог переполнен....
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439056
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
с базой у тебя скорее всего все в порядке.... у тебя просто лог переполнен....
вот как его в таком сосоянии базы увеличить ?
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439065
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
или очистить
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439085
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321или очиститьа поискать... :) стук
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439232
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kuh sss321или очиститьа поискать... :) стук
я такой читал тока на английском, там в конце написана что если не получилось, то вы конкретно попали :-), вот-с пробую найти менее деструктивное решение :-)
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439258
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321 kuh sss321или очиститьа поискать... :) стук
я такой читал тока на английском, там в конце написана что если не получилось, то вы конкретно попали :-), вот-с пробую найти менее деструктивное решение :-)
а что не получилось.... ??
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439298
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kuh sss321 kuh sss321или очиститьа поискать... :) стук
я такой читал тока на английском, там в конце написана что если не получилось, то вы конкретно попали :-), вот-с пробую найти менее деструктивное решение :-)
а что не получилось.... ??
еще не пробовал, страшно :-(
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439315
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ты попробуй... на самом деле ничего страшного... :)
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439331
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
начал пробовать....
на
select status where name='OD272'
выдается
Invalid column name 'name'.
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439342
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
наверно там в скрипте ошибка, вот так прокатывает

select status from sysdatabases where name= 'OD272'

оно ?
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439382
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321наверно там в скрипте ошибка, вот так прокатывает

select status from sysdatabases where name= 'OD272'

оно ?
в смысле ошибка.... <Проблемная БД> естественно нужно заменить на имя своей бд...
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439399
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kuh sss321наверно там в скрипте ошибка, вот так прокатывает

select status from sysdatabases where name= 'OD272'

оно ?
в смысле ошибка.... <Проблемная БД> естественно нужно заменить на имя своей бд...

ну на странице с описанием написан не полностью запрос там:

select status where name= <Проблемная БД>
Запоминаем значение status для <Проблемная БД>


с селектом разобрались.

пытаюсь выполнить update:
update sysdatabases set status = -32768 where name='OD272'
вот что отвечат:
Ad-hoc updates to system catalogs not enabled. A user with System Security Officer (SSO) role must reconfigure system to allow this.

чего подкрутить надо ?
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439422
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
выполни
Код: plaintext
sp_configure 'allow updates to system tables', 1 
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439536
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kuhвыполни
Код: plaintext
sp_configure 'allow updates to system tables', 1 

ok, поставил, выполнил UPdate , проверил селектом, статус стал -32768 вместо 68

загасил сервак shutdown with nowait, стартанул без T3607, все как и было раньше, и самое интересное, смотрю селектом статус, он равен 68 - старый, сервак получается сам его поменял на старый когда я его без T3607 запустил.
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439775
kuh
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а dump tran запускал...??
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35439968
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kuhа dump tran запускал...??
да, безрезультатно.


Все уже разобрался !!!!
все восстановлено, спасибо за помощь!

в том описании есть одна мелкая ошибка

когда запускаешь

update sysdatabases set status = -32768 where name= <Проблемная БД>
нужно открывать транзакцию и потом ее закрывать

правильный код выглядит так:

автор begin transaction
update sysdatabases set status = -32768 where name= <Проблемная БД>
commit transaction

и точно также когда возвращаешь старый статус
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35440265
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321
в том описании есть одна мелкая ошибка ... нужно открывать транзакцию и потом ее закрывать

ошибки нет, не нужно явно писать бегин тран...
но shutdown with nowsit не надо делать без нужды, в такой ситуации сервер и так ляжет нормально
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35442684
moris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
0rc sss321
в том описании есть одна мелкая ошибка ... нужно открывать транзакцию и потом ее закрывать

ошибки нет, не нужно явно писать бегин тран...
но shutdown with nowsit не надо делать без нужды, в такой ситуации сервер и так ляжет нормально

Shutdown with nowait в случае описанном выше - использовать надо обязательно.
Т.к. флаги 3607 и 3608 производят доступ к НЕВОСТАНОВЛЕННЫМ БД (т.е. для БД не были совершенны операции recovery)

3607 - Starts SQL Server without recovering any databases
3608 -Starts SQL Server, recovering master only

Если вы на невостановленной БД сделаете нормальный shutdown, то shutdown проставит checkpoint и как следствие - часть невосстановленного лога никогда не сможет быть проигранна.

Инструкция которую я давал, относилась к случаю переполнению log сегмента БД master. Для случая с sss321 лучше было использовать конечно флаг 3608

За запрос select status where name='OD272' - приношу извинения (таблицу sysdatabases пропустил)
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35448996
sss321
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Без транзакции update sysdatabases set status = -32768 where name='OD272' выполнялся нормально, селектом проверял status=-32768, все ок. Но после shutdown with nowait, даже если запустить сервер опять с флагом T3607 и выполнить select status, он возвращался на старый 68.
С транзакцией все получилось.

Да, еще один момент, возможно кому-то будет полезен. Если на сервере крутится несколько баз, и критичнее быстро запустить в работу все кроме упавшей, то можно просто загасить сервер, и куда-нить снести девайсы упавшей базы. После запуска сервера, все остальные базы будут в online. Думаю подойдет для случая "счас пусть поработают, а вечером бум разбираться"
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35481812
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to moris :
Adaptive Server Enterprise/12.5.3/EBF 13211 ESD#6/P/x86_64/Enterprise Linux/ase1253/1945/64-bit/OPT/Thu Jan 19 23:53:07 2006

-T3607

1> update sysdatabases set status=-32768 where name='master'
2> go

Msg 1105, Level 17, State 3:
Line 1:
Can't allocate space for object 'syslogs' in database 'master' because
...
Рейтинг: 0 / 0
sybase 12.5.3 как восстановить базу ?
    #35481815
0rc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sss321Да, еще один момент, возможно кому-то будет полезен. Если на сервере крутится несколько баз, и критичнее быстро запустить в работу все кроме упавшей, то можно просто загасить сервер, и куда-нить снести девайсы упавшей базы.
несколько десятков рав-девайсов :) по 32 гига :) проще уж статус "ненужным" изменить
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / sybase 12.5.3 как восстановить базу ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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