Исправление поврежденной базы SQL (Suspect Mode)

26.10.09

База данных - Инструменты администратора БД

Что делать, если база данных под MS SQL ушла в Suspect Mode?

В своей работе столкнулся с ситуацией, когда рабочая база данных в конце дня ушла в режим "Suspect Mode". А архив был за много часов до этого. Перевести ее нормальный режим, пока не произведена починка базы, не получалось. DBCC checkdb тоже отказывалась запускаться, т.к. база в этом режиме. Замкнутый круг? Славо богу нашлась приведенная в этом посте статейка.

Для начала необходимо перевести базу данных в режим EMERGENCY:

EXEC sp_resetstatus 'yourDBname';
ALTER DATABASE yourDBname SET EMERGENCY

Потом выполнять тестирование базы:


DBCC checkdb('yourDBname')
ALTER DATABASE yourDBname SET SINGLE_USER WITH ROLLBACK IMMEDIATE
DBCC CheckDB ('yourDBname', REPAIR_ALLOW_DATA_LOSS)
ALTER DATABASE yourDBname SET MULTI_USER

 

 PS: Этот пост можно считать продолжением http://www.infostart.ru/public/59390/

См. также

Ускоренное проведение документов (x4), устранение ошибок 60/62 счетов и зачет авансов (Бухгалтерия 3.0)

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    24439    76    144    

58

Контроль действий пользователей II

Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Контролируйте, кто и что менял при работе в базах 1С: создание, правки, удаление, поиск потерявшихся данных, вычисление злоумышленников. Подсистема содержит 10 точных отчетов, гибкая настройка контроля. Не тормозит работу, не грузит базу 1С. Позволяет контролировать работу пользователей удаленно со смартфона.

14280 руб.

07.07.2023    3521    1    3    

8

SALE! 15%

PowerTools

Инструментарий разработчика Инструменты администратора БД Платформа 1С v8.3 Управляемые формы Конфигурации 1cv8 Россия Платные (руб)

Универсальный инструмент программиста для администрирования конфигураций. Сборник наиболее часто используемых обработок под единым интерфейсом.

3600 3060 руб.

14.01.2013    170271    1051    0    

793

Конфигурация Session Monitor

Мониторинг Инструменты администратора БД Платформа 1С v8.3 Россия Платные (руб)

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    12591    27    0    

41

Сжатие (уменьшение) картинок в базе 1С и приведение их к одинаковой ширине

Инструменты администратора БД Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

Многие сталкиваются с проблемой когда изображения, находящиеся в базе разные по объему и размерам. Менеджеры могут добавить файлы в очень высоком разрешении, объемом свыше 20 Мегабайт. База данных становится слишком большой, выгрузка на сайт идёт медленно и требуется много место на хостинге. Как сжать картинки и уменьшить размер базы 1С? Это можно сделать с помощью данной обработки. Существует возможность выбрать различные варианты для того чтобы уменьшить картинки: в разы, в процентах от первоначального объема, а также сделать картинки одинаковой ширины. В результате размер базы 1С значительно сократится (в зависимости от количества и размера картинок), а изображения станут небольшого объема, равными по ширине, почти без потери качества. Работает на управляемых формах для УТ 11, КА, ERP.

2000 руб.

21.07.2022    8127    5    3    

10

Завершение сеанса неактивных пользователей на сервере

Инструменты администратора БД Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Обработка позволяет отключить сеанс пользователя 1С при его простое (бездействии).

1000 руб.

30.03.2018    17888    5    5    

6

Инструменты для чистки кэша 1С

Инструменты администратора БД Абонемент ($m)

Публикация содержит набор bat файлов, используемых мной для умной чистки кэша 1С. Основой файлов являются PowerShell скрипты, которые используются для автоматизации чистки кэша, например, удаление кэш файлов старше десяти дней.

1 стартмани

05.06.2023    6701    40    Viki_push    21    

155

Утилита для получения информации о базе данных 1С в формате JSON

Инструменты администратора БД Платформа 1С v8.3 Платные (руб)

Без знания паролей пользователей, напрямую из таблиц базы 1С утилита получает разнообразную информацию. Это отличный инструмент для участия в автоматизации, группового обновления баз данных, а также для обеспечения внутренних регламентов безопасности.  Позволяет быстро получить информацию о наличии пароля, списках прав для пользователя, истории запусков базы, а также о сохранении конфигурации базы данных. 

600 руб.

05.04.2023    1515    1    0    

1
Вознаграждение за ответ
Показать полностью
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. Valerich 1633 26.10.09 17:04 Сейчас в теме
Спасибо, полезно.
2. Serjik78 1288 26.10.09 17:52 Сейчас в теме
Плюсег, сам не сталкивался, но а вдруг? ;)
3. ninch 51 28.10.09 05:36 Сейчас в теме
Сталкивался. Есть такая неприятная весч. Теперь описание можно будет найти тут. Спасибо
4. WideSmile 28.10.09 12:27 Сейчас в теме
Столкнулся с такой ситуацией - после непредвиденного отключения электричества старые УПСники не успели корректно вырубить серваки.
Воспользовался похожим алгоритмом, база восстановилась, сверил все остатки - всё в порядке. Однако, до тех пор пока не выполнил тестирование и исправление средствами 1С, а также полную реиндексацию - преследовали мелкие глюки (проваливались джобы SQL, пользователей выбивало без сообщения об ошибке, частые зависания сеансов). Сейчас всё в порядке, уже месяца три прошло - всё работает адекватно.
cleaner_it; MsDjuice; +2 Ответить
5. WideSmile 28.10.09 12:28 Сейчас в теме
з.ы. проверяйте лучше УПСники - нервов уйдёт меньше ;-)))
6. Valerich 1633 26.11.09 06:59 Сейчас в теме
упала база msdb - перешла в этот веселый режим
бэкапы ее есть, но как из них восстановиться непонятно - suspend mode
при попытке перевести ее в режим EMERGENCY пишет
Msg 5058, Level 16, State 6, Line 2
Option 'EMERGENCY' cannot be set in database 'msdb'.

И как с этим бороться???
7. anderson 229 26.11.09 08:01 Сейчас в теме
(6) попробуйте запустить сервер в монопольном режиме sqlservr.exe -m -c. А дальше с помощью SQLCMD.

ЗЫ: сам не пробовал, рассказывали на курсах для восстановления базы master, может и для msdb подойдет
8. anderson 229 26.11.09 08:04 Сейчас в теме
13. ssega 06.08.14 09:23 Сейчас в теме
(6) Valerich,

тоже было такое на SQL2000SP4 помогла следующая последовательность команд:

выключем СКЛ, удаляем лог, включеам СКЛ, затем:

1.
use master
go
sp_configure 'allow updates', 1
reconfigure with override
go


2.
upd ate sysdatabases set status=32768 where name = 'msdb'
go


3.
DBCC REBUILD_LOG('msdb', 'C:\Program Files (x86)\Microsoft SQL Server\MSSQL\Data\msdb.ldf')
go


4.
use msdb
go
alt er database msdb se t SINGLE_USER with rollback immediate
go
use msdb
go
DBCC CHECKDB('msdb', REPAIR_REBUILD)
go


5.
use master
go
sp_dboption 'msdb', 'single user', 'false'
go


6.
use master
go
sp_configure 'allow updates', 0
reconfigure with override
go
9. 18.10.11 20:07 Сейчас в теме
Начал с DBCC. Помогло реально. Большое спасибо. А то не знал, с какой стороны подступиться, сплошной отлуп от SQL сервера.

База перешла в режим после отключения питания. Виноват был не УПС, а Пилот, как оказалось.
10. Geqsogen 25.10.11 20:42 Сейчас в теме
Помогло после крушения рэйда и когда поздно заметили пропажу бэкапов. Но сначала надо было собрать еще инфы, чтобы восстановить базу на MSSQL 2005 SP4, которая помечена Suspend.
Пишу коротко по делу - только в такой последовательности удалось все сделать:

Use master
go
sp_configure 'allow updates', 1
go
---Execute---
reconfigure with override
---Execute---
select status from sysdatabases where name = 'DataBaseName'
---Execute---
EXEC sp_resetstatus 'DataBaseName';
ALTER DATABASE DataBaseName SET EMERGENCY
---Execute---
alter database DataBaseName set EMERGENCY, SINGLE_USER
---Execute---
dbcc checkdb ('DataBaseName', REPAIR_ALLOW_DATA_LOSS)
---Execute---
alter database DataBaseName set ONLINE, MULTI_USER
---Execute---
Use master
go
sp_configure 'allow updates', 0
go
---Execute---
reconfigure with override

ПыСы После "dbcc checkdb" ругнулся на то что не может создать лог файл - пришлось создать папку, которую он просил и повторить с этого пункта еще раз (база раньше стояла в другом месте)
Dmitrii D; Gruuush; insurgut; Zircool; IT-стратегия; K_A_O; +6 Ответить
11. electronik 19.04.12 15:37 Сейчас в теме
Воспользовался похожим алгоритмом, база восстановилась, сверил все остатки - всё в порядке. Однако, до тех пор пока не выполнил тестирование и исправление средствами 1С, а также полную реиндексацию - преследовали мелкие глюки (проваливались джобы SQL, пользователей выбивало без сообщения об ошибке, частые зависания сеансов). Сейчас всё в порядке
12. Motor24 06.08.13 16:14 Сейчас в теме
Спасибо - вчера буквально столкнулся. Оказывается связка SQL 2005+1С 7.7 ещё весьма популярна

(11)"Однако, до тех пор пока не выполнил тестирование и исправление средствами 1С, а также полную реиндексацию - преследовали мелкие глюки"
Главное, что восстановилось основное, а тестирование после этого уже радостная мелочь. Вчера в suspect легла 12-гиговая база, было очень весело :)
14. Zhilyakovdr 142 23.12.15 21:10 Сейчас в теме
СПАСИБО!!! СПАС!!!
15. Larkin 396 07.04.16 20:57 Сейчас в теме
Плюс в карму!!! Огромное спасибо!
16. Tommy1987 5 15.06.17 20:26 Сейчас в теме
Большое спасибо!!!
17. poyson 18.06.18 16:05 Сейчас в теме
После этих шагов при попытке зайти в конфигуратор база выдало следующее сообщение:
"файлы запроса и ответа на лицензирование конфигурации были удалены из конфигурации" и закрывается?
Никто не в курсе что делать с этим?
18. Timur.V 67 18.06.18 17:26 Сейчас в теме
(17)
файлы запроса и ответа на лицензирование конфигурации были удалены из конфигурации


"В подобной ситуации помогло следующее: открыть проблемную ИБ в конфигураторе -> меню Конфигурация -> Поддержка -> Настройка поддержки -> кн. "Сравнить, объединить" -> "Выполнить". Проблема ушла. ps. Конфа на поддержке с возможностью изменения"
Сравнивать с конфигурацией поставщика.

источник
19. poyson 18.06.18 18:13 Сейчас в теме
(18) Проблема в том, что это сообщение появляется при попытке войти в конфигуратор....
20. Timur.V 67 18.06.18 18:25 Сейчас в теме
(19) Позвони в фирму 1С.
21. user1107011 10.12.18 11:10 Сейчас в теме
Спасибо. Очень помогло.
22. пользователь 25.02.19 15:06
Сообщение было скрыто модератором.
...
23. Slawok 25.11.19 12:09 Сейчас в теме
Благодарю за статью!
Отличное решение, помогло! :)
Оставьте свое сообщение