Реанимация Sybase
На моей практике было несколько случаев "падения" сервера баз данных Sybase при запуске. Отсутствие документации по его администрированию вынуждало искать решения часами. В данной статье описано "универсальное" решение большинства проблем.
В случае если Sybase при загрузке не переводит вашу базу в режим online.
1. Переконфигурируем сервер. Разрешим вносить изменения в параметры баз данных:
-
sp_configure "allow updates", 1
2. Получаем текущий статус Вашей базы (my_hosted_db) и запоминаем его:
-
SELECT STATUS - 320 FROM sysdatabases WHERE dbid = db_id("my_hosed_db")
3. Устанавливаем у Вашей базы (my_hosted_db) статус в -32768 для восстановления:
-
begin transaction
-
UPDATE sysdatabases SET STATUS = -32768 WHERE dbid = db_id("my_hosed_db")
-
commit transaction
4. Перезагружаем сервер:
-
shutdown
-
startserver -f RUN_*
При загрузке сервера он проверит, у каких баз данных установлен статус -32768 и починит их.
5. Возвращаем Вашей базе (my_hosted_db) прежний статус (saved_value), который вы запомнили в п.2:
-
begin transaction
-
UPDATE sysdatabases SET STATUS = saved_value WHERE dbid = db_id("my_hosed_db")
-
commit transaction
6. Переконфигурируем сервер. Запрещаем вносить изменения в параметры баз данных:
-
sp_configure "allow updates", 0
-
reconfigure
7. Перезагружаем сервер:
-
shutdown
-
startserver -f RUN_*
После всех этих манипуляций Ваша база данных должна ожить.
