• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Database Is Damaged And Can't Be Repaired (unid Index)

  • Автор темы alexstudent
  • Дата начала
A

alexstudent

Добрый день! Несколько почтовых баз не открываются, при открытии ошибка, что нужно выполнить проверку целостности. При любой проверке утилитами compact или fixup ошибка - Database is damaged and can't be repaired (UNID index). Как лечится такое?
 
A

alexstudent

это не лечится :lol:

"Лечится", но довольно странным методом. Если скопировать базу к себе на локал и открыть, то идет восстановление и перестроение индексов (довольно быстро), база открывается и становится рабочей... можно выкладывать на сервер. Ерунда какая-то, либо я чего-то не знаю\не понимаю. =((((
 

savl

Lotus Team
28.10.2011
2 597
310
BIT
179
alexstudent
Вот именно скопировать, в результате реплика базы поменялась.
Теперь если её закопировать на сервер - она снова поменяется, в результате на все другие сервера надо делать новые реплики.
Все существующие ссылки на документы (желтые) из писем и рассылок стали "нерабочими" - ведут на неактуальную базу.
Local Fix:
Execute fixup with out -c option


I think the problem here is because you cannot put the icon on the workspace, you cannot create a new replica. It says "performing consistency check..." then fails because "database has grown too large .. create a new replica" right?
I saw this myself, and looked here for the answer, didn't find it. Now I have it from a colleague of mine:
Assuming you have the database on the local drive, close notes, edit the notes.ini and add the line SKIP_FIXUP=1 to the notes.ini.
When you open notes again, you'll find that you can now add the icon and will be able to create a new replica and increase the size limit. Don't put this line in the server notes.ini though.
 

Мыш

Lotus Team
12.02.2008
1 219
29
BIT
66
А если попробовать создать локальную реплику? Бывало, что и помогало...
 
A

alexstudent

alexstudent
Вот именно скопировать, в результате реплика базы поменялась.
Теперь если её закопировать на сервер - она снова поменяется, в результате на все другие сервера надо делать новые реплики.
Все существующие ссылки на документы (желтые) из писем и рассылок стали "нерабочими" - ведут на неактуальную базу.
Local Fix:



Если копировать на файловом уровне ОС, реплика ID базы и UNIDы документов не меняются и все работает. Я имел ввиду не New Copy.

Добавлено:
А если попробовать создать локальную реплику? Бывало, что и помогало...

С базой ничего нельзя сделать... не открыть не среплицировать, не пересоздать реплику поверх неё.. пишет требует проверку целостности. А при проверке утилитами восстановления на выкл-ом сервере ошибку, которая в теме топика.
 

ToxaRat

Чёрный маг
Green Team
06.11.2007
3 332
42
BIT
0
а что же её жуёт то тогда на сервере?
антивирь?
бекапер?
 

Мыш

Lotus Team
12.02.2008
1 219
29
BIT
66
alexstudent, а на сервере Transaction Log включен? Если да, то я б отключил и попробовал прочекать базу опять.
Были случаи, когда (именно при включенном Transaction Log) вот так же вот "залипал" Consistency check. Т.е., он типа пытается чекать базу по логам, а с логами с самими что-то не так...
 
A

alexstudent

а что же её жуёт то тогда на сервере?
антивирь?
бекапер?

Да нет, ни того ни другого нет. Может как раз проблема в логе транзакций как предположил Мыш.


Добавлено:
alexstudent, а на сервере Transaction Log включен? Если да, то я б отключил и попробовал прочекать базу опять.
Были случаи, когда (именно при включенном Transaction Log) вот так же вот "залипал" Consistency check. Т.е., он типа пытается чекать базу по логам, а с логами с самими что-то не так...

Лог транзакций включен, но, к сожалению, не осталось поврежденных баз, чтобы проверить это. Попутный вопрос - просто отключить лог транзакций в документе сервера, проверить базы (фиксап\компакт), затем его включить? Проблем при таком включении\отключении не будет?
 

Мыш

Lotus Team
12.02.2008
1 219
29
BIT
66
Лог транзакций включен, но, к сожалению, не осталось поврежденных баз, чтобы проверить это. Попутный вопрос - просто отключить лог транзакций в документе сервера, проверить базы (фиксап\компакт), затем его включить? Проблем при таком включении\отключении не будет?
Проблемы, разумеется, могут быть, это ж Домино :) Ну можно попробовать отключить лог для отдельной базы. Или физически ее на др. сервер перенести, где нет transaction log вообще...
 

swyatogor

Green Team
24.02.2014
593
24
BIT
0
Скопировал базу на локаль.. не помогает.. пишет перестройка индекса, комплитед, ошибка(

Уря.. починил..
помогло вот енто
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
так процедуру апгрэйда/апдейта нарушали? ;)
 

lmike

нет, пердело совершенство
Lotus Team
27.08.2008
7 941
609
BIT
214
прям по вашей ссылке и написсано:
In one case, running maintenance prior to moving the mail files resolved the problem. For example:
updall -R -X
fixup -F
compact -c -i
This is the same maintenance that is recommended in the 'Domino Server Upgrade' section of Technote #7006573
 
H

hosm

Мыш по поводу
Были случаи, когда (именно при включенном Transaction Log) вот так же вот "залипал" Consistency check. Т.е., он типа пытается чекать базу по логам, а с логами с самими что-то не так...
Кластер из нескольких серверов (8.5.2), в настройках Transaction Log "Automatic fixup of corrupt databases: Enabled" и вот это похоже на описываемое "залипание", в логах часто:
Performing consistency check on DB.nsf...
Completed consistency check on DB.nsf
Recovery Manager: Assigning new DBIID for DB.nsf (need new backup for media recovery).
База DB.nsf - база сэд, большая (несколько гигов, размер чуть больше ограничения Transaction Log\Maximum log space).
Что тут можно порекомендовать для убирания проблемы, чтоб можно было сделать успешный fixup - надо полностью отключить TL или достаточно отключить Automatic fixup? Или fixup вообще надо делать локально при выключенном сервере?
 

Мыш

Lotus Team
12.02.2008
1 219
29
BIT
66
OKEN, вообще он у Вас "completed" - т.е., по идее, fixup-то проходит. Другое дело, ПОЧЕМУ база чекается? Что ее может повреждать?
При выключенном сервере, но со включенным TL все равно fixup будет использовать TL. Ну можно попробовать, конечно...

По поводу моего опыта - ВРОДЕ БЫ, полностью отключали transaction log на всем сервере (ну и там 100500 перезагрузок, чтобы оно окончательно запретилось). Папку с логами тоже удаляли. Проблема с базой возникла после жесткого "упадения" стороннего add'ona.
Точно, к сожалению, уже не помню - чинили в авральном режиме... :-(
 
H

hosm

Мыш
Спасибо. Теоретически проблемы с базой могут быть из-за кластерной репликации и интенсивной работы с БД при нехватке места на дисках, практически ошибок вроде и нет, из явных неудобств - иногда база недоступна из-за фиксапов. Возможно, сервер периодически падал (в логах репликаций видела пару раз сообщение о не отвечающем сервере). Админы сказали, что TL отключить нельзя из-за DAOS. С обоими почти не работала, да и возможности перегружать и настраивать сервер у меня почти нет, там свои админы, они пока увеличили объем дисков и пробовали компакт, фиксап. Насчет каких-то сторонних приложений у них я не в курсе. Понаблюдаю дальше в процессе работы - может, будут уточнения или улучшение работы.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!