[ТЕМА ЗАКРЫТА]
15.09.2015 14:31
[+kliN+]
 
Здравствуйте, обнаружил логи оптимайзера в которых говорится о бэд блоках.
вот кусочек:

Код:
Message from VMARKET.SRV-SMP.24563282691422002
15.09.15 06:28:00 -- Invalids in database : AUCTIONS
15.09.15 06:28:48 -- ALERT! Bad blocks in database:
15.09.15 06:44:25 -- INDEX:SUPERMAG.SACDISCREASON_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTFAILOUTVP_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTRULESEX_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SACSCALES_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCREVALCLASS_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCGOODSSCALE_LOC
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCCREDPREF_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCTAXIDENTITY_TAXID
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTTRUSTEDRULES_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTCLIENTRULES_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTTABLE_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCPOSTQUEUELINK_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SACCARDCLASSIMAGE_PK
15.09.15 06:44:25 -- INDEX:SUPERMAG.SACSCALES_NAME
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMSTOREORDERSTASKLOCS_SHOP
15.09.15 06:44:25 -- INDEX:SUPERMAG.SMCTAXIDENTITY_PK
запрос
Код:
 select * from v$database_block_corruption;
выдал 106 строк. все строки FILE# 5
проверил все файлы индексов с помощью DBV - сбойных страниц 0
blockrecovery пробовал, отрабатывает за 1 сек, но сбойных блоков не уменьшается.
что делать?
15.09.2015 14:50
[+kliN+]
 
проверил с помощью dbv файд users01, выявилось 1235 нарушенных страниц о_О

Цитата:
DBV-00201: Блок, АБД 21121534, помечен как поврежденный из-за недопустимого прим
енения повтора операции

DBV-00201: Блок, АБД 21121535, помечен как поврежденный из-за недопустимого прим
енения повтора операции


DBVERIFY - верификация выполнена

Всего страниц проверено : 874880
Всего страниц обработано (Data) : 370649
Всего сбойных страниц (Data) : 0
Всего страниц обработано(Index): 471246
Всего сбойных страниц (Index): 0
Всего обработанных страниц (другие): 17564
Всего обработано страниц (сег.) : 0
Всего страниц со сбоями (сег.) : 0
Всего пустых страниц : 15421
Всего страниц, помеч.наруш. : 1235
Всего входных страниц : 0
Всего страниц зашифровано : 0
Наибольший SCN блоков : 552844951 (0.552844951)
15.09.2015 15:57
OlegON
 
Обязательно сделай холодную копию, потом только начинай плясать. Первым делом ребутни ОС, это недоразумение достаточно часто бывает причиной ошибок.
Перевод в UNUSABLE индексов пользователя для начала и прогони опта, чтобы он их отребилдил. Тему про увеличение доступности БД тут почитай, я запарился ее всем приводить... Твердишь, твердишь людям...
19.11.2015 11:25
[+kliN+]
 
Перезапуск сервера ничего не изменил, решил развернуть эту базу в другом месте для тестов.
Экспорт выполнелся без ошибок.
Импортнул в с ошибками, но @utlrp sql инвалидов не выявил. И все таки "генератором бд" прогнать не удалось. выдал ошибку на пакете supermag.office (хотя бы бэдблоков в базе нету)
Открыл базу в db forge studio для оракла. Под пользователем SYS инвалидов нету. Под пользователем SUPERMAG инвалидных таблиц и представлений тоже нету, но Пакеты, Процедуры, Финкции и Триггеры имеют инвалиды которые не компилируются средствами db forge studio

как быть дальше?
19.11.2015 11:27
Ferus
 
Код:
SPOOL compile.sql 
SELECT 'alter ' 
|| DECODE ( 
o.object_type, 
'VIEW', 'VIEW', 
'PACKAGE', 'PACKAGE', 
'PACKAGE BODY', 'PACKAGE', 
'PROCEDURE', 'PROCEDURE', 
'TRIGGER', 'TRIGGER', 
'FUNCTION', 'FUNCTION' 
) 
|| ' ' 
|| o.owner 
|| '.' 
|| o.object_name 
|| ' compile ' 
|| DECODE ( 
o.object_type, 
'VIEW', '', 
'PACKAGE', 'PACKAGE', 
'PACKAGE BODY', 'BODY', 
'PROCEDURE', '', 
'TRIGGER', '', 
'FUNCTION', '' 
) 
|| ';' 
FROM all_objects o 
WHERE o.owner = USER 
AND o.object_type IN ('VIEW', 
'PACKAGE', 
'PACKAGE BODY', 
'PROCEDURE', 
'TRIGGER', 
'FUNCTION' 
) 
AND o.status = 'INVALID' 
ORDER BY o.owner, o.object_type, o.object_name; 
SPOOL off 
--------------------------------------------------- 
@compile
Оно?
19.11.2015 11:31
Ferus
 
Цитата:
[+kliN+] ...
Импортнул ...

как быть дальше?
grant'ы раздали?
19.11.2015 11:43
[+kliN+]
 
Гранты раздал
19.11.2015 11:45
[+kliN+]
 
Цитата:
Ferus
Код:
SPOOL compile.sql 
SELECT 'alter ' 
|| DECODE ( 
o.object_type, 
'VIEW', 'VIEW', 
'PACKAGE', 'PACKAGE', 
'PACKAGE BODY', 'PACKAGE', 
'PROCEDURE', 'PROCEDURE', 
'TRIGGER', 'TRIGGER', 
'FUNCTION', 'FUNCTION' 
) 
|| ' ' 
|| o.owner 
|| '.' 
|| o.object_name 
|| ' compile ' 
|| DECODE ( 
o.object_type, 
'VIEW', '', 
'PACKAGE', 'PACKAGE', 
'PACKAGE BODY', 'BODY', 
'PROCEDURE', '', 
'TRIGGER', '', 
'FUNCTION', '' 
) 
|| ';' 
FROM all_objects o 
WHERE o.owner = USER 
AND o.object_type IN ('VIEW', 
'PACKAGE', 
'PACKAGE BODY', 
'PROCEDURE', 
'TRIGGER', 
'FUNCTION' 
) 
AND o.status = 'INVALID' 
ORDER BY o.owner, o.object_type, o.object_name; 
SPOOL off 
--------------------------------------------------- 
@compile
Оно?
щас попробую этот скрипт, но под кем его делать? под SYS инвалидов нету, под SUPERMAG выполнить?
19.11.2015 12:29
Ferus
 
Код:
WHERE o.owner = USER
supermag


Под sys у тебя и так все хорошо
19.11.2015 13:27
OlegON
 
Оптимайзер прогнал - остались инвалиды? Как звать?
19.11.2015 14:17
[+kliN+]
 
оптимайзер там каждый день работает с параметром "-o"
19.11.2015 14:18
[+kliN+]
 
Цитата:
[+kliN+] оптимайзер там каждый день работает с параметром "-o"
на боевой базе.

оптимайзер гнать на той базе, которая после импорта?
19.11.2015 14:28
[+kliN+]
 
скрипт прогнал, что-то откомпилировалось
вот кусок результата
Цитата:
alter TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD compile ;
alter TRIGGER SUPERMAG.SVSTOREUNITSBEFORED compile ;
alter TRIGGER SUPERMAG.SVSTOREUNITSBEFOREIU compile ;
alter TRIGGER SUPERMAG.SVWORKFLOWRUNPOSTUPDATE compile ;
alter TRIGGER SUPERMAG.TRI_SMCUSTOMLABELS_PRESET compile ;
alter TRIGGER SUPERMAG.TRI_SSPAYMENTOPERBINDINGS compile ;

292 rows selected.
но после этого "db forge" все равно видит эти объекты как инвалидные и не компилирует их.
19.11.2015 14:32
Ferus
 
Цитата:
[+kliN+] скрипт прогнал, что-то откомпилировалось
вот кусок результата

но после этого "db forge" все равно видит эти объекты как инвалидные и не компилирует их.
Прогонять до тех пор пока не будет алертов
19.11.2015 14:34
Ferus
 
Код:
db forge
все же надежней select * from all_objects where status = 'INVALID'
19.11.2015 14:40
[+kliN+]
 
Цитата:
Ferus
Код:
db forge
все же надежней select * from all_objects where status = 'INVALID'
307 rows selected.
19.11.2015 14:47
Ferus
 
Какой результат
Код:
select o.status from all_objects o where o.object_name ='SVPOSTRULESBEFOREIUD'
19.11.2015 14:49
Ferus
 
Цитата:
[+kliN+] 307 rows selected.
И кстати не только под SUPEMAG есть инвалиды
307 rows selected.
292 rows selected.
Что то с импортом совсем не то.
19.11.2015 14:52
Ferus
 
Цитата:
[+kliN+] STATUS
-------
INVALID
Нужно капать почему не компилятся

alter TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD compile ;
Что пишет?
19.11.2015 14:59
[+kliN+]
 
SQL> alter TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD compile ;

Warning: Trigger altered with compilation errors.
19.11.2015 15:03
Ferus
 
как пример, не знаю покажет что-нибудь
show error [тип] [имя]
19.11.2015 15:07
[+kliN+]
 
хм...
попробовал на парочке

SQL> show error package office;
No errors.
SQL> show error package cash;
No errors.
19.11.2015 15:11
[+kliN+]
 
SQL> show error TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD;
Errors for TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD:

LINE/COL ERROR
-------- -----------------------------------------------------------------
2/2 PL/SQL: Statement ignored
3/11 PLS-00905: object SUPERMAG.POST is invalid
19.11.2015 15:21
OlegON
 
Думается, что ошибки импорта ты не посмотрел... И что-то нужное не влезло.
19.11.2015 15:40
[+kliN+]
 
ошибки то смотрел

IMP-00015 - дофига ошибок
IMP-00061 - одна ошибка
IMP-00091 одна ошибка
IMP-00041 - около 300
IMP-00017 - одна ошибка
IMP-00003 - одна ошибка

но что с ими делать?
19.11.2015 16:57
OlegON
 
Я по номерам все их и не помню. Описание-то почитай, к каким объектам относится...
20.11.2015 06:53
Ferus
 
Цитата:
[+kliN+] ошибки то смотрел

IMP-00015 - дофига ошибок
IMP-00061 - одна ошибка
IMP-00091 одна ошибка
IMP-00041 - около 300
IMP-00017 - одна ошибка
IMP-00003 - одна ошибка

но что с ими делать?
Ошибки IMP зачастую сопровождаются ORA-XXXXX.
Больше они интересны...
А в целом соглашусь с Олегом что-то не то в датском королевстве (криво импортировалось)
20.11.2015 06:56
Ferus
 
Цитата:
[+kliN+] SQL> show error TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD;
Errors for TRIGGER SUPERMAG.SVPOSTRULESBEFOREIUD:

LINE/COL ERROR
-------- -----------------------------------------------------------------
2/2 PL/SQL: Statement ignored
3/11 PLS-00905: object SUPERMAG.POST is invalid
Все просто. Не может скомпилироваться так-как объект, который ипсользуется, инвалидый.

Цитата:
Ferus Прогонять до тех пор пока не будет алертов


Опции темы


Часовой пояс GMT +3, время: 12:48.

 

Форум сделан на основе vBulletin®
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot и OlegON
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.