Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Поиском смотрел: варианты не подошли
Бэкапа нет
Server SQL 2000
База 1с 7.7 рухнула в результате отключения электричества
при проверке dbcc checkDB с параметром 'repair_allow_data_loss' выдает:
Server: Msg 8966, Level 16, State 1, Line 1
Could not read and latch page (1:144744) with latch type SH. sysindexes failed.
Подскажите профессионалы...
10 июл 12, 20:40    [12847220]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
Лучше покажите лог checkdb до того, как сделали repair_allow_data_loss. Вы ведь сделали бэкап или копии файлов?
10 июл 12, 20:57    [12847271]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
бэкап сделал
сообщение после выполнения checkdb без параметров, такое же:
Server: Msg 8966, Level 16, State 1, Line 1
Could not read and latch page (1:144744) with latch type SH. sysindexes failed.
DBCC execution completed. If DBCC printed error messages, contact your system administrator.

если лог еще где-то находиться, то подскажите где?
10 июл 12, 21:19    [12847333]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
а так что говорит
DBCC CHECKTABLE ('sysindexes')
10 июл 12, 21:41    [12847401]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Ругается почем зря:
Server: Msg 8966, Level 16, State 1, Line 1
Could not read and latch page (1:144744) with latch type SH. sysindexes failed.
Server: Msg 8909, Level 16, State 1, Line 1
Table error: Object ID 0, index ID 0, page ID (1:144744). The PageId in the page header = (0:0).
CHECKTABLE found 0 allocation errors and 1 consistency errors not associated with any single object.
repair_allow_data_loss is the minimum repair level for the errors found by DBCC CHECKTABLE (BIS.dbo.sysindexes ).
DBCC execution completed. If DBCC printed error messages, contact your system administrator.
10 июл 12, 21:43    [12847407]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
select * from sysindexes работает?

ну и помедитировать над результатами
DBCC TRACEON(3604) 
DBCC PAGE (BIS, 1, 144744, 1)

DBCC PAGE (BIS, 1, 144744, 3)

не помешает.
10 июл 12, 22:29    [12847579]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Спасибо за помощь

1)
Server: Msg 823, Level 24, State 2, Line 1
I/O error (bad page ID) detected during read at offset 0x00000046ad0000 in file 'D:\1C\Base\BIS_Data.MDF'.

Connection Broken
2)
PAGE: (0:0)
-----------

BUFFER:
-------

BUF @0x1A6ECBC0
---------------
bpage = 0x8064E000 bhash = 0x00000000 bpageno = (1:144744)
bdbid = 9 breferences = 0 bstat = 0x809
bspin = 0 bnext = 0x00000000

PAGE HEADER:
------------

Page @0x8064E000
----------------
m_pageId = (0:0) m_headerVersion = 0 m_type = 0
m_typeFlagBits = 0x0 m_level = 0 m_flagBits = 0x0
m_objId = 0 m_indexId = 0 m_prevPage = (0:0)
m_nextPage = (0:0) pminlen = 0 m_slotCnt = 0
m_freeCnt = 0 m_freeData = 0 m_reservedCnt = 0
m_lsn = (0:0:0) m_xactReserved = 0 m_xdesId = (0:0)
m_ghostRecCnt = 0 m_tornBits = 0

Allocation Status
-----------------
GAM (1:2) = ALLOCATED SGAM (1:3) = NOT ALLOCATED
PFS (1:137496) = 0x0 0_PCT_FULL DIFF (1:6) = CHANGED
ML (1:7) = NOT MIN_LOGGED

3)
то же самое, кроме: breferences = 1
11 июл 12, 00:49    [12848054]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
у меня есть копия годовой давности. С тех пор структура не менялась.
можно ли скопировать из неё системные таблицы (sys*) в сломанную базу?
11 июл 12, 01:39    [12848141]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
Ken@t
Member

Откуда: 大地
Сообщений: 3265
djserega
у меня есть копия годовой давности. С тех пор структура не менялась.
можно ли скопировать из неё системные таблицы (sys*) в сломанную базу?


Поздравляю, нет.
Есть админы делающие резервные копии, а есть админы которые будут делать их. Вы уже перешли во вторую категорию, проф. рост наблюдается.
11 июл 12, 05:55    [12848246]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Я не админ, я просто пытаюсь восстановить базу...
(А вас "распирает" как бы назвать того лоха, который копию не сделал)
11 июл 12, 08:21    [12848437]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
djserega
3)
то же самое, кроме: breferences = 1

а табличного результата там точно не было?
11 июл 12, 08:32    [12848463]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Вот все что выдал:
PAGE: (0:0)
-----------

BUFFER:
-------

BUF @0x1AD76540
---------------
bpage = 0xB4B1A000 bhash = 0x00000000 bpageno = (1:144744)
bdbid = 9 breferences = 1 bstat = 0x809
bspin = 0 bnext = 0x00000000

PAGE HEADER:
------------

Page @0xB4B1A000
----------------
m_pageId = (0:0) m_headerVersion = 0 m_type = 0
m_typeFlagBits = 0x0 m_level = 0 m_flagBits = 0x0
m_objId = 0 m_indexId = 0 m_prevPage = (0:0)
m_nextPage = (0:0) pminlen = 0 m_slotCnt = 0
m_freeCnt = 0 m_freeData = 0 m_reservedCnt = 0
m_lsn = (0:0:0) m_xactReserved = 0 m_xdesId = (0:0)
m_ghostRecCnt = 0 m_tornBits = 0

Allocation Status
-----------------
GAM (1:2) = ALLOCATED SGAM (1:3) = NOT ALLOCATED
PFS (1:137496) = 0x0 0_PCT_FULL DIFF (1:6) = CHANGED
ML (1:7) = NOT MIN_LOGGED

DBCC execution completed. If DBCC printed error messages, contact your system administrator.
11 июл 12, 08:37    [12848476]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
Перекидывайте данные в чистую базу.
11 июл 12, 08:41    [12848486]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
при импорте в новую базу или экспорте из старой выдает ошибку:
Error: 823, Severity: 24, State: 2
I/O error (bad page ID) detected during read at offset 0x00000046ad0000 in file 'D:\1C\Base\BIS_Data.MDF'.
11 июл 12, 09:24    [12848605]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
не возникает ошибки если импортировать в сломанную...
11 июл 12, 09:25    [12848610]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
djserega
при импорте в новую базу или экспорте из старой выдает ошибку:
Error: 823, Severity: 24, State: 2
I/O error (bad page ID) detected during read at offset 0x00000046ad0000 in file 'D:\1C\Base\BIS_Data.MDF'.

это на каком селекте?
11 июл 12, 09:42    [12848666]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
[quot step_ks]
djserega
это на каком селекте?

сразу, как нажимаю кнопку "далее"
11 июл 12, 10:26    [12848912]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
так и знал.
скриптами перекидывайте, какие еще кнопки на сломанной базе.
11 июл 12, 10:39    [12849037]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

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

не ругайтесь особо... я пытаюсь использовать стандартные средства, чтобы не наворотить лишнего, т.к. опыта программирования в СКЛ почти нет.
Подскажите пример скрипта, или ссылку где можно посмотреть копирование всех данных
11 июл 12, 11:22    [12849293]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
step_ks
Member

Откуда:
Сообщений: 936
что-то навроде
insert newdb..table1 (col1,col2) select col1,col2 from baddb..table1

и так для всех таблиц.
Если объемы большие - bcp.
11 июл 12, 11:58    [12849561]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
я так понимаю все дело в системной таблице sysindexes
каким образом ее можно восстановить?
или переписать из другой БД?
11 июл 12, 17:26    [12852216]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
djserega
я так понимаю все дело в системной таблице sysindexes
каким образом ее можно восстановить?
или переписать из другой БД?
Если checkdb не чинит, то никаким. В этой таблице хранятся физические координаты всех таблиц и индексов в базе, вы их тупо правильные не найдете, даже если и сможете туда что-либо записать.

Делайте регулярные бэкапы, в общем.

Сообщение было отредактировано: 11 июл 12, 17:31
11 июл 12, 17:31    [12852241]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Гавриленко Сергей Алексеевич,

спасибо
обидно, данные есть, я их даже просмотреть могу, а работать с ними или вытащить их не могу :(
11 июл 12, 17:33    [12852253]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
djserega
Member

Откуда:
Сообщений: 15
Подскажите, пожалуйста, как организовать цикл обхода таблиц БД
Стандартными средствами не работает
командами можно извлечь данные
12 июл 12, 13:26    [12856389]     Ответить | Цитировать Сообщить модератору
 Re: Можно ли восстановить базу, если Could not read and latch page ... sysindexes failed  [new]
invm
Member

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

Recovery for SQL Server
Ms SQL Recovery
12 июл 12, 13:36    [12856499]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Microsoft SQL Server Ответить