База не выгружается в файл

Статус
У этой темы есть продолжение, подробности в конце обсуждения.
Шалом. Интересует исправление данных sql. Столкнулась с поврежденной базой серверной (MS SQL 2005), которая работает со сбоем, и восстановить путем тестирования-исправления невозможно (вылетает ошибка контрольной суммы). При этом база не выгружается в файл - та же ошибка. Делала всё как на сайте ссылки видят только зарегистрированные пользователи (войти) но что-то это очень сложно..Если попробовать через тестирование самого сервера SQL?

 
ShOCOLATKA написал(а):
Шалом. Интересует исправление данных sql. Столкнулась с поврежденной базой серверной (MS SQL 2005), которая работает со сбоем, и восстановить путем тестирования-исправления невозможно (вылетает ошибка контрольной суммы). При этом база не выгружается в файл - та же ошибка. Делала всё как на сайте ссылки видят только зарегистрированные пользователи (войти) но что-то это очень сложно..Если попробовать через тестирование самого сервера SQL?
Сам я избегаю пользоваться продуктами Майкрософт (кроме клавиатур), так что вряд ли смогу дать конкретные технические рекомендации.Однако, этот пост крайне интересен своими другими аспектами. Позволю задать себе пару вопросов и дать пару рекомендаций.1. Как Вы столкнулись с такой проблемой? Вы DBA? Программист? Сисадмин? Инженер QA? Инженер техподдержки? Или пользователь, которому когда-то специалисты запилили сайт/приложение, и теперь что-то не работает, а нанимать специалиста не хочется?- Возможно, я ошибаюсь, но на мысли о последнем варианте наводят 2 факта: 1) крайне скупое на подробности изложение проблемы и попыток её решения, 2) публикация крайне специфического технического вопроса на ресурсе, для этого не предназначенном. Шансов получить адекватные, а главное - полезные, ответы (при грамотно составленном вопросе, разумеется) куда больше, например, на этом ресурсе:ссылки видят только зарегистрированные пользователи (войти)Или даже на этом:ссылки видят только зарегистрированные пользователи (войти)В случае stackoverflow можно даже попробовать задать вопрос на русском:ссылки видят только зарегистрированные пользователи (войти)2. В технической сфере, сэкономив время на составление качественного вопроса, пользователь драматически снижает свои шансы на получение содержательного ответа, даже если обращается за помощью на предназначенный для этого ресурс.- Вот общие рекомендации о том, как правильно задавать технический вопрос:ссылки видят только зарегистрированные пользователи (войти)- Вот подробнейшие рекомендации о том, как правильно задавать технический вопрос (рекомендую прочесть хотя бы раз):ссылки видят только зарегистрированные пользователи (войти)- Давайте рассмотрим плюсы и минусы Вашего вопроса.Плюс: указана основная версия СУБД (MS SQL 2005).Минус: не указана полная версия СУБД (например, SQL Server 2005 SP4 (9.00.5000.00 – December 2010)).ссылки видят только зарегистрированные пользователи (войти)Минус: не указана полная версия операционной системы, на которой запущена СУБД.Плюс: указано, что Вы пытались сделать восстановление самостоятельно, и даже пытались следовать конкретным инструкциям по конкретно указанному адресу.Минус: не объяснено, почему Вы пришли к решению о необходимости восстановления.Минус: совершенно не разъяснено, что такое "работает со сбоем", и почему из этого следует, что база повреждена. Как программист, я часто сталкиваюсь с ситуациями, когда пользователь или младший программист упорно просят помочь в решении задачи, которую поставили себе на основе некорректного анализа проблемы. Задавая вопрос, очень важно наглядно показать, что поставленная задача действительно должна решить техническую проблему. В этом конкретном случае нужно подробное описание "сбоев" в техническом и хронологическом аспектах. Ошибки надо приводить дословно (возможно, удаляя из них приватную информацию). Нужно указать, когда начались "сбои" и как часто они происходят.Минус: не перечислены предпринятые действия попытки методом "тестирования-исправления".Минус: не указано, после какого действия происходит "ошибка контрольной суммы".Минус: не указан полный текст "ошибки контрольной суммы".Минус: "что-то это очень сложно" - справедливо интерпретируется, как то, что следуя инструкциям, Вы столкнулись с проблемой, но Вам лень её описывать. Подобные "описания" проблем на профильных ресурсах приводят к минусованию вопроса и отсылке к инструкциям, как правильно задавать вопросы.Минус: "Если попробовать через тестирование самого сервера SQL?" - на такое (если это не заведомо абсурдный вариант), скорее всего, ответят в духе "конечно, попробуйте и отпишитесь о результате, тогда посмотрим".Спрашивающие нередко зачем-то обижаются на рекомендации по исправлению некорректно поставленного вопроса. Надо понимать, сам факт, что существуют специалисты, готовые бесплатно помочь в решении технической проблемы, потратив на это своё время, не является самоочевидным. Эти специалисты не должны ничего спрашивающему и справедливо чаще не захотят тратить своё время на подробный опрос пользователя, если он сам не готов приложить усилия.Рекомендую уточнить вопрос в соответствии с пунктами выше и опубликовать его на профильных ресурсах (да, можно и не на одном). Впрочем, опубликуйте и здесь тоже заодно, не повредит.Вот пара примеров хорошо составленных вопросов (получивших полезные ответы):ссылки видят только зарегистрированные пользователи (войти)ссылки видят только зарегистрированные пользователи (войти)Вот пара примеров плохо составленных вопросов (в комментариях объясняют, почему):ссылки видят только зарегистрированные пользователи (войти)ссылки видят только зарегистрированные пользователи (войти)Успеха!



 
Тут отличный коллектив, и пользователи. Дать такой ответо-вопрос. Многого стоит. Вопрос конечно не простой, тут множество решений, порой всё банально. Сам обычно несколько дней сижу, когда такие проблемы, схожие.

 
Протестируйте свою базу данных. Для начала проверье в каком она режиме. Должен быть EMERGENCY-Прежде всего следует перевести БД в режим EMERGENCY:EXEC sp_resetstatus 'yourDBname';ALTER DATABASE yourDBname SET EMERGENCY-Затем выполните тестирование базы данных:DBCC checkdb('yourDBname')ALTER DATABASE yourDBname SET SINGLE_USER WITH ROLLBACK IMMEDIATEDBCC CheckDB ('yourDBname', REPAIR_ALLOW_DATA_LOSS)ALTER DATABASE yourDBname SET MULTI_USERПосле будет более ясна картина.Почитайте информацию на этом сильном информационном ссылки видят только зарегистрированные пользователи (войти)Так же воспользуйтесь ссылки видят только зарегистрированные пользователи (войти), где есть исправление данных sqlНу и на по следок посмотрите информацию в ссылки видят только зарегистрированные пользователи (войти)

 
Статус
У этой темы есть продолжение, подробности в конце обсуждения.
Пойдешь налево...
Пойдешь направо...
Сверху