- Este tópico contém 33 respostas, 4 vozes e foi atualizado pela última vez 14 anos, 3 meses atrás por
rman.
-
AutorPosts
-
11 de novembro de 2011 às 8:16 pm #101599
msantino
ParticipanteFalae galera, blz? Já to aqui de novo pra pedir uma ajudinha! rs…
Estou tentando puxar um DUMP de um banco e estou recebendo a seguinte mensagem:
[b]ORA-39171: Job is experiencing a resumable wait.
ORA-01653: unable to extend table SYSTEM.SYS_EXPORT_FULL_01 by 128 in tablespace SYSTEM[/b]Vi que o tablespace SYSTEM estava lotado e então acrescentei novo DATAFILE nele pra ver se resolve, mas mesmo assim continuo recebendo o mesmo erro. Sendo que mesmo assim, o SYSTEM está como AUTO EXTENT, então não teria motivos pra ele não crescer, já que há espaço em disco suficiente.
Alguma sugestão de o que devo verificar?
Vlw pessoal…
11 de novembro de 2011 às 8:19 pm #101600diegolenhardt
Participantetenta dar um resize no datafile da system
aumentando nuns 20 mega / 50 mega..
11 de novembro de 2011 às 8:32 pm #101601msantino
ParticipantePo mas eu já adicionei um de 3GB com maxsize de 20gb. Ele não aumentaria automaticamente esse cara?
11 de novembro de 2011 às 8:52 pm #101603diegolenhardt
Participantedeveria sim, se setado como auto extend tinha que aumentar…
faz um teste aumentando o primeiro datafile …
deve funcionar…
11 de novembro de 2011 às 9:29 pm #101606msantino
ParticipanteO lance é que o primeiro já tem 30GB! rs..
Deixei rolando pra ver o que ia acontecer e ocorreram mais uma série de erros desses:
[b]ORA-39171: Job is experiencing a resumable wait.
ORA-01653: unable to extend table SYSTEM.SYS_EXPORT_FULL_01 by 128 in tablespace SYSTEM[/b]Umas 10x!
Aí depois, morreu nisso:
[b]ORA-39125: Worker unexpected fatal error in KUPW$WORKER.GET_TABLE_DATA_OBJECTS while calling DBMS_METADATA.FETCH_XML_CLOB [TABLE_DATA:”D1007″.”DPCGIAZF_GIAZF”]
ORA-01555: snapshot too old: rollback segment number 17 with name “_SYSSMU17$” too small
ORA-06512: at “SYS.DBMS_SYS_ERROR”, line 105
ORA-06512: at “SYS.KUPW$WORKER”, line 6313
—– PL/SQL Call Stack —–
object line object
handle number name
0x913b01b0 15032 package body SYS.KUPW$WORKER
0x913b01b0 6372 package body SYS.KUPW$WORKER
0x913b01b0 9206 package body SYS.KUPW$WORKER
0x913b01b0 1936 package body SYS.KUPW$WORKER
0x913b01b0 6944 package body SYS.KUPW$WORKER
0x913b01b0 1314 package body SYS.KUPW$WORKER
0x15bcfeed0 2 anonymous block
Job “SYSTEM”.”SYS_EXPORT_FULL_01″ stopped due to fatal error at 14:08:16
[/b]Será que é isso mesmo? Tem que aumentar o primeiro datafile? Sendo que tipo, porque esse datafile está tão extenso se os objetos dos usuários têm seus próprios tablespaces?
11 de novembro de 2011 às 9:39 pm #101608rman
Participante@msantino
Não ficou claro, você está tentando fazer um IMPDP ou EXPDP ?
Você está usando o usuário SYSTEM para fazer o procedimento ?
11 de novembro de 2011 às 9:41 pm #101609msantino
ParticipanteEXPDP. Sim, usando o SYSTEM.
11 de novembro de 2011 às 9:43 pm #101610diegolenhardt
Participanteta fazendo um expdp, e o oracle deve gravar uma tabela de controle dele com informacoes sobre o job do dump, e essa tabela esta no user system
ta muito grande essa system hein cara….
tenta localizar onde esta,
no TOAD tem um tablespace analyze, que mostra o que está alocado, as vezes pode ate ser fragmentacao, voce pode até conseguir diminui-la.vai ganhar até performance…
11 de novembro de 2011 às 9:53 pm #101611msantino
ParticipantePo mas que informações heim!
Vou dar uma olhada. Esse TOAD q vc falou é o for oracle?
11 de novembro de 2011 às 9:56 pm #101613rman
Participante@msantino
Quando você usa o EXPDP ele cria uma tabela de controle no início do processo e destroi no final, como você está usando o usuário SYSTEM, a tabela está sendo criada no TABLESPACE SYSTEM.
É recomendado criar um usuário especifico para fazer dump. Exemplo:
CREATE USER "DATAPUMP" PROFILE "DEFAULT" IDENTIFIED BY "senha" DEFAULT TABLESPACE "USERS" TEMPORARY TABLESPACE "TEMP" QUOTA UNLIMITED ON "USERS" ACCOUNT UNLOCK;
GRANT "CONNECT" TO "DATAPUMP";
GRANT "EXP_FULL_DATABASE" TO "DATAPUMP";
GRANT "IMP_FULL_DATABASE" TO "DATAPUMP";
GRANT "FLASHBACK ANY TABLE" TO "DATAPUMP";
Neste caso, com uma TABLESPACE USERS de 100 mb aqui é suficiente.
O mais interessante em utilizar um usuário especifico para o dump é para não expor a senha do usuário SYSTEM, caso você for automatizar a geração.
11 de novembro de 2011 às 10:03 pm #101616msantino
ParticipanteEntendi rman, faz todo sentido!
O problema é que entrei agora na empresa. Antes eu trabalhava com SQL Server e estou me ambientando aos poucos, mas com calma vou tentar organizar isso.
A dica do usuário já está guardada nas “taferas a implementar”! hehehehe
valeu pela ajuda pessoal!
11 de novembro de 2011 às 10:06 pm #101617diegolenhardt
Participantenão sei se a criação vai resolver…
acho que é algo interno, do sistema mesmo, do oracle…
faz o teste e diz ae…
=)
11 de novembro de 2011 às 10:46 pm #101619fabiogalera
ParticipanteDependendo da versao do Oracle que voce esta, existe alguns comportamentos do EXPDP e IMPDP, utilizando o RESUMABLE, que eles simplesmente realizam um PAUSE do processo, bastando que voce entrei novamente e faca um restart no processo.
Outras possibilidades, acontecem caso a Base de Dados esteja um pouco perdida (tenha certeza que isso acontece algumas vezes hehe)
tente forcar um switch nos logfile e realizar um checkpoint
alter system switch logfile;
alter system checkpoint;
Caso nao funcione, tente inserir dados na tabela SYSTEM.SYS_EXPORT_FULL_01 (lembre-se de dar ROLLBACK depois)
Espero ter ajudado.
14 de novembro de 2011 às 8:52 pm #101630msantino
ParticipanteGalera, não deu muito certo! rs…
Eu aumentei o SYSTEM e não resolveu. Aí eu observei que as SESSIONs do backup ficam sempre em Waiting… Procurei ver se existia alguma fila de JOBs de backup e achei!
A dba_datapump_jobs estava cheia de registros. E vi também que pra cada JOB de datapump cria uma tabela bizarramente grande, as quais estavam lotando o meu tablespace SYSTEM.
Então eu matei todos os jobs de data pump (entrei em cada um deles pelo attach e dei kill_job). Depois disso consegui liberar 69GB da SYSTEM e nenhum JOB preso na fila. Só que apesar de não receber mais a mensagem original desse post (ORA-01653), o JOB não progride… simplesmente o backup não passa da etapa:
Starting “DATAPUMP”.”SYS_EXPORT_FULL_01″: datapump/******** FULL=Y directory=DATA_PUMP_DIR dumpfile=nome_do_arquivo_%U.dmp logfile=nome_do_arquivo.log ESTIMATE=STATISTICS PARALLEL=20 EXCLUDE=SCHEMA:”=’SYS'” EXCLUDE=SCHEMA:”=’SYSTEM'” EXCLUDE=SCHEMA:”=’SYSMAN'”
Estimate in progress using STATISTICS method…
Processing object type DATABASE_EXPORT/SCHEMA/TABLE/TABLE_DATA
Não passa disso! Fica horas nisso e não evolui.
Testei então criar o usuário DATAPUMP com um tablespace exclusivo, com total de 100GB mas acontece a mesma coisa.
Agora, por exemplo, o backup já está rolando há 20 minutos no status acima. O arquivo de backup nome_do_arquivo_%U.dmp possui 4kb e o tablespace possui 14MB de ocupado.
Alguém faz idéia do que pode estar travando esses backups? Nem restores eu consigo fazer!
14 de novembro de 2011 às 9:19 pm #101631rman
Participante@msantino
Tem algo estranho no comando de exportação, foi você que montou ou já estava montado ?
Você está usando FULL com EXCLUDE. Tente fazer a exportação utilizando SCHEMAS.
Outra pergunta, qual é o tamanho do banco ?
Dependendo do tamanho, pode parecer que está travado, mas na verdade pode demorar mesmo…
Qual é o estado do job na tabela dba_datapump_jobs ?
-
AutorPosts
- Você deve fazer login para responder a este tópico.