Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Архивация, репликация, битые таблицы.  [new]
pal3st1nec
Member

Откуда:
Сообщений: 2
Здравствуйте.
Возникла проблема с базой данных, назовем ее <workdb_name>. При анализе работы некоторых задач было выявлено, что уже в течение недели не создаются бэкапы <workdb_name>. Так же оказалось, что в головном предприятии наша база не реплицируется в общую базу тоже порядка недели. В Голове было выяснено, что репликация не проходит из-за "каких-то битых таблиц", но что это за таблицы они разобраться не могут.
Попытка создать бэкап вручную дает следующий результат.

ЗАГОЛОВОК: Microsoft SQL Server Management Studio
------------------------------

Действие Резервное копирование завершилось неудачно для объекта "Сервер" "srv3802". (Microsoft.SqlServer.SmoExtended)

Чтобы получить справку, щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+((KJ_RTM).100402-1540+)&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=Резервное+копирование+Server&LinkId=20476

------------------------------
ДОПОЛНИТЕЛЬНЫЕ СВЕДЕНИЯ:

System.Data.SqlClient.SqlError: Ошибка считывания с "C:\DataBase\sovetsky.mdf": 1(Неверная функция.) (Microsoft.SqlServer.Smo)

Чтобы получить справку, щелкните: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600.1+((KJ_RTM).100402-1540+)&LinkId=20476

------------------------------
КНОПКИ:

ОК
------------------------------


Попытка физически скопировать файл БД в любое другое место так же возвращает программами копирования ошибку (Неизвестная функция), либо (Неизвестная функция MS-DOS). Само собой, база отсоединена от SQL, сама служба полностью выключена.

Любые поптыки поковырять БД командой DBCC CHECKDB (с любыми параметрами) приводят к следующей ошибке:

Сообщение 8921, уровень 16, состояние 1, строка 1
Проверка отменена. В процессе сбора фактов была обнаружена ошибка. Возможно, база данных tempdb достигла предела памяти, или системная таблица не согласована. Проверьте предыдущие ошибки.
Сообщение 8966, уровень 16, состояние 2, строка 1
Не удалось считать страницу (1:1054555) и произвести ее кратковременную блокировку типа SH. 1(Неверная функция.).
Сообщение 8966, уровень 16, состояние 2, строка 1
Не удалось считать страницу (1:1054558) и произвести ее кратковременную блокировку типа SH. 1(Неверная функция.).
CHECKDB обнаружил 2 ошибок размещения и 0 ошибок согласованности, не связанных ни с одним объектом.
CHECKDB обнаружил 2 ошибок размещения и 0 ошибок согласованности в базе данных "<workdb_name>".


Попытки выполнения команды осуществлялись в монопольном режиме и один раз в состоянии базы EMERGENCY.
15 сен 12, 10:35    [13168515]     Ответить | Цитировать Сообщить модератору
 Re: Архивация, репликация, битые таблицы.  [new]
aleks2
Guest
0. возносим молитву Св. Билли.
1. chkdsk /F/R диск_с_базой_и_журналом:
2. На фсе соглашаемся.
3. Перегрузка сервера потребуется и ждать придется немало... час-два-три. Это от размера и прыти дисков зависит.
4. Типерь колбасим DBCC CHECKDB. И снова возносим молитву Св. Билли.
15 сен 12, 11:02    [13168544]     Ответить | Цитировать Сообщить модератору
 Re: Архивация, репликация, битые таблицы.  [new]
pal3st1nec
Member

Откуда:
Сообщений: 2
Эту процедуру оставил на самый последний момент. Может быть есть какие-нибудь идеи или мысли, что и где можно поковырять еще? Потому что молюсь я со вчерашнего обеда, когда вся эта борода вскрылась. Есть еще один занимательный факт.
При выполнении SELECT * FROM [workdb_name].[sys].[columns] возвращается ошибка:


Сообщение 823, уровень 24, состояние 2, строка 2
Операционная система возвратила ошибку 1(Неверная функция.) в SQL Server при прочитать в смещении 0x000000280ac000 файла "C:\DataBase\sovetsky.mdf". Дополнительные сведения см. в журнале ошибок SQL Server и журнале системных событий. Это серьезная ошибка системного уровня, которая угрожает целостности базы данных, поэтому она должна быть немедленно исправлена. Выполните полную проверку базы данных на согласованность (DBCC CHECKDB). Эта ошибка может быть вызвана многими причинами; дополнительные сведения см. в электронной документации по SQL Server.


В indexes и objects все нормально. Однако, если остановить SELECT до появления ошибки, то запрос отображает 12890 строк. Тогда как в самой таблице их 14127.
15 сен 12, 11:13    [13168556]     Ответить | Цитировать Сообщить модератору
 Re: Архивация, репликация, битые таблицы.  [new]
aleks2
Guest
pal3st1nec
Может быть есть какие-нибудь идеи или мысли, что и где можно поковырять еще?

За чудесами вам на "Давай поженимся". А нарушение логической или физической структуры диска - это не беременность - само не рассосется.
15 сен 12, 11:35    [13168602]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить