07.09.2006 14:41
artyom
 
Говорят применение стандартных утилит Oracle exp.exe и imp.exe здорово помогает дефрагментировать базу. Я попробовал на своей: экспорт прошел успешно с помощью bat-файла
set nls_lang=american_america.cl8mswin1251
exp.exe userid=sys/qqq@dbase full=y file=e:\oracle\full.dat log=e:\expimp\full.log

Затем я создал новую базу с параметрами старой.
Импорт батником
set nls_lang=american_america.cl8mswin1251
imp.exe userid=sys/qqq@dbase file=e:\expimp\full.dat fromuser=sys touser=sys log=e:\expimp\full.log

прошел как - то непонятно:
oracle сказал, что импорт произошел успешно, но во первых длился он секунд 30, во вторых в новой базе никаких таблиц я не обнаружил.
Видать что-то я сделал не правильно, вот только что?
07.09.2006 14:51
OlegON
 
А в логах-то что? И что в файле дампа? Поищи по форуму, по слову GRANT, аналогичные темы уже были. У тебя нет, как минимум ignore=y и fromuser, touser здесь неуместны.
20.09.2006 13:49
artyom
 
1)Сделал экспорт и импорт с помощью батников
set nls_lang=american_america.cl8mswin1251
exp.exe userid=sys/qqq@db2000 FULL=Y feedback=10000 consistent=y compress=n file=essen01.dmp log=log_e.txt
и
set nls_lang=american_america.cl8mswin1251
imp.exe userid=sys/qqq@db2000 full=y feedback=10000 ignore=y commit=y file=essen01.dmp log=log_i.txt

2)В файле дампа содержаттся ошибки вроде:
ORA-06512: y? "SUPERMAG.CORE", line 268
ORA-06512: y? "SU?y?y
ORA-06512: y? "SUPERMAG.CASH", line 920
ORA-01403: o?yyuo yo y?uooy??y?y
Кодировка что-то подкачала.

3)После представления грантов:
GRANT SELECT ON SYS.DBA_JOBS TO SUPERMAG WITH GRANT OPTION;
GRANT SELECT ON SYS.DBA_ROLES TO SUPERMAG;
GRANT SELECT ON SYS.DBA_USERS TO SUPERMAG WITH GRANT OPTION;
GRANT EXECUTE ON SYS.DBMS_ALERT TO SUPERMAG;
GRANT EXECUTE ON SYS.DBMS_LOCK TO SUPERMAG;
GRANT EXECUTE ON SYS.DBMS_PIPE TO SUPERMAG;
GRANT SELECT ON SYS.V_$SESSION TO SUPERMAG;
и компиляции, инвалидными остались объекты
Packedge Body
SCHEDULE
С ошибками
Line # = 2 Column # = 22 Error Text = PLS-00201: идентификатор 'SVJOBS' должен быть объявлен
Line # = 2 Column # = 2 Error Text = PL/SQL: Item ignored
Line # = 217 Column # = 8 Error Text = PLS-00201: идентификатор 'SVJOBS.WHAT' должен быть объявлен
Line # = 217 Column # = 8 Error Text = PL/SQL: Item ignored
Line # = 248 Column # = 3 Error Text = PL/SQL: SQL Statement ignored
Line # = 251 Column # = 8 Error Text = PLS-00320: описание типа этого выражения незавершено или выполнено неверно
Line # = 259 Column # = 30 Error Text = PLS-00320: описание типа этого выражения незавершено или выполнено неверно
Line # = 259 Column # = 3 Error Text = PL/SQL: Statement ignored
Line # = 279 Column # = 5 Error Text = PLS-00320: описание типа этого выражения незавершено или выполнено неверно
Line # = 279 Column # = 2 Error Text = PL/SQL: Statement ignored
Line # = 391 Column # = 48 Error Text = PLS-00311: объявление "TJOBINFO" неполное или неправильно сформировано
Line # = 391 Column # = 1 Error Text = PL/SQL: Item ignored
Line # = 405 Column # = 29 Error Text = PLS-00201: идентификатор 'SVJOBS' должен быть объявлен
Line # = 405 Column # = 2 Error Text = PL/SQL: SQL Statement ignored
Line # = 415 Column # = 13 Error Text = PLS-00307: слишком много описаний 'GETJOBID' соответствуют этому вызову
Line # = 415 Column # = 5 Error Text = PL/SQL: Item ignored
Line # = 417 Column # = 8 Error Text = PLS-00201: идентификатор 'SVJOBS.WHAT' должен быть объявлен
Line # = 417 Column # = 8 Error Text = PL/SQL: Item ignored
Line # = 429 Column # = 2 Error Text = PLS-00320: описание типа этого выражения незавершено или выполнено неверно
Line # = 429 Column # = 2 Error Text = PL/SQL: Statement ignored

и
View
SVTSHIPZONEINC
SVSHIPZONEINC
SVDEPOTRQSPEC
SVCLIENTDOCS
SVSPECSO
SVSPECNOPRICESO
SVSHOPGROUPFIFO
SVSPECSTATREP
С ошибкой
Line # = 0 Column # = 0 Error Text = ORA-00942: таблица или представление пользователя не существует
Никто не знает, как победить проблему.
20.09.2006 13:52
Mtirt
 
Ну насколько я понимаю, ты импортировал только схему SYS, точнее объекты, владельцем которых является SYS.
Убери fromuser и touser и попробуй еще раз тоже самое сделать.
20.09.2006 13:55
OlegON
 
А там же, кажется, где ты гранты брал, либо в соседней ветке, здесь, на форуме, kadr говорил о том, что у него на эту вьюху тоже гранты не дались, посмотри, может найдешь решение... А то и просто, дай на нее гранты сам, да и все... Я про SVJOBS говорил... Что касается фрагментации, пускай оптимайзера и не парься. Такие мучения с этим импортом/экспортом неоправданы в данном случае.
20.09.2006 13:57
Mtirt
 
SVJobs иногда после импорта пересоздавать приходится. Она не всегда создается почему-то...
20.09.2006 14:18
artyom
 
Ребята, простите! Батники я использовал другие

set nls_lang=american_america.cl8mswin1251
exp.exe userid=sys/qqq@db2000 FULL=Y feedback=10000 consistent=y compress=n file=db2000.dmp log=log_e.txt

set nls_lang=american_america.cl8mswin1251
imp.exe userid=sys/qqq@db2000 full=y feedback=10000 ignore=y commit=y file=db2000.dmp log=log_i.txt

Засорил понимаете ли рабочий стол всякими командными файлами.
20.09.2006 14:23
OlegON
 
На самом деле не столь важно... Есть у тебя эта SVJOBS ?
20.09.2006 14:51
artyom
 
Запись в DBA:
Schema: Supermag
View: SVSYSJOBS
Status: Valid
20.09.2006 14:54
OlegON
 
Error Text = PLS-00201: идентификатор 'SVJOBS' должен быть объявлен
чувствуешь разницу?
Часовой пояс GMT +3, время: 11:22.

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