Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Ошибки при выполнении DBCC CHECKDB (Msg 8929, Msg 8965, Msg 8964, Msg 8961, Msg 8974)  [new]
adreano
Member

Откуда:
Сообщений: 9
Приветствую, друзья.

Выполняю следующий скрипт:
use regDB
DBCC CHECKDB with ALL_ERRORMSGS
go


Вот результат:

DBCC results for 'regDB'.
DBCC results for 'sysobjects'.
There are 248 rows in 6 pages for object 'sysobjects'.
DBCC results for 'sysindexes'.
Msg 8929, Level 16, State 1, Line 2
Object ID 2: Errors found in text ID 426967040 owned by data record identified by RID = (1:134:2) id = 2053582354 and indid = 1.
Msg 8929, Level 16, State 1, Line 2
Object ID 2: Errors found in text ID 1849622528 owned by data record identified by RID = (1:1306:3) id = 226099846 and indid = 5.
Msg 8929, Level 16, State 1, Line 2
Object ID 2: Errors found in text ID 59113472 owned by data record identified by RID = (1:1312:17) id = 1977058079 and indid = 4.
Msg 8965, Level 16, State 1, Line 2
Table error: Object ID 2. The text, ntext, or image node at page (1:165), slot 17, text ID 426967040 is referenced by page (1:147), slot 13, but was not seen in the scan.
Msg 8964, Level 16, State 1, Line 2
Table error: Object ID 2. The text, ntext, or image node at page (1:1376), slot 1, text ID 475725824 is not referenced.
Msg 8961, Level 16, State 1, Line 2
Table error: Object ID 2. The text, ntext, or image node at page (1:1378), slot 5, text ID 1849622528 does not match its reference from page (1:135), slot 23.
Msg 8974, Level 16, State 1, Line 2
Text node referenced by more than one node. Object ID 2, text, ntext, or image node page (1:1378), slot 5, text ID 1849622528 is pointed to by page (1:135), slot 23 and by page (1:1383), slot 8.
There are 208 rows in 8 pages for object 'sysindexes'.

Пожалуйста, подскажите, как исправить данные ошибки.
20 май 11, 18:07    [10686478]     Ответить | Цитировать Сообщить модератору
 Re: Ошибки при выполнении DBCC CHECKDB (Msg 8929, Msg 8965, Msg 8964, Msg 8961, Msg 8974)  [new]
Алексей Игнатьев.
Member

Откуда:
Сообщений: 1
У вас повреждены данные на страницах.
Чтобы определить у какой таблицы, выполните скрипт:

SELECT so.name, si.name
FROM sysindexes si inner join sysobjects so on si.id = so.id and so.uid = 1 and (so.xtype = 'U' or so.xtype = 'V')
where
si.id = 426967040

таким способом вы найдёте таблицу с повреждёнными данными.
Теперь вам нужно несколько раз (2-3) выполнить скрипт, предварительно переведя базу в режим SINGLE_USER

DBCC CHECKTABLE ('название таблицы’, REPAIR_ALLOW_DATA_LOSS)
19 янв 12, 18:52    [11935313]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить