Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
sql express 2008 r2

результат dbcc checkdb

DBCC results for 'BAZA'.
Msg 8935, Level 16, State 1, Line 1
Table error: Object ID 3, index ID 1, partition ID 196608, alloc unit ID 196608 (type In-row data). The previous link (1:13345) on page (1:13346) does not match the previous page (1:27291) that the parent (1:67422), slot 10 expects for this page.
Msg 8978, Level 16, State 1, Line 1
Table error: Object ID 3, index ID 1, partition ID 196608, alloc unit ID 196608 (type In-row data). Page (1:13346) is missing a reference from previous page (1:13345). Possible chain linkage problem.
Msg 8978, Level 16, State 1, Line 1
Table error: Object ID 3, index ID 1, partition ID 196608, alloc unit ID 196608 (type In-row data). Page (1:226667) is missing a reference from previous page (1:226666). Possible chain linkage problem.
CHECKDB found 0 allocation errors and 3 consistency errors in table 'sys.sysrscols' (object ID 3).
Msg 7995, Level 16, State 1, Line 1
Database 'BAZA': consistency errors in system catalogs prevent further DBCC checkdb processing.
CHECKDB found 0 allocation errors and 1 consistency errors in table '(Object ID 99)' (object ID 99).
CHECKDB found 0 allocation errors and 4 consistency errors in database 'BAZA'.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

REPAIR_ALLOW_DATA_LOSS не помогло.
бэкап затерт с этой же ошибкой.

Как можно исправить?
30 ноя 11, 20:37    [11686099]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Haramambaru
Member

Откуда:
Сообщений: 31
Shatir,

Попробуйте rebuild индексы
1 дек 11, 04:17    [11687168]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Haramambaru,

пробовал выдает

Cannot find the object "sys.sysrscols" because it does not exist or you do not have permissions.
1 дек 11, 05:41    [11687202]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Haramambaru
Member

Откуда:
Сообщений: 31
A, так у вас системная таблица corrupted! Ну не знаю, может создать новую базу данных и экспортировать туда пользовательские таблицы? База то большая?
1 дек 11, 09:46    [11687511]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
Haramambaru
Shatir,

Попробуйте rebuild индексы


тут кластерный индекс ёК... и при чем (type In-row data) - таблица умерла 100%.
1 дек 11, 09:49    [11687536]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Haramambaru
Member

Откуда:
Сообщений: 31
SanyL
и при чем (type In-row data).

Это просто дежурная информация что в этой странице находится in-row data (т.е. данные помещаются в строке. Другой тип - row overflow, когда данные не помещаются в строке, тогда колонка переносится на другую страницу, а на основной странице находится указатель.

Object ID = 3 - системная таблица 'sys.sysrscols'
А что за таблица Object ID = 99?
1 дек 11, 10:18    [11687646]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
JonnyP
Member

Откуда:
Сообщений: 1
В книге Microsoft SQL Server 2008 Internals написано типа ошибки, связанные с отсутствием ссылок на предыдущие страницы не исправимы
Смерть таблицы 100% поддерживаю
1 дек 11, 10:21    [11687670]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Haramambaru,

select *
from sys.objects
where object_id = 99

результат

name object_id principal_id schema_id parent_object_id type type_desc create_date modify_date is_ms_shipped is_published is_schema_published
-------------------------------------------------------------------------------------------------------------------------------- ----------- ------------ ----------- ---------------- ---- ------------------------------------------------------------ ----------------------- ----------------------- ------------- ------------ -------------------

(строк обработано: 0)
1 дек 11, 11:39    [11688169]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
Shatir,

Впринципе Haramambaru Вам решение уже назвал - переливайте все в новую БД.... Других вариантов нет - хорошо что пользовательские таблицы живы.
1 дек 11, 11:51    [11688267]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
SanyL,

а как можно получить доступ к системной таблице?
1 дек 11, 11:55    [11688307]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
Shatir
SanyL,

а как можно получить доступ к системной таблице?


к этой ток через DAC
1 дек 11, 12:36    [11688613]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
SanyL,

в SQL express 2008 r2 возможно подцепится через DAC

если да, то подскажите как?
Что то не получается
1 дек 11, 12:45    [11688692]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
BOL -> Dedicated Administrator Connection
1 дек 11, 12:49    [11688727]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
In the Connect to Database Engine dialog box, in the Server name box, type ADMIN: followed by the name of the server instance. For example, to connect to a server instance named ACCT\PAYABLE, type ADMIN:ACCT\PAYABLE.
1 дек 11, 12:49    [11688732]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Glory
Member

Откуда:
Сообщений: 104751
BOL
To conserve resources, SQL Server Express does not listen on the DAC port unless started with a trace flag 7806.
1 дек 11, 13:17    [11688946]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
пытаюсь сделать rebuild

выдаётся ошибка

Нерегламентированные обновления системных каталогов запрещены
1 дек 11, 14:25    [11689570]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
SanyL
Member

Откуда: Москва
Сообщений: 4540
Shatir
пытаюсь сделать rebuild

выдаётся ошибка

Нерегламентированные обновления системных каталогов запрещены


Так сказали же уже - тут ребилдить нечего... Поврежден кластерный индекс = повреждена таблица (и это не учитывая того что трабла с системной таблицей). Переливайте данные в новую БД.
1 дек 11, 15:16    [11690095]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
ALTER TABLE....
тоже не поможет?
1 дек 11, 17:43    [11691425]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Glory
Member

Откуда:
Сообщений: 104751
Shatir
ALTER TABLE....
тоже не поможет?

Восстановить потерянные фрагменты таблицы ?
1 дек 11, 17:46    [11691451]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Glory,

попробовать востановить, или удалить индексы
1 дек 11, 18:01    [11691569]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Glory
Member

Откуда:
Сообщений: 104751
Shatir
попробовать востановить, или удалить индексы

И откуда команда ALTER TABLE возьмет эти потерянные данные ?
1 дек 11, 18:03    [11691581]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Glory,

alter table не востановит данные.
я вообщем пишу попробовать востановить или удалить индексы в системной таблице

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

Если есть возможность подскажите
1 дек 11, 18:16    [11691730]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Glory
Member

Откуда:
Сообщений: 104751
Shatir
я вообщем пишу попробовать востановить или удалить индексы в системной таблице

По буквам
У вас поврежден к л а с т е р н ы й индекс. То есть сама таблица


Shatir
Если есть возможность подскажите

Бэкап
1 дек 11, 18:24    [11691775]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Glory,

бэкапы затерты с этой же ошибкой.
1 дек 11, 18:39    [11691866]     Ответить | Цитировать Сообщить модератору
 Re: Подскажите как исправить ошибки в базе sql 2008 r2  [new]
Shatir
Member

Откуда: Пермь
Сообщений: 25
Ещё есть другая бд, схожая по структуре(между ними репликация),
можно ли заменить системную таблицу из рабочей бд?
2 дек 11, 17:05    [11697903]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить