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

23.10.09

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

Если базу силой 1С не восстановить

Добрый день, коллеги. На днях столкнулся с поврежденной базой серверной (MS SQL 2005), которая работает со сбоем, и восстановить путем тестирования-исправления невозможно (вылетает ошибка контрольной суммы). При этом база не выгружается в файл - та же ошибка. Путем многих попыток - восстановить базу так и не удавалось, единственное что помогло - восстановить путем тестирования самого SQL. Вот команды:

DBCC CHECKDB ('database', REPAIR_FAST)

DBCC CHECKDB ('
database', REPAIR_REBUILD) 

Если предыдущие две не помогли, тогда уже можно применять третью, но она несет за собою возможную потерю данных, и желательно применять в безнадежном случае уже.

DBCC CHECKDB ('database', REPAIR_ALLOW_DATA_LOSS)

 

Если команда не выполняется из-за не однопользовательского режима, тогда перейти можно по команде

alter database db-name set SINGLE_USER

 

Ясно что перед любыми тестами нужно сделать резервную копию (средствами SQL, если выгрузка не делается.

Данную статью написал так как потратил очень много времени на поик данных комманд и соответственно за ваши плюсы, надеюсь кому-то она поможет в тяжелый момент.

См. также

Автоподбор ролей для профилей и групп доступа в любых типовых базах 1С УТ 11, КА 2, ERP2, Розница 2/3, УНФ 16/3, БП 3, ЗУП 3 и подобных (УФ, Платформа 8.3.14+)

Инструменты администратора БД Роли и права 8.3.14 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Документооборот 1С:Зарплата и кадры государственного учреждения 3 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 15.12.2023, версия 1.1.

12000 руб.

06.12.2023    2989    15    1    

34

SALE! 20%

Infostart УДиФ: Управление данными и формами

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

Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.

10000 8000 руб.

10.11.2023    3565    11    1    

34

SALE! 30%

PowerTools

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

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

3600 2520 руб.

14.01.2013    177771    1074    0    

849

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

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

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

14400 руб.

29.04.2020    27390    79    146    

59

Система хранения присоединенных файлов в томах на диске

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

Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.

4200 руб.

10.11.2015    61321    88    59    

73

"Менеджер потоков 2.1": УПП: "Восстановление партий"

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

Как оптимизировать то, что, считалось, не поддается оптимизации? Как повысить доступность базы данных? Как проводить самую «времяемкую» операцию не по паре раз в неделю, а по несколько раз в день*? Ответ есть!

20000 руб.

12.09.2019    11751    5    9    

7

Брандмауэр для сервера 1С Предприятие 8 - внешнее управление сеансами

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

Управление возможностью начала и возобновления сеансов пользователей по различным условиям, ограничение общего числа возможных сеансов для работы с информационной базой, резервирование возможности работы с информационной базой определенных польззователей, запрет запуска нескольких сеансов для пользователя, журнализация событий начала (возобновления) и завершения (гибернации) сеансов, ведение списка активных сеансов для информационных баз кластера серверов

3600 руб.

06.02.2017    31113    31    18    

47

Хранилище файлов на SQL

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

Привязка файлов / сканов к объектам 1С с сохранением их на SQL-сервере

12000 руб.

09.10.2019    10987    5    8    

9
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. anderson 230 26.10.09 11:13 Сейчас в теме
Если будет уместно, то в продолжение этой темы. Suspect Mode базы MS SQL
2. anderson 230 26.10.09 11:14 Сейчас в теме
3. MMF 679 26.10.09 14:25 Сейчас в теме
мощная статья. теперь еще нужна статья про то, как выполнить эти мега-команды, можно назвать "выполнение TSQL для чайников". И продолжить цикл статьей "Как запустить SQL Server Management Studio для полных идиотов"
alk; German; sckif; +3 Ответить
4. Valerich 1633 26.10.09 17:28 Сейчас в теме
(3) не стоит так резко. Ведь не все хорошо знакомы с SQL сервером на уровне именно таких команд. Кому-то может пару часов времени сэкономит на поиск лекарства от такой же проблемы.
devlog; Мах; nviharev; Motor24; +4 Ответить
5. halushka 27.10.09 07:37 Сейчас в теме
(3) зря. Хотя бы потому что не у всех стоит SQL SMS. Допустим ее нет ? Много уж чего-то админов клик-only развелось... Плюс однозначно. Проблема описана. Решение тоже.
8. Андроид 215 30.10.09 17:17 Сейчас в теме
(3) Готов в продолжении этой статьи написать для "чайников" с картинками куда и как вставить эти функции....
6. ninch 51 28.10.09 05:39 Сейчас в теме
Все нормально, только как всегда голые команды. А описания нету. Тупо выполните и получите результат.
7. mad_maksim 87 28.10.09 09:51 Сейчас в теме
Если уж браться за такой вопрос, то нужны готовые скрипты. За пять минут можно сделать, а людям приятно будет. Я в свое время команды нашел за 5 минут, а запускал их 30, так как не силен в SQL.
Да, перевод в режим single обязателен, это раз. Вывод из этого режима после работы также обязателен, это два.
9. Атеист33 17.11.09 07:05 Сейчас в теме
Скажу одно : " каждый когда - то начинает с азов и как правило ошибок делают более всего или начинающие (метод проб и ошибок) или же те кто уже "заматерел " - считая что они знают много" много знаний не бывает .

любая работа и поиск решения проблем - это положительный результат .

сам вот не зная в 1С как получить кол- во строк в текстовом файле стал писать код анализируя перевод строки - а мог бы всего - навсего использовать метод " КоличествоСтрок() "

хотя и то и другое оказалось полезным
10. Geqsogen 25.10.11 20:41 Сейчас в теме
Помогло после крушения рэйда и когда поздно заметили пропажу бэкапов. Но сначала надо было собрать еще инфы, чтобы восстановить базу на 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" ругнулся на то что не может создать лог файл - пришлось создать папку, которую он просил и повторить с этого пункта еще раз (база раньше стояла в другом месте)
11. sergoqwe 23.07.13 15:26 Сейчас в теме
спасибо, помогло, вот только интересует еще одно. в другой статье рекомендуют запускать после этого этот же запрос с параметром REPAIR_REBUILD. На сколько данная рекомендация правильная?
12. Motor24 06.08.13 16:11 Сейчас в теме
Спасибо - вчера буквально столкнулся. Оказывается связка SQL 2005+1С 7.7 ещё весьма популярна
13. sergoqwe 18.04.14 14:47 Сейчас в теме
14. kazann 22 28.01.15 10:13 Сейчас в теме
Интересно вследствие чего база переходит в такой режим?
15. sergoqwe 21.07.15 10:13 Сейчас в теме
(14) kazann, как пример очередное отключение питания, при запуске SQL после аварийного завершения
16. Serge_ASB 16.05.16 16:43 Сейчас в теме
Добрый день.
С утра БД (УТ 10.3 на MS SQL 2008R2 под 1С 8.3.7.1845) выдало:
"Ошибка формата потока".
Тестирование SQL средствами показало 0 ошибок.
В конфигуратор 1С не заходит с той же ошибкой.
1С Предприятие тоже не запускается.
Остальные БД на том же SQL сервере не пострадали.
Какие есть еще варианты, чтобы понять, где копать / вытащить документы?

P.S. последний БэкАп был на предыдущий день. С него восстановились.
Хочется понять, что сделать, чтобы подобного не возникало впредь?

Накануне перепроводил массово документы в целях правильного ведения регистра Партий товаров на складах. В какой-то момент вышел - часть процесса не видел.
Возможно ли, что в процессе проведения случилось что-то, что могло внести ошибку в данные?
Оставьте свое сообщение