powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Народ, выручайте, база в суспект выпала:(((
8 сообщений из 8, страница 1 из 1
Народ, выручайте, база в суспект выпала:(((
    #33052037
Vadimmm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сайбэйз ASE 12.0
После перезагрузки сервера база выпала в суспект. Как ее попробывать поднять?
В логе пишет вот что:
00:00000:00001:2005/05/06 09:56:29.12 server Database 'xxxxxxx' cannot be opened. An earlier attempt at recovery marked it 'suspect'. Check the SQL Server errorlog for information as to the cause.
00:00000:00001:2005/05/06 09:56:29.29 server Unable to proceed with the recovery of dbid <4> because of previous errors. Continuing with the next database.
00:00000:00001:2005/05/06 09:56:29.29 server Recovery complete.
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052104
Vadimmm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Короче разобрались почему выпала в суспект. Ктото поигрался с правами. Не поднимались девайсы. Теперь девайсы инитятся нормально, но база всеравно в суспекте. Может это просто из-за того что у нее статус такой стоит? Может как то его поменять надо?
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052132
Litus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
там раньше в логе должно быть написано, почему она саспект стала.
Suspect говорит о нарушении целостности базы, надо разбираться серьезно. Что Вы до этого делали?
Чисто физически в базе можно попробовать бит Suspect обнулить. Но это далеко не выход - надо понять почему suspect стала :-(
Если есть здоровая база, то надо взять значения Status и Status2 из нее (таблица sysdatabases), если нет, то попробовать так (чтобы сохранить остальные управляющие биты):
exec sp_configure 'allow updates', 1
go
update sysdatabases
set status=status ^ 256
status2 = status2 ^ 128
where name=<database_name>
go


Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052176
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я думаю, ваши игрища с правами привели к тому, что пользователь, под которым работает ASE не имеет доступа к файлам девайсов. Надо восстановить эти права и все будет хорошо. Не трогайте только статус базы.
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052198
Vadimmm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да понятно что из-за прав она в суспект выпала. С этим разобрались быстро. Дольше разбирались как статус базы сделать онлайн а не суспект.

Вот этот скрипт нас спас:)

USE master
go
sp_configure 'allow updates',1
reconfigure with override
go
update sysdatabases
set
status=524,
status2=1
where name ='XXXXXXX'
go
USE master
go
sp_configure 'allow updates',0
reconfigure with override
go

Всем спасибо:)
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052208
Vadimmm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя скрипт Litus-а более правильный. Жаль что поздно:)
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33052227
Litus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
первоначальные статусы можно потом вернуть штатными средствами.
командой sp_dboption, если не путаю. Главное знать, какие они были.

Posted via ActualForum NNTP Server 1.1
...
Рейтинг: 0 / 0
Народ, выручайте, база в суспект выпала:(((
    #33203240
Stan__2030
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
CREATE PROC sp_resetstatus @dbname varchar(30)AS
DECLARE @msg varchar(80)
IF @@trancount > 0
BEGIN
PRINT "Can't run sp_resetstatus fromwithin a transaction."
RETURN (1)
END
IF suser_id() != 1
BEGIN
SELECT @msg
= "You must be the System Administrator (SA)"
SELECT @msg = @msg + " to execute this procedure."
PRINT @msg
RETURN (1)
END
IF (SELECT COUNT(*) FROM master..sysdatabases
WHERE name = @dbname) != 1
BEGIN
SEL
ECT @msg = "Database '" + @dbname + "' does not exist!"
PRINT @msg
RETURN (1)
END
IF (SELECT COUNT(*) FROM master..sysdatabases
WHERE name = @dbname AND status & 256 = 256) != 1
BEGIN
PRINT "sp_resetstatus may onl
y be run on suspectdatabases."
RETURN (1)
END
BEGIN TRAN
UPDATE master..sysdatabases
SET status = status - 320
WHERE name = @dbname
IF @@error != 0 OR @@rowcount != 1
ROLLBACK TRAN
ELSE
BEGIN

COMMIT TRAN
SELECT @msg = "Database '" + @dbname + "' statusreset!"
PRINT @msg
PRINT " "
PRINT "WARNING: You must reboot Adaptive Server prior to "
PRINT " accessing this database!"

PRINT" "
END

sp_resetstatus <Имя БД которая в суспекте>
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Sybase ASA, ASE, IQ [игнор отключен] [закрыт для гостей] / Народ, выручайте, база в суспект выпала:(((
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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