|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
Кто может пояснить разницу в сабже. cI показывает ошибки на фрагментированной таблице у которой нет rowid. ci на эту же таблицу говорит, что все нормально. Informix 7.31 FD10 ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2014, 09:53 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cpr, "The oncheck -cI command also checks that the key value tied to a rowid in an index is the same as the key value in the row." Расширенный вольный перевод: "Команда oncheck -cI помимо того что делает -ci, также проверяет, что значение ключа, записанное в индексе и привязанное к перечню ROWID, совпадает со значениями ключей собственно в строках с этими ROWID." Несмотря нато что, у фрагментированной таблиц "нет ROWID", индекс содержит ссылки на строки в фрагментированных частях (пусть они и не называются ROWID). Т.е. эти ссылки таки поломаны... ... |
|||
:
Нравится:
Не нравится:
|
|||
08.08.2014, 18:56 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Спасибо, а что Вы думаете о прогонах oncheck -cI на secondary сервере? IDS7.31 FD10 ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2014, 15:51 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cpr, уже ничего не думаю. У меня давно не было практики администрирования Informix с репликацией. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.08.2014, 18:48 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, на secondary ловятся ошибки. Есть мнение что надо останавливать репликацию, но этот вариант мне лично не нравится. Тестирую на копии восстановленной через ontape ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2014, 12:17 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cprАнатоЛой, на secondary ловятся ошибки. В ontape -cI? Какие? cprЕсть мнение что надо останавливать репликацию, но этот вариант мне лично не нравится. Разобравшись, что представляет из себя ошибка модно "легко" проверить, проявляется ли найденная ошибка на бизнес-приложении. Например, если ошибка о несоответствии ключа и ROWID, запрос по значению ключа на primary и на secondary даст разные результаты/ cprТестирую на копии восстановленной через ontape Тестируете что? ontape -cI? ... |
|||
:
Нравится:
Не нравится:
|
|||
13.08.2014, 14:46 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, На вторичном сервере на рабочей системе oncheck -cI предлагает пересоздать индекс. Тестируем копию системы, которая восстановлена с помощью ontape. про ontape -cI ничего не писал ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 14:33 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cprАнатоЛой, На вторичном сервере на рабочей системе oncheck -cI предлагает пересоздать индекс. Это я так и понял раньше. cprТестируем копию системы, которая восстановлена с помощью ontape. про ontape -cI ничего не писал 1. "Копию системы" - это тоже пара? 2. Тестируете на предмет чего? Полный цикл для продукта? Или попытка воссоздать ситуацию с поломанным индексом на вторичном сервере? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 14:49 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Копия системы это похожий сервер с аналогичной дисковой подсистемой. экземпляр восстанавливаем из архива системы, заподозренной в рзвале индексов ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 15:44 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
Или вы не выдаёте важную информацию для понимания, или логика действий мне непонятна. На входе: первичный и вторичный сервер. На первичном проблем нет, на вторичном битый индекс. Процесс тестирования: вы создаёте копию первичного, правда на железе, похожем на вторичный. копию создаётё из архива. Что таким образом можно проверить: а) Нет ли битых индексов уже в архиве? (на первичном битых сейчас нет, так что скорее всего с архивом всё в порядке, хотя и вероятна ситуация, когда на первичном индексы пересоздавались после архивирования, и потому уже не битые) б) Нет ли проблем с партией железа? Имхо: тестирование для поиска причин выглядит скудно. Бинго: Bkb вы просто проверяете, не будет ли сбоев при попытке промышленного восстановления secondary? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 15:53 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Последовательность такова 1. oncheck показывает на вторичном ошибки. 2. На вторичном идут активные изменения данных, остановить репликацию возможности нет. Остановить первичный сервер тоже нельзя. 3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере. 4. Проверяю наличие ошибок на восстановленном сервере. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 17:13 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cprНа вторичном идут активные изменения данных У вас вторичка работает в режиме read/write или логи накатываются интенсивно ? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.08.2014, 22:44 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
victor16, там в самом верху написаон, что речь идет о IDS 7.31 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2014, 10:01 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cpr, сформулируйте чётко цели ваших действий. Варианты: 1. Выяснить, являются ли ошибки, на которые указывает oncheck -cI на вторичном сервере, проблемой (вдруг это баг oncheck -cI на вторичных серверах). 2. Если проблемы есть, необходимо избавиться от проблемы текущей (перестроить индекс, например) 3. Попоытаться найти и устранить причину возникноения проблемы (почему индекс поломался) > Последовательность такова > 1. oncheck показывает на вторичном ошибки. На первичном же не показывает, правильно? > 2. На вторичном идут активные изменения данных, ??? В смысле, активное использование данных? > остановить репликацию возможности нет. Завести пользователей вторичного на первичный точно никак нельзя? > Остановить первичный сервер тоже нельзя. Для чего вам это? Чтобы пересоздать индекс на первичном (и, соответственно, индекс пересоздатся на вторичном)? > 3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере. Сам архив 0-го уровня вы же снимали с первичного, не так ли? > 4. Проверяю наличие ошибок на восстановленном сервере. Не понимаю, что вам даст результат. Что будет, если ошибок на восстановленном вы не найдёте? И что будет, если ошибки не восстановленном вы найдёте? П.С.: Такое ощущение, что у вас БОЛЬШАЯ запара, и вы суетитесь, вместо спокойного, но эффективного анализа ситуации.... ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2014, 13:10 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, >cpr, сформулируйте чётко цели ваших действий. Выяснить есть ли разрушения индексов. Если есть, то индексы пересоздать. >> Последовательность такова >> 1. oncheck показывает на вторичном ошибки. >На первичном же не показывает, правильно? На первичном нет возможности запустить oncheck т.к. система постоянно в работе. Время возможного даунтайма посредине рабочей недели значительно меньше времени, требуемого для oncheck -cI. Отсюда и все заморочки. >> 2. На вторичном идут активные изменения данных, >??? В смысле, активное использование данных? Я конечно выразился весьма криво. Возможно здесь все и запутались. Активное изменение данных идет на первичке, а на вторичке данные естественно также меняются вследствии синхронной репликации. >> остановить репликацию возможности нет. >Завести пользователей вторичного на первичный точно никак нельзя? Вторичный сервер read-only и получает на себя строго ограниченный набор запросов на чтение данных. Мое высказывание было сказано к тому, что я не могу себе позволить остановить HADR и чекнуть индексы пока данные на вторичке неизменны. >> Остановить первичный сервер тоже нельзя. >Для чего вам это? Чтобы пересоздать индекс на первичном (и, соответственно, индекс пересоздатся на вторичном)? Объемы слишком большие. У меня в режиме HADR только удаление больших индексов занимает очень долгое время. Для переиндексации больших таблиц HADR разбираем. Вся процедура занимает более суток. >> 3.Для проверки наличия ошибок делаю архив уровня 0 и восстанавливаю на отдельном сервере. >Сам архив 0-го уровня вы же снимали с первичного, не так ли? Ну хоть в чем то нам удалось друг друга понять. С secondary сервера снять архив нулевого уровня физически нельзя. Архив уровня ноль делается на первичном сервере в период наименьшей нагрузки. >> 4. Проверяю наличие ошибок на восстановленном сервере. >Не понимаю, что вам даст результат. >Что будет, если ошибок на восстановленном вы не найдёте? В этом весь вопрос. На текущий момент я буду считать что ошибок в индексах нет. Т.к. похоже , что ошибки показанные oncheck-ом на вторичном сервере при работающем HADR ненастоящие. >И что будет, если ошибки не восстановленном вы найдёте? Возрадуюсь. >П.С.: Такое ощущение, что у вас БОЛЬШАЯ запара, и вы суетитесь, вместо спокойного, но эффективного анализа ситуации.... Нет, все как обычно, каков вопрос - таков ответ. У нас как в том анекдоте: - приборы - 40 ... - чего 40 ? - а чего приборы? Вопрос стоит так : Исходные данные - 1. IDS 7.31 , HADR 2. Объем БД требует на выполнения oncheck -cID -n например двое суток. 3. Возможное время останова системы в сутки не более нескольких часов. Вопрос - как хотя бы раз в неделю делать проверку индексов? Примечание: говорим исключительно о возможностях собственно Informix 7.31. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2014, 15:49 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cprНа первичном нет возможности запустить oncheck т.к. система постоянно в работе. Неочевиден вывод. Попробуем разобрать. cprВремя даунтайма посредине рабочей недели значительно меньше времени, требуемого для oncheck -cI. ... я не могу себе позволить остановить HADR и чекнуть индексы пока данные на вторичке неизменны. Просматривается ваше предположение: проверка индексов требует эксклюзивного доступа проверяющего. Оно не совсем верно. cprИсходные данные - 1. IDS 7.31 , HADR 2. Объем БД требует на выполнения oncheck -cID -n например двое суток. 3. Возможное время останова системы в сутки не более нескольких часов. Вопрос - как хотя бы раз в неделю делать проверку индексов? Примечание: говорим исключительно о возможностях собственно Informix 7.31. Есть вариант не 100% проверки: 1. Убедиться, что таблицы проверяемых индексов имеют уровень блокировки ROW, а не PAGE. 2. Для проверки индексов запускать oncheck на первичном сервере с параметрами -cI w . Такая проверка: + не требует downtime, поскольку не накладывает эксклюзивную блокировку на таблицу; + не ДОЛЖНА привести к ошибкам работы пользователей (на самом деле зависит от степени долбанутости приложения); - даст не 100% проверку данных - по тем страницам индекса , которые во время проверки будут параллельно изменены пользователями, данные проверяться не будут. Для повышения качества проверки можно запустить проверку с разной частотой для разных таблиц и индексов (правда, это требует анализ частоты обновления этих таблиц и индексов). П.С.: "When you use the -w option, the oncheck utility places an intent shared (IS) lock on the table. An IS lock allows other users to read and update the table during the execution of the oncheck utility on an index. The IS lock also prevents DDL activity (such as a DROP INDEX or DROP TABLE statements) during the execution of oncheck." "If a user updates, inserts, or deletes column values that are key values in the index that oncheck is checking, the user’s changes still take effect. If oncheck encounters an index page that the user updated, it ignores the updated page . If you want 100-percent assurance that the index is good, do not use the -w option of oncheck" (с) Performance Guide IDS 7.3 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2014, 17:15 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Спасибо, попробую. В субботу и воскресенье нагрузка на систему значительно снижается. Если oncheck -cIw не будет мешать работать оставшимся пользователям то шансы есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2014, 10:04 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
мда уже более двух суток чекается на копии, которая без нагрузки совсем и еще не закончилось. Надежды на проверку с опцией w на продуктивной системе стремительно тают ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2014, 19:55 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cpr, что у вас за объемы данных? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2014, 20:21 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
запрос в sysmaster select round(sum(chksize*2)/(1024*1024)) as size_gb, round(sum(nfree*2)/(1024*1024)) as free_gb from syschunks дает следущее size_gb free_gb 2174 1080 ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 11:02 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
cpr, oncheck вы натравливаете на всю базу. И почему решили в приципе запускать oncheck? Потому что рук. администратора рекомендует делать это регулярно или есть ещё предпосылки? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 12:02 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Причина проверки - падение сервера по причине старого доброго бага mtex.c ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 16:42 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
АнатоЛой, Ну и рекомендации регулярной проверки ... |
|||
:
Нравится:
Не нравится:
|
|||
20.08.2014, 16:43 |
|
разница между oncheck -ci и oncheck -cI
|
|||
---|---|---|---|
#18+
Из вариантов, похоже: 1. забить :(. 2. смена версии IDS. 2.0. Проверить производительность oncheck на новой версии 2.1. получить поддержку (и обновления) - для борьбы с первопричинами разрушений - раз 2.2. получить больше возможностей бороться с последствиями - (ONLINE DROP/CREATE INDEX) - два "+" - "+" прочие плюшки "- " - "+" геморрои перехода. П.С.: И судя по другим постам, вы пришли к такому же выводу? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.08.2014, 14:57 |
|
|
start [/forum/topic.php?fid=44&msg=38718407&tid=1606902]: |
0ms |
get settings: |
17ms |
get forum list: |
5ms |
check forum access: |
1ms |
check topic access: |
1ms |
track hit: |
22ms |
get topic data: |
3ms |
get forum data: |
1ms |
get page messages: |
426ms |
get tp. blocked users: |
0ms |
others: | 294ms |
total: | 770ms |
0 / 0 |