Re: [oracle_br] Re: Como saber se existem sessões c om trace ligado no banco de dados ?
Roland, alter system set max_dump_file_size=10; Ou qualquer outro numero pequeno. Atc, Luis Freitas On Friday, March 9, 2018 1:57 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Óbvio número dois : esse trace NÃO É ativado sozinho : ALGUÉM criou uma trigger de logon, um shell script (disparado por cron ou não), alguém alterou a aplicação, alguém alterou o parâmetro SQL_TRACE no banco, enfim ALGUÉM ativou isso - além de identificar QUAIS sessões estão com isso ativo, vc DEVERÁ IDENTIFICAR também QUEM fez e COMO FEZPra isso vc VAI ter que ter acesso ao servidor, aos códigos da aplic, aos shell scripts em uso/cron, às triggers do banco em questão, etc, etc, etc... O que PODE te ajudar é vc ABRIR os trace files gerados num editor de texto, pois algumas informações básicas (como username, data/hora de início do trace, SID/SERIAL# da sessão, etc) estão no cabeçalho do trace file gerado... []s Chiappa #yiv6560091953 #yiv6560091953 -- #yiv6560091953ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv6560091953 #yiv6560091953ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv6560091953 #yiv6560091953ygrp-mkp #yiv6560091953hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv6560091953 #yiv6560091953ygrp-mkp #yiv6560091953ads {margin-bottom:10px;}#yiv6560091953 #yiv6560091953ygrp-mkp .yiv6560091953ad {padding:0 0;}#yiv6560091953 #yiv6560091953ygrp-mkp .yiv6560091953ad p {margin:0;}#yiv6560091953 #yiv6560091953ygrp-mkp .yiv6560091953ad a {color:#ff;text-decoration:none;}#yiv6560091953 #yiv6560091953ygrp-sponsor #yiv6560091953ygrp-lc {font-family:Arial;}#yiv6560091953 #yiv6560091953ygrp-sponsor #yiv6560091953ygrp-lc #yiv6560091953hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv6560091953 #yiv6560091953ygrp-sponsor #yiv6560091953ygrp-lc .yiv6560091953ad {margin-bottom:10px;padding:0 0;}#yiv6560091953 #yiv6560091953actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv6560091953 #yiv6560091953activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv6560091953 #yiv6560091953activity span {font-weight:700;}#yiv6560091953 #yiv6560091953activity span:first-child {text-transform:uppercase;}#yiv6560091953 #yiv6560091953activity span a {color:#5085b6;text-decoration:none;}#yiv6560091953 #yiv6560091953activity span span {color:#ff7900;}#yiv6560091953 #yiv6560091953activity span .yiv6560091953underline {text-decoration:underline;}#yiv6560091953 .yiv6560091953attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv6560091953 .yiv6560091953attach div a {text-decoration:none;}#yiv6560091953 .yiv6560091953attach img {border:none;padding-right:5px;}#yiv6560091953 .yiv6560091953attach label {display:block;margin-bottom:5px;}#yiv6560091953 .yiv6560091953attach label a {text-decoration:none;}#yiv6560091953 blockquote {margin:0 0 0 4px;}#yiv6560091953 .yiv6560091953bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv6560091953 .yiv6560091953bold a {text-decoration:none;}#yiv6560091953 dd.yiv6560091953last p a {font-family:Verdana;font-weight:700;}#yiv6560091953 dd.yiv6560091953last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv6560091953 dd.yiv6560091953last p span.yiv6560091953yshortcuts {margin-right:0;}#yiv6560091953 div.yiv6560091953attach-table div div a {text-decoration:none;}#yiv6560091953 div.yiv6560091953attach-table {width:400px;}#yiv6560091953 div.yiv6560091953file-title a, #yiv6560091953 div.yiv6560091953file-title a:active, #yiv6560091953 div.yiv6560091953file-title a:hover, #yiv6560091953 div.yiv6560091953file-title a:visited {text-decoration:none;}#yiv6560091953 div.yiv6560091953photo-title a, #yiv6560091953 div.yiv6560091953photo-title a:active, #yiv6560091953 div.yiv6560091953photo-title a:hover, #yiv6560091953 div.yiv6560091953photo-title a:visited {text-decoration:none;}#yiv6560091953 div#yiv6560091953ygrp-mlmsg #yiv6560091953ygrp-msg p a span.yiv6560091953yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv6560091953 .yiv6560091953green {color:#628c2a;}#yiv6560091953 .yiv6560091953MsoNormal {margin:0 0 0 0;}#yiv6560091953 o {font-size:0;}#yiv6560091953 #yiv6560091953photos div {float:left;width:72px;}#yiv6560091953 #yiv6560091953photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv6560091953 #yiv6560091953photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv6560091953 #yiv6560091953reco-category {font-size:77%;}#yiv6560091953 #yiv6560091953reco-desc {font-size:77%;}#yiv6560091953 .yiv6560091953replbq {margin:4px;}#yiv6560091953 #yiv6560091953ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv6560091953 #yiv6560091953ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, cl
Re: [oracle_br] Re: Consulta muito lenta!!
Ola Rafael, Você pode postar o plano de execução novo? Atc,Luis Freitas On Monday, December 18, 2017 3:33 PM, "Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]" wrote: PEssoal, o problema foi resolvido. A solução na qual tomei como base foi a extração do relatório SQLT pelo sqlid da consulta. E no SQLT existia a recomendação para criação de um sqlprofile, que o ganho seria de 99%, após a criação do sql_profile abaixo execute dbms_sqltune.accept_sql_profile(task_name => 'sqlt_s47584_mem',task_owner => 'SYS', replace => TRUE); A query que rodava em 16 minutos, passou a rodar em 3 segundos. Valeu pessoal, obrigado a todos. Em Sexta-feira, 15 de Dezembro de 2017 19:43, "jlchia...@yahoo.com.br [oracle_br]" escreveu: Bom, pelo prompt de SQL> eu estou SUPONDO que vc optou por criar no sqlplus as bind variables todas necessárias e executar o SQL via sqlplus mesmo né ? Bom, DEVERIA FUNCIONAR certinho mas pra teste já que é assim mete o hint de gather_statistics mesmo no texto que vc entra entrando no sqlplus... Se ainda assim não mostrar o A-ROWs E o E-ROWs já repassa essa info pro Suporte SAP, é um sinal indicador que alguma coisa tá MUITO diferente nesse banco []s Chiappa #yiv4409151850 #yiv4409151850 -- #yiv4409151850ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv4409151850 #yiv4409151850ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv4409151850 #yiv4409151850ygrp-mkp #yiv4409151850hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv4409151850 #yiv4409151850ygrp-mkp #yiv4409151850ads {margin-bottom:10px;}#yiv4409151850 #yiv4409151850ygrp-mkp ..yiv4409151850ad {padding:0 0;}#yiv4409151850 #yiv4409151850ygrp-mkp .yiv4409151850ad p {margin:0;}#yiv4409151850 #yiv4409151850ygrp-mkp .yiv4409151850ad a {color:#ff;text-decoration:none;}#yiv4409151850 #yiv4409151850ygrp-sponsor #yiv4409151850ygrp-lc {font-family:Arial;}#yiv4409151850 #yiv4409151850ygrp-sponsor #yiv4409151850ygrp-lc #yiv4409151850hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv4409151850 #yiv4409151850ygrp-sponsor #yiv4409151850ygrp-lc .yiv4409151850ad {margin-bottom:10px;padding:0 0;}#yiv4409151850 #yiv4409151850actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv4409151850 #yiv4409151850activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv4409151850 #yiv4409151850activity span {font-weight:700;}#yiv4409151850 #yiv4409151850activity span:first-child {text-transform:uppercase;}#yiv4409151850 #yiv4409151850activity span a {color:#5085b6;text-decoration:none;}#yiv4409151850 #yiv4409151850activity span span {color:#ff7900;}#yiv4409151850 #yiv4409151850activity span .yiv4409151850underline {text-decoration:underline;}#yiv4409151850 .yiv4409151850attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv4409151850 .yiv4409151850attach div a {text-decoration:none;}#yiv4409151850 .yiv4409151850attach img {border:none;padding-right:5px;}#yiv4409151850 .yiv4409151850attach label {display:block;margin-bottom:5px;}#yiv4409151850 .yiv4409151850attach label a {text-decoration:none;}#yiv4409151850 blockquote {margin:0 0 0 4px;}#yiv4409151850 .yiv4409151850bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv4409151850 .yiv4409151850bold a {text-decoration:none;}#yiv4409151850 dd.yiv4409151850last p a {font-family:Verdana;font-weight:700;}#yiv4409151850 dd.yiv4409151850last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv4409151850 dd.yiv4409151850last p span.yiv4409151850yshortcuts {margin-right:0;}#yiv4409151850 div.yiv4409151850attach-table div div a {text-decoration:none;}#yiv4409151850 div.yiv4409151850attach-table {width:400px;}#yiv4409151850 div.yiv4409151850file-title a, #yiv4409151850 div.yiv4409151850file-title a:active, #yiv4409151850 div.yiv4409151850file-title a:hover, #yiv4409151850 div.yiv4409151850file-title a:visited {text-decoration:none;}#yiv4409151850 div.yiv4409151850photo-title a, #yiv4409151850 div.yiv4409151850photo-title a:active, #yiv4409151850 div.yiv4409151850photo-title a:hover, #yiv4409151850 div.yiv4409151850photo-title a:visited {text-decoration:none;}#yiv4409151850 div#yiv4409151850ygrp-mlmsg #yiv4409151850ygrp-msg p a span.yiv4409151850yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv4409151850 .yiv4409151850green {color:#628c2a;}#yiv4409151850 .yiv4409151850MsoNormal {margin:0 0 0 0;}#yiv4409151850 o {font-size:0;}#yiv4409151850 #yiv4409151850photos div {float:left;width:72px;}#yiv4409151850 #yiv4409151850photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv4409151850 #yiv4409151850photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv4409151850 #yiv4409151850reco-category {font-size
Re: [oracle_br] CLUSTERING FACTOR
Esse "CLUSTERING_FACTOR" também não conhecia :-). Não caiu na prova do OCP, rs. http://www.oracle.com/technetwork/issue-archive/2012/12-sep/o52asktom-1735913.html "In short, the index clustering factor is a measure of how many I/Os the database would perform if it were to read every row in that table via the index in index order. If the rows of a table on disk are sorted in about the same order as the index keys, the database will perform a minimum number of I/Os on the table to read the entire table via the index." Então, se você recriar a tabela ordenando ela pela chave do índice, em vez do campo de data, deve melhorar essa estatística. Mas eu só faria isso se realmente esse índice for muito importante para as suas queries. Atc,Luis Freitas On Friday, December 15, 2017 12:59 PM, "ydisco...@hotmail.com [oracle_br]" wrote: Olá, Pessoal! Tenho uma TABELA de 400KK rows que está com o INDICE com o CLUSTERING FACTOR muito alto. ocasionando alto I/O na TABELA. Quanto mais próximo ao número de blocos da tabela oCLUSTERING FACTOR estiver, maior será a efetividade do index, pois menos I/Osserão necessários para acessar os dados. Caso esteja mais próximo do número delinhas da tabela, provavelmente este index não será de muita serventia durantea execução de nossas queries em muitas situações. Quais são as maneiras de diminuir o CF? 1. Rebuild do índice, não diminuiu. 2. Passei os dados para outra tabela e trunquei a original, passei os dados novamente para a tabela original com a query abaixo, e posteriormente fiz o Rebuild. Sem sucesso para diminuir o CF. 3. Alguem tem alguma outra forma? DECLARE CURSOR c1 IS SELECT *FROM dbsngpc.tb_estoque_entrada ORDER BY co_seq_estoque_entrada; TYPE fetch_array IS TABLE OF C1%ROWTYPE; cur1 fetch_array; BEGIN OPEN c1; LOOP EXIT WHEN c1%notfound; FETCH c1 bulk collect INTO cur1 limit5; forall i IN 1..CUR1.count INSERT /*+APPEND NOLOGGING */ INTO precise.tb_estoque_entrada2VALUES cur1(i); COMMIT; END LOOP; CLOSE c1; COMMIT; END;/ INFO:TABELA exec dbms_stats.gather_table_stats('PRECISE','TB_ESTOQUE_ENTRADA2',cascade=>TRUE, estimate_percent=>100, method_opt=>'FOR ALL COLUMNSSIZE AUTO', granularity=>'ALL', degree=>24); SELECTsegment_name,blocks,extents,bytes/(1024*1024*1024) AS GB FROM dba_segmentsWHERE segment_name='TB_ESTOQUE_ENTRADA2'; | SEGMENT_NAME | SEGMENT_TYPE | BLOCKS | EXTENTS | GB | ROWS | | TB_ESTOQUE_ENTRADA2 | TABLE | 5.438.208 | 850 | 41,49 | 414.612.027 | INDICEExec dbms_stats.gather_index_stats('DBSNGPC','IN_ESTENTRADA_LOTEAPRES'); SELECTsegment_name,segment_type,blocks,extents,bytes/(1024*1024*1024) AS GB FROMdba_segments WHERE segment_name='IN_ESTENTRADA_LOTEAPRES2'; | SEGMENT_NAME | SEGMENT_TYPE | BLOCKS | EXTENTS | GB | | IN_ESTENTRADA_LOTEAPRES2 | INDEX | 1.363.712 | 363 | 10,40 | SELECTindex_name,clustering_factor,num_rows FROM dba_indexes WHEREindex_name='IN_ESTENTRADA_LOTEAPRES2'; | INDEX_NAME | CLUSTERING_FACTOR | NUM_ROWS | | IN_ESTENTRADA_LOTEAPRES2 | 390.699178 | 414.612.027 | Grata, #yiv1032351243 #yiv1032351243 -- #yiv1032351243ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv1032351243 #yiv1032351243ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv1032351243 #yiv1032351243ygrp-mkp #yiv1032351243hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv1032351243 #yiv1032351243ygrp-mkp #yiv1032351243ads {margin-bottom:10px;}#yiv1032351243 #yiv1032351243ygrp-mkp .yiv1032351243ad {padding:0 0;}#yiv1032351243 #yiv1032351243ygrp-mkp .yiv1032351243ad p {margin:0;}#yiv1032351243 #yiv1032351243ygrp-mkp .yiv1032351243ad a {color:#ff;text-decoration:none;}#yiv1032351243 #yiv1032351243ygrp-sponsor #yiv1032351243ygrp-lc {font-family:Arial;}#yiv1032351243 #yiv1032351243ygrp-sponsor #yiv1032351243ygrp-lc #yiv1032351243hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv1032351243 #yiv1032351243ygrp-sponsor #yiv1032351243ygrp-lc .yiv1032351243ad {margin-bottom:10px;padding:0 0;}#yiv1032351243 #yiv1032351243actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv1032351243 #yiv1032351243activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv1032351243 #yiv1032351243activity span {font-weight:700;}#yiv1032351243 #yiv1032351243activity span:first-child {text-transform:uppercase;}#yiv1032351243 #yiv1032351243activity span a {color:#5085b6;text-decoration:none;}#yiv1032351243 #yiv1032351243activity span span {color:#ff7900;}#yiv1032351243 #yiv1032351243activity span .yiv1032351243underline {text-decoration:underline;}#yiv1032351243 .yiv1032351243attach {clear:both;displa
Re: [oracle_br] Consulta muito lenta!!
Rafael, Não conhecia esse recurso do "SQL Patch", costumo usar o "SQL Plan Management", dbms_spm.alter_sql_plan_baseline. Quantos registros retornam efetivamente na consulta? Algumas dezenas ou milhares? Outra opção que talvez tenha um efeito grande é gerar histogramas nos campos de maior e menor cardinalidade, para que o Oracle possa escolher o plano com mais informações. Atc,Luis Freitas On Friday, December 15, 2017 12:36 PM, "Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]" wrote: Obrigado pelo rapido retorno pessoal. Mulafani - sempre me ajudando... obrigado, porem esse caso de criar indice bitmap em ambiente OLTP e principalmente em tabelas extremamentes utilizadas em operacoes DML, essa opcao infelizmente nao vem ao caso. Luis Freitas, criei 2 sql patches para forcar o Oracle a realizar nested loops ao inves de hash join porem sem sucesso, segue o codigo abaixo: obs: repare que no final do plano de execucao, aparece: SQL patch "suggest_support_sap" used for this statement Segue codigo: http://textuploader.com/dc9sm Tambem tentei criar um sql patch com paralelismo, mas a mesma nao utilizou, irei verificar os outros pontos, testarei e trarei para voces sem seguida. Em Sexta-feira, 15 de Dezembro de 2017 12:23, "Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br]" escreveu: Bom dia, Uma coisa que talvez o teu ambiente tenha de sobra, e já que está usando EE, pense em usar DOP (PARALLEL) para essas tabelas assim a consulta vai rodar mais rápido. Dá uma lida no manual https://docs.oracle.com/cd/E11882_01/server.112/e25554/indexes.htm#sthref120 CREATE BITMAP INDEX sales_cust_gender_bjix ON sales(customers.cust_gender) FROM sales, customers WHERE sales.cust_id = customers.cust_id LOCAL NOLOGGING COMPUTE STATISTICS; OBS.: Lembrando que bitmap índexes tem que ser usados com muito cuidado, por conta de locks e que o paralelismo pode usar todos os recursos, verifique, monte um cenário de testes antes de aplicar isso em prod. OK? Atenciosamente, [RED] Rodrigo Mufalani - Dir. Técnico rodr...@mufalani.com.br +55 21 988 994 817 Mufalani +55 21 3193 0326 Rua Almirante Grenfall, 405, Bloco 3, Sala 310 Centro Empresarial Washington Luiz Duque de Caxias - RJ CEP 25085-009 www.mufalani.com.br<http://www.mufalani.com.br/> [id:image002.png@01D2F4C6.8E6B3BE0] De: em nome de "Luis Freitas lfreita...@yahoo.com [oracle_br]" Responder para: "oracle_br@yahoogrupos.com.br" Data: sexta-feira, 15 de dezembro de 2017 12:09 Para: "oracle_br@yahoogrupos.com.br" Assunto: Re: [oracle_br] Consulta muito lenta!! Rafael, Difícil sugerir alguma coisa só com o plano de execução, sem saber a cardinalidade campos usados na query. O tempo maior do plano está aparecendo como CPU, e está proximo do tempo que você reportou, algumas coisas que poderiam ser tentadas: - Forçar o uso de algum índice no campo RACCT, que é o numero da conta. Se houver uma cardinalidade grande nesse campo, pode reduzir muito o tempo de execução. - Forçar um full scan na FAGLFLEXA, o que deve mudar o perfil da query de CPU para disco. - Forçar um join por "nested loops", em vez de "hash". Também deve mudar o perfil de CPU para disco. Outra coisa que pode ser tentada é ativar o paralelismo na FAGLFLEXA, o que irá distribuir a execução da query em mais processos. Poderia ser feito por "sql plan management" para não ativar direto na tabela. Atc, Luis Freitas On Friday, December 15, 2017 10:57 AM, "Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]" wrote: Senhores, bom dia. Preciso de uma grande ajuda dos especialistas. Ambiente single instance, file system, EE 11.2.0.3 Options: diagnostic and tuning pack, in memory, advanced compression, partitioning Possuo uma query do sistema SAP (standard SAP), ou seja, nao existe alternativa para mudança estrutural da consulta, nem por hint na consulta, nem nada, por ser standard. O que é possível fazer é tudo a nível de banco de dados, como criação de sql patch, rewrite etc... Pois bem, vamos aos detalhes: A consulta envolve 2 tabelas e 2 índices, cada um com seus respectivos tamanhos abaixo: tabela x1: 400GB tabela x2:160GB Indice tab x1: 140GB Indice tab x2: 2GB Duracao da consulta: 16 minutos OBS: Os segmentos envoldios nao possuem PARTICIONAMENTO ou COMPRESSAO. COnsulta abaixo: http://textuploader.com/dcreu Plano de execucao abaixo (SELECT * FROM table(dbms_xplan.display_cursor)): http://textuploader.com/dcre7 Alternativas 1: A criacao de uma Mview para a consulta em questao, porem o SAP nao pode direcionar o relatorio para a MVIew, entao pensei na rewrite para forcar ao ler o sqlid utilizar Mview, porem se as mview nao estiver totalmente atualizada com as tabelas envolvidas a Mview nao sera lida, ou seja, a tabela em questao possui 2 bilhoes de registros, eh al
Re: [oracle_br] Consulta muito lenta!!
Rafael, Difícil sugerir alguma coisa só com o plano de execução, sem saber a cardinalidade campos usados na query. O tempo maior do plano está aparecendo como CPU, e está proximo do tempo que você reportou, algumas coisas que poderiam ser tentadas: - Forçar o uso de algum índice no campo RACCT, que é o numero da conta. Se houver uma cardinalidade grande nesse campo, pode reduzir muito o tempo de execução. - Forçar um full scan na FAGLFLEXA, o que deve mudar o perfil da query de CPU para disco. - Forçar um join por "nested loops", em vez de "hash". Também deve mudar o perfil de CPU para disco. Outra coisa que pode ser tentada é ativar o paralelismo na FAGLFLEXA, o que irá distribuir a execução da query em mais processos. Poderia ser feito por "sql plan management" para não ativar direto na tabela. Atc,Luis Freitas On Friday, December 15, 2017 10:57 AM, "Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]" wrote: Senhores, bom dia. Preciso de uma grande ajuda dos especialistas. Ambiente single instance, file system, EE 11.2.0.3Options: diagnostic and tuning pack, in memory, advanced compression, partitioning Possuo uma query do sistema SAP (standard SAP), ou seja, nao existe alternativa para mudança estrutural da consulta, nem por hint na consulta, nem nada, por ser standard. O que é possível fazer é tudo a nível de banco de dados, como criação de sql patch, rewrite etc... Pois bem, vamos aos detalhes: A consulta envolve 2 tabelas e 2 índices, cada um com seus respectivos tamanhos abaixo: tabela x1: 400GBtabela x2:160GBIndice tab x1: 140GBIndice tab x2: 2GB Duracao da consulta: 16 minutos OBS: Os segmentos envoldios nao possuem PARTICIONAMENTO ou COMPRESSAO. COnsulta abaixo: http://textuploader.com/dcreu Plano de execucao abaixo (SELECT * FROM table(dbms_xplan.display_cursor)): http://textuploader.com/dcre7 Alternativas 1: A criacao de uma Mview para a consulta em questao, porem o SAP nao pode direcionar o relatorio para a MVIew, entao pensei na rewrite para forcar ao ler o sqlid utilizar Mview, porem se as mview nao estiver totalmente atualizada com as tabelas envolvidas a Mview nao sera lida, ou seja, a tabela em questao possui 2 bilhoes de registros, eh alterada o tempo inteiro, ou seja, sem chance. Alternativa 2: realizar um compression OLTP nas tabelas envolvidas, o que acham? Problema sera a carga de DML nessas tabelas, me preocupo com a lentidao dos inserts, updates e deletes. Alternativa 3: Particionamento. Porem precisamos de uma solucao rapida, ira entrar um processo de auditoria e nao temos tempo para essa implementacao. Alguem pode ajudar nessa dificil missao? #yiv8578936269 -- #yiv8578936269ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv8578936269 #yiv8578936269ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv8578936269 #yiv8578936269ygrp-mkp #yiv8578936269hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv8578936269 #yiv8578936269ygrp-mkp #yiv8578936269ads {margin-bottom:10px;}#yiv8578936269 #yiv8578936269ygrp-mkp .yiv8578936269ad {padding:0 0;}#yiv8578936269 #yiv8578936269ygrp-mkp .yiv8578936269ad p {margin:0;}#yiv8578936269 #yiv8578936269ygrp-mkp .yiv8578936269ad a {color:#ff;text-decoration:none;}#yiv8578936269 #yiv8578936269ygrp-sponsor #yiv8578936269ygrp-lc {font-family:Arial;}#yiv8578936269 #yiv8578936269ygrp-sponsor #yiv8578936269ygrp-lc #yiv8578936269hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv8578936269 #yiv8578936269ygrp-sponsor #yiv8578936269ygrp-lc .yiv8578936269ad {margin-bottom:10px;padding:0 0;}#yiv8578936269 #yiv8578936269actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv8578936269 #yiv8578936269activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv8578936269 #yiv8578936269activity span {font-weight:700;}#yiv8578936269 #yiv8578936269activity span:first-child {text-transform:uppercase;}#yiv8578936269 #yiv8578936269activity span a {color:#5085b6;text-decoration:none;}#yiv8578936269 #yiv8578936269activity span span {color:#ff7900;}#yiv8578936269 #yiv8578936269activity span .yiv8578936269underline {text-decoration:underline;}#yiv8578936269 .yiv8578936269attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv8578936269 .yiv8578936269attach div a {text-decoration:none;}#yiv8578936269 .yiv8578936269attach img {border:none;padding-right:5px;}#yiv8578936269 .yiv8578936269attach label {display:block;margin-bottom:5px;}#yiv8578936269 .yiv8578936269attach label a {text-decoration:none;}#yiv8578936269 blockquote {margin:0 0 0 4px;}#yiv8578936269 .yiv8578936269bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv8578936269 .yiv8578936269bold a {text-decoration:none;}#yiv8578936269 dd.yiv8578936269last p a {font-family:Verdana;font-weight:700;}#yiv8578936269 dd.yiv8578936269last p span {margin-r
Re: [oracle_br] Sessões fican do "Presas" workaround please
Rafael, Se está travando desse jeito, aquele wait que está aparecendo talvez não tenha a ver com o problema. A sessão pode estar parada em algum lugar no "kernel" do Oracle, pode ser algum bug mesmo nessa versão do banco, ou alguma àrea de memória muito fragmentada ou com contenção. O texto do "wait" é atualizado na v$session em pontos específicos, e nesse caso ai pode não refletir o local onde está parada a sessão. Se você rodar um "oradebug dump errorstack 3;" em vez de ativar o trace, a sessão do oradebug trava também? Outra coisa que poderia fazer é abrir uma terceira sessão e fazer um "oradebug hanganalyze", ou fazer um "systemstate dump", mas tem uma chance disso fazer a base travar inteira. Atc,Luis Freitas On Monday, December 4, 2017 10:46 AM, "Rafael Mendonca raffaell.t...@yahoo.com [oracle_br]" wrote: Obrigado Mulafani e o CHiappa. Chiappa, **MAS É CLARO** que eu estou abrindo um outra sessão no banco para gerar o trace da sessão que eu desejo. Mulafani, obrigado pelo apoio, mas essa procedure não me serve. Estou criando uma e assim que acabar irei postar o código dela aqui para que no futuro, se alguém precisar, tenha como exemplo. Em Segunda-feira, 4 de Dezembro de 2017 10:06, "jlchia...@yahoo.com.br [oracle_br]" escreveu: PMFJI, mas se a sessão a analisar está travada ou quase isso, é óbvio que vc deve ativar o trace a partir de OUTRA sessão, dificilemnte vc vai conseguir realizar trace na sessão que já está não-responsiva ou quase... Para isso, vc abre uma OUTRA sessão nesse banco, com um usuário DBA ou pelo menos com privilégios mais altos, e a partir daí vc tem VÁrias possibilidades para tracejar sessão de OUTRO usuário : a) já que vc já sabe o SID/SERIAL#, vc os passa como argumentos para um dbms_system.set_ev : trace de SQL é o evento 10046, se vc ativar esse evento é o mesmo que acionar o trace ou b) pode instalar a package DBMS_SUPPORT ou c) pode descobrir o PID no sistema operacional da sessão que vc quer tracejar, aí informa esse PID pro oradebug ou (para alguns o melhor / mais fácil método, se teu banco é recente, 10g ou acima) d) usa a package DBMS_MONITOR, entre os diversos procedimentos/rotinas que ela possui há o session_trace_enable que permitie Sim que vc indique o SID/SERIAL# da OUTRA sessão, que vc já saberia quais são ==> Vc acha exemplos de TODAS essas opções em http://www.petefinnigan.com/ramblings/how_to_set_trace.htm UMA VEZ QUE vc monitorou por bastante tempo, vc mata a sessão com um disconnect (normalmente a maioria dos métodos só grava o arquivo de trace quando a sessão é desconectada), e vc tanto pode consultar os WAITs olhando diretamente o arquivo de trace (as linhas que começam com WAIT#) quanto pode pedir um profile do arquivo de trace via tkprof ... []s Chiappa #yiv7200748506 #yiv7200748506 -- #yiv7200748506ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7200748506 #yiv7200748506ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7200748506 #yiv7200748506ygrp-mkp #yiv7200748506hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7200748506 #yiv7200748506ygrp-mkp #yiv7200748506ads {margin-bottom:10px;}#yiv7200748506 #yiv7200748506ygrp-mkp .yiv7200748506ad {padding:0 0;}#yiv7200748506 #yiv7200748506ygrp-mkp .yiv7200748506ad p {margin:0;}#yiv7200748506 #yiv7200748506ygrp-mkp .yiv7200748506ad a {color:#ff;text-decoration:none;}#yiv7200748506 #yiv7200748506ygrp-sponsor #yiv7200748506ygrp-lc {font-family:Arial;}#yiv7200748506 #yiv7200748506ygrp-sponsor #yiv7200748506ygrp-lc #yiv7200748506hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7200748506 #yiv7200748506ygrp-sponsor #yiv7200748506ygrp-lc .yiv7200748506ad {margin-bottom:10px;padding:0 0;}#yiv7200748506 #yiv7200748506actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7200748506 #yiv7200748506activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7200748506 #yiv7200748506activity span {font-weight:700;}#yiv7200748506 #yiv7200748506activity span:first-child {text-transform:uppercase;}#yiv7200748506 #yiv7200748506activity span a {color:#5085b6;text-decoration:none;}#yiv7200748506 #yiv7200748506activity span span {color:#ff7900;}#yiv7200748506 #yiv7200748506activity span .yiv7200748506underline {text-decoration:underline;}#yiv7200748506 .yiv7200748506attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7200748506 .yiv7200748506attach div a {text-decoration:none;}#yiv7200748506 .yiv7200748506attach img {border:none;padding-right:5px;}#yiv7200748506 .yiv7200748506attach label {display:block;margin-bottom:5px;}#yiv7200748506 .yiv7200748506attach label a {text-decoration:none;}#yiv7200748506 blockquote {margin:0 0 0 4px;}#yiv7200748506 .yiv7200748506bold {font-fam
Re: [oracle_br] Saber se um update foi feito
Emerson, Porque não trocar tudo pelo MERGE? Fica mais ou menos assim: MERGE INTO tabela1 t1 USING DUAL ON (t1.campo1 = Valor1) WHEN MATCHED THEN UPDATE SET t1.campo2 = Valor2 WHEN NOT MATCHED THEN INSERT (campo1, campo2) VALUES (Valor1, Valor2); Atc,Luis Freitas On Tuesday, November 21, 2017 4:07 PM, "Fabricio Pedroso Jorge fpjb...@gmail.com [oracle_br]" wrote: Acho que você pode usar o "sql%rowcount", fazendo uma logica em cima do valor retornado. Veja o exemplo: https://stackoverflow.com/questions/861983/number-of-rows-affected-by-an-update-in-pl-sql Em 21 de novembro de 2017 15:03, Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] escreveu: Boa tarde, Agora que entendi mais ou menos o que você quer fazer... Creio que vai ser POG, mas daria para ter uma tabela de LOG e trigger na tabela e usar a exception que vai estourar em cima da tabela de log... Se tiver feito o update... insere em outra tabela... Mas uma coisa que não entendi no seu exemplo, primeiro ele vai dar um update (registro, pode existir ou não), e ai caso aconteça algo que pelo que entendi seria uma Exception (você também pode criar suas exceptions), daí vai fazer o insert na mesma tabela. Explica melhor isso aí para que possamos tentar entender melhor e lhe ajudar. Atenciosamente, [RED] Rodrigo Mufalani - Dir. Técnico rodr...@mufalani.com.br +55 21 988 994 817 Mufalani +55 21 3193 0326 Rua Almirante Grenfall, 405, Bloco 3, Sala 310 Centro Empresarial Washington Luiz Duque de Caxias - RJ CEP 25085-009 www.mufalani.com.br [id:image002.png@01D2F4C6. 8E6B3BE0] De: em nome de "Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br]" Responder para: "oracle_br@yahoogrupos.com.br" Data: terça-feira, 21 de novembro de 2017 15:58 Para: "oracle_br@yahoogrupos.com.br" Assunto: Re: [oracle_br] Saber se um update foi feito Boa tarde, Se sua tabela tiver uma chave primária ou única, você pode usar a exception WHEN DUP_VAL_ON_INDEX THEN https://docs.oracle.com/cd/ E18283_01/appdev.112/e17126/ errors.htm Atenciosamente, [RED] Rodrigo Mufalani - Dir. Técnico rodr...@mufalani.com.br +55 21 988 994 817 Mufalani +55 21 3193 0326 Rua Almirante Grenfall, 405, Bloco 3, Sala 310 Centro Empresarial Washington Luiz Duque de Caxias - RJ CEP 25085-009 www.mufalani.com.br [id:image002.png@01D2F4C6. 8E6B3BE0] De: em nome de "emerson.sanc...@gmail.com [oracle_br]" Responder para: "oracle_br@yahoogrupos.com.br" Data: terça-feira, 21 de novembro de 2017 15:53 Para: "oracle_br@yahoogrupos.com.br" Assunto: [oracle_br] Saber se um update foi feito Boa tarde pessoal. Em alguma situações, quero fazer um insert em uma tabela (sempre via procedure) e se ja houver um registro igual na tabela, faço a alteração nesse registro. Ex Procedure Insert_Dados begin insert into Tabela1(Campo1, Campo2) valeus (Valor1 , Valor2); exception when dup_val_on_index then update Tabela1 set Campo2 = Valor2 where Campo1 = Valor; end; Funciona perfeitamente bem. Agora estou precisando fazer exatamente o contrario. Tentar alterar um campo da tabela e se NAO houver alteração (a clausula where nao encontrou nada para alteração) eu faço a inclusao do registro. Acredito que deva ficar algo assim: Procedure Insert_Dados begin update Tabela1 set Campo2 = Valor2 where Campo1 = Valor; exception when ? then insert into Tabela1(Campo1, Campo2) valeus (Valor1 , Valor2); end; Se a sintaxe for essa, alguem saberia me dizer qual o nome da msg retornada quando nao é feito alteração, se nao, como resolver esse problema? Obrigado a todos pela atenção. [As partes desta mensagem que não continham texto foram removidas] [As partes desta mensagem que não continham texto foram removidas] -- Fabrício Pedroso Jorge. Administrador de Banco de Dados Resumo Profissional: http://br.linkedin.com/in/fabriciojorge Contatos: + 55 91 988991116 skype: fabricio.pedroso.jorge fpjb...@gmail.com #yiv1245586080 #yiv1245586080 -- #yiv1245586080ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv1245586080 #yiv1245586080ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv1245586080 #yiv1245586080ygrp-mkp #yiv1245586080hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv1245586080 #yiv1245586080ygrp-mkp #yiv1245586080ads {margin-bottom:10px;}#yiv1245586080 #yiv1245586080ygrp-mkp .yiv1245586080ad {padding:0 0;}#yiv1245586080 #yiv1245586080ygrp-mkp .yiv1245586080ad p {margin:0;}#yiv1245586080 #yiv1245586080ygrp-mkp .yiv1245586080ad a {color:#ff;text-decoration:none;}#yiv1245586080 #yiv1245586080ygrp-sponsor #yiv1245586080ygrp-lc {font-family:Arial;}#yiv1245586080 #yiv1245586080ygrp-sponsor #yiv1245586080ygrp-lc #yiv1245586080hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv1245586080 #yiv1245586080ygrp-sponsor #yiv1245586080ygrp-lc .yiv1245586080ad {margin-bottom:10px;padding:0 0;}#yiv1245586080 #yiv12455860
Re: [oracle_br] Licenciamento: pdb
Rodrigo, Lendo esse pedaço do manual eu entendo que é um "option" e que, alem de ser preciso licenciar para usar mais que um pdb, o "option" só vale para o Enterprise Edition. O 252 seria o limite máximo . Vamos ver o que o pessoal acha. ---Extra cost option for up to 252 pluggable databases. The multitenant architecture with one user-created pluggable database (single tenant) is available in all editions. --- Atc,Luis Freitas On Friday, November 10, 2017 5:11 PM, "Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br]" wrote: Eu acho que não, tem custo extra acima de 252 pdbs, mas dá uma olhada aí... https://docs.oracle.com/database/121/DBLIC/editions.htm#CJACGHEB Obter o Outlook para iOSFrom: oracle_br@yahoogrupos.com.br on behalf of Marcelo Procksch marceloprock...@gmail.com [oracle_br] Sent: Friday, November 10, 2017 4:46:41 PM To: oracle_br@yahoogrupos.com.br Subject: Re: [oracle_br] Licenciamento: pdb Em caso de um PDB só não tem custo adicional.Em caso de mais PDBs sim.li uma vez.Mais bom validar essas coisas costumam mudar. Em 10 de nov de 2017 16:40, "Vitor Junior vitorj...@gmail.com [oracle_br]" escreveu: Boa tarde.Lembro de ter lido em algum lugar, que o licenciamento no caso de bancos plugaveis, teria um valor extra por pdb.Alguém sabe informar se é isso mesmo, e onde posso validar essa informação?Abraço! att Vitor Jr. https://www.linkedin.com/in/ vitorjr #yiv3317437483 #yiv3317437483 -- #yiv3317437483ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3317437483 #yiv3317437483ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3317437483 #yiv3317437483ygrp-mkp #yiv3317437483hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3317437483 #yiv3317437483ygrp-mkp #yiv3317437483ads {margin-bottom:10px;}#yiv3317437483 #yiv3317437483ygrp-mkp .yiv3317437483ad {padding:0 0;}#yiv3317437483 #yiv3317437483ygrp-mkp .yiv3317437483ad p {margin:0;}#yiv3317437483 #yiv3317437483ygrp-mkp .yiv3317437483ad a {color:#ff;text-decoration:none;}#yiv3317437483 #yiv3317437483ygrp-sponsor #yiv3317437483ygrp-lc {font-family:Arial;}#yiv3317437483 #yiv3317437483ygrp-sponsor #yiv3317437483ygrp-lc #yiv3317437483hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3317437483 #yiv3317437483ygrp-sponsor #yiv3317437483ygrp-lc .yiv3317437483ad {margin-bottom:10px;padding:0 0;}#yiv3317437483 #yiv3317437483actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv3317437483 #yiv3317437483activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv3317437483 #yiv3317437483activity span {font-weight:700;}#yiv3317437483 #yiv3317437483activity span:first-child {text-transform:uppercase;}#yiv3317437483 #yiv3317437483activity span a {color:#5085b6;text-decoration:none;}#yiv3317437483 #yiv3317437483activity span span {color:#ff7900;}#yiv3317437483 #yiv3317437483activity span .yiv3317437483underline {text-decoration:underline;}#yiv3317437483 .yiv3317437483attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv3317437483 .yiv3317437483attach div a {text-decoration:none;}#yiv3317437483 .yiv3317437483attach img {border:none;padding-right:5px;}#yiv3317437483 .yiv3317437483attach label {display:block;margin-bottom:5px;}#yiv3317437483 .yiv3317437483attach label a {text-decoration:none;}#yiv3317437483 blockquote {margin:0 0 0 4px;}#yiv3317437483 .yiv3317437483bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv3317437483 .yiv3317437483bold a {text-decoration:none;}#yiv3317437483 dd.yiv3317437483last p a {font-family:Verdana;font-weight:700;}#yiv3317437483 dd.yiv3317437483last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv3317437483 dd.yiv3317437483last p span.yiv3317437483yshortcuts {margin-right:0;}#yiv3317437483 div.yiv3317437483attach-table div div a {text-decoration:none;}#yiv3317437483 div.yiv3317437483attach-table {width:400px;}#yiv3317437483 div.yiv3317437483file-title a, #yiv3317437483 div.yiv3317437483file-title a:active, #yiv3317437483 div.yiv3317437483file-title a:hover, #yiv3317437483 div.yiv3317437483file-title a:visited {text-decoration:none;}#yiv3317437483 div.yiv3317437483photo-title a, #yiv3317437483 div.yiv3317437483photo-title a:active, #yiv3317437483 div.yiv3317437483photo-title a:hover, #yiv3317437483 div.yiv3317437483photo-title a:visited {text-decoration:none;}#yiv3317437483 div#yiv3317437483ygrp-mlmsg #yiv3317437483ygrp-msg p a span.yiv3317437483yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv3317437483 .yiv3317437483green {color:#628c2a;}#yiv3317437483 .yiv3317437483MsoNormal {margin:0 0 0 0;}#yiv3317437483 o {font-size:0;}#yiv3317437483 #yiv3317437483photos div {float:left;width:72px;}#yiv3317437483 #yiv3317437483photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv33174
Re: [oracle_br] Questão OCP12c
Raphael, Eu acho que é BCE. Se usar o Oracle Managed Files acho que vai ficar tudo junto na mesma pasta. Atç,Luis Freitas On Thursday, November 9, 2017 10:23 AM, "Raphael Franco pha...@yahoo.com.br [oracle_br]" wrote: Pessoal, Essa questão pode ser ABC e BCE ?? You are planning the creation of a new multitenant container database (CDB) and want to store the ROOT and SEED container data files in separate directories. You plan to create the database using SQL statements.Which three techniques can you use to achieve this? A. Use Oracle Managed Files (OMF).B. Specify the SEED FILE_NAME_CONVERT clause.C. Specify the PDB_FILE_NAME_CONVERT initialization parameter.D. Specify the DB_FILE_NAMECONVERT initialization parameter.E. Specify all files in the CREATE DATABASE statement without using Oracle managed Files (OMF) .Raphael #yiv7361486126 #yiv7361486126 -- #yiv7361486126ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7361486126 #yiv7361486126ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7361486126 #yiv7361486126ygrp-mkp #yiv7361486126hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7361486126 #yiv7361486126ygrp-mkp #yiv7361486126ads {margin-bottom:10px;}#yiv7361486126 #yiv7361486126ygrp-mkp .yiv7361486126ad {padding:0 0;}#yiv7361486126 #yiv7361486126ygrp-mkp .yiv7361486126ad p {margin:0;}#yiv7361486126 #yiv7361486126ygrp-mkp .yiv7361486126ad a {color:#ff;text-decoration:none;}#yiv7361486126 #yiv7361486126ygrp-sponsor #yiv7361486126ygrp-lc {font-family:Arial;}#yiv7361486126 #yiv7361486126ygrp-sponsor #yiv7361486126ygrp-lc #yiv7361486126hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7361486126 #yiv7361486126ygrp-sponsor #yiv7361486126ygrp-lc .yiv7361486126ad {margin-bottom:10px;padding:0 0;}#yiv7361486126 #yiv7361486126actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7361486126 #yiv7361486126activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7361486126 #yiv7361486126activity span {font-weight:700;}#yiv7361486126 #yiv7361486126activity span:first-child {text-transform:uppercase;}#yiv7361486126 #yiv7361486126activity span a {color:#5085b6;text-decoration:none;}#yiv7361486126 #yiv7361486126activity span span {color:#ff7900;}#yiv7361486126 #yiv7361486126activity span .yiv7361486126underline {text-decoration:underline;}#yiv7361486126 .yiv7361486126attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7361486126 .yiv7361486126attach div a {text-decoration:none;}#yiv7361486126 .yiv7361486126attach img {border:none;padding-right:5px;}#yiv7361486126 .yiv7361486126attach label {display:block;margin-bottom:5px;}#yiv7361486126 .yiv7361486126attach label a {text-decoration:none;}#yiv7361486126 blockquote {margin:0 0 0 4px;}#yiv7361486126 .yiv7361486126bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7361486126 .yiv7361486126bold a {text-decoration:none;}#yiv7361486126 dd.yiv7361486126last p a {font-family:Verdana;font-weight:700;}#yiv7361486126 dd.yiv7361486126last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv7361486126 dd.yiv7361486126last p span.yiv7361486126yshortcuts {margin-right:0;}#yiv7361486126 div.yiv7361486126attach-table div div a {text-decoration:none;}#yiv7361486126 div.yiv7361486126attach-table {width:400px;}#yiv7361486126 div.yiv7361486126file-title a, #yiv7361486126 div.yiv7361486126file-title a:active, #yiv7361486126 div.yiv7361486126file-title a:hover, #yiv7361486126 div.yiv7361486126file-title a:visited {text-decoration:none;}#yiv7361486126 div.yiv7361486126photo-title a, #yiv7361486126 div.yiv7361486126photo-title a:active, #yiv7361486126 div.yiv7361486126photo-title a:hover, #yiv7361486126 div.yiv7361486126photo-title a:visited {text-decoration:none;}#yiv7361486126 div#yiv7361486126ygrp-mlmsg #yiv7361486126ygrp-msg p a span.yiv7361486126yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv7361486126 .yiv7361486126green {color:#628c2a;}#yiv7361486126 .yiv7361486126MsoNormal {margin:0 0 0 0;}#yiv7361486126 o {font-size:0;}#yiv7361486126 #yiv7361486126photos div {float:left;width:72px;}#yiv7361486126 #yiv7361486126photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv7361486126 #yiv7361486126photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv7361486126 #yiv7361486126reco-category {font-size:77%;}#yiv7361486126 #yiv7361486126reco-desc {font-size:77%;}#yiv7361486126 .yiv7361486126replbq {margin:4px;}#yiv7361486126 #yiv7361486126ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv7361486126 #yiv7361486126ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv7361486126 #yiv7361486126ygrp-mlmsg table {font-size:inherit;font:1
Re: [oracle_br] Re: Duvida de boas práticas
Clayton, Se entendi direito o que é, já vi tabelas desse tipo em diversos pacotes de software. Ela não vai armazenar as informações em si, mas apenas os valores possíveis. Os sistemas costumam ter uma tabela dos "lookups", usada em menus de seleção (radio box) ou caixas de seleção (combo box), para que isso não fique "hard coded". Normalmente tem um código interno (chave) do "lookup", que é a referencia armazenada nas outras tabelas, os códigos que aparecem para o usuário na tela ou página do sistema e uma descrição informativa que pode aparecer em uma dica ou num campo adjacente na tela, quando o usuário seleciona o valor. Esse tipo de tabela costuma ter também algum campo de vigência (Flag de Ativo ou Data inicio e fim), para ser possível desativar um valor sem remove-lo da tabela, não permitindo ao usuário informar esse valor em registros novos, mas mantendo disponível para consulta. As vezes tem também um campo indicando o idioma, ou há uma segunda tabela com as descrições nos idiomas traduzidos. Atc,Luis Freitas On Wednesday, October 25, 2017 2:27 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Bom, Rigorosamente NUnca vi nada nesse sentido mas pelo que entendi o Objetivo é documentar tanto para a tabela em si quanto para cada coluna de cada tabela o que a coluna faz, quuem criou, domínio de dados e coisas assim, certo ?? Se é isso mesmo, sorry mas vc está REINVENTANDO A RODA : desde muuuito tempo atrás o RDBMS Oracle já PERMITE que vc grave no banco para cada tabela E/OU para cada coluna de cada tabela um TEXTO CURTO, e vc consulta esse texto curto fazendo uma Query na DBA/ALL/USER_TAB_COMMENTS (para tabelas) e DBA_ALL_USER_COL_COMMENTS para as colunas Exemplificando, digamos que eu quero registrar que a tabela EMP é dos empregados e quero documentar o uso de algumas colunas : chiappa@bdtest:DESENV:SQL>comment on table EMP is 'Cadastro dos Empregados Atuais ou passados'; Comentário criado. chiappa@bdtest:DESENV:SQL>comment on column EMP.sal is 'Salário mais Recente do Funcionário/Empregado'; Comentário criado. chiappa@bdtest:DESENV:SQL>comment on column EMP.deptno is 'Departamento aonde o Empregado está Lotado : FK da tabela DEPT'; Comentário criado. chiappa@bdtest:DESENV:SQL>select * from user_tab_comments where table_name='EMP'; TABLE_NAME TABLE_TYPE COMMENTS -- --- EMP TABLE Cadastro dos Empregados Atuais ou passad os chiappa@bdtest:DESENV:SQL>select * from user_col_comments where table_name='EMP'; TABLE_NAME COLUMN_NAME COMMENTS -- -- EMP EMPNO EMP ENAME EMP JOB EMP MGR EMP HIREDATE EMP SAL Salário mais Recente do Funcionário/Empr egado EMP COMM EMP DEPTNO Departamento aonde o Empregado está Lota do : FK da tabela DEPT 8 linhas selecionadas. ===>> SIM SIM ??? Pra mim é EXATAMENTE ISSO que vc obteria com a tal tabela de status que vc cita , assim vc estaria REINVENTANDO A RODA, ie, fazendo algo que Já Existe, PORTANTO imho isso Não É best practice de forma alguma, sim sim ??? Só aceitaria algo assim no meu banco de houvesse uma RAZÃO CLARA E PRECISA que impedisse o uso dos comments, como (digamos) o fato que iirc vc só pode ter até 4k caracteres num comment, ou alguma outra razão técnica Forte []s Chiappa #yiv4837172565 #yiv4837172565 -- #yiv4837172565ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv4837172565 #yiv4837172565ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv4837172565 #yiv4837172565ygrp-mkp #yiv4837172565hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv4837172565 #yiv4837172565ygrp-mkp #yiv4837172565ads {margin-bottom:10px;}#yiv4837172565 #yiv4837172565ygrp-mkp .yiv4837172565ad {padding:0 0;}#yiv4837172565 #yiv4837172565ygrp-mkp .yiv4837172565ad p {margin:0;}#yiv4837172565 #yiv4837172565ygrp-mkp .yiv4837172565ad a {color:#ff;text-decoration:none;}#yiv4837172565 #yiv4837172565ygrp-sponsor #yiv4837172565ygrp-lc {font-family:Arial;}#yiv4837172565 #yiv4837172565ygrp-sponsor #yiv4837172565ygrp-lc #yiv4837172565hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv4837172565 #yiv4837172565ygrp-sponsor #yiv4837172565ygrp-lc .yiv4837172565ad {margin-bottom:10px;padding:0 0;}#yiv4837172565 #yi
Re: [oracle_br] Erro ao Restaurar os Archivelogs
a, #yiv8644427241 div.yiv8644427241file-title a:active, #yiv8644427241 div.yiv8644427241file-title a:hover, #yiv8644427241 div.yiv8644427241file-title a:visited {text-decoration:none;}#yiv8644427241 div.yiv8644427241photo-title a, #yiv8644427241 div.yiv8644427241photo-title a:active, #yiv8644427241 div.yiv8644427241photo-title a:hover, #yiv8644427241 div.yiv8644427241photo-title a:visited {text-decoration:none;}#yiv8644427241 div#yiv8644427241ygrp-mlmsg #yiv8644427241ygrp-msg p a span.yiv8644427241yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv8644427241 .yiv8644427241green {color:#628c2a;}#yiv8644427241 .yiv8644427241MsoNormal {margin:0 0 0 0;}#yiv8644427241 o {font-size:0;}#yiv8644427241 #yiv8644427241photos div {float:left;width:72px;}#yiv8644427241 #yiv8644427241photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv8644427241 #yiv8644427241photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv8644427241 #yiv8644427241reco-category {font-size:77%;}#yiv8644427241 #yiv8644427241reco-desc {font-size:77%;}#yiv8644427241 .yiv8644427241replbq {margin:4px;}#yiv8644427241 #yiv8644427241ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv8644427241 #yiv8644427241ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv8644427241 #yiv8644427241ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv8644427241 #yiv8644427241ygrp-mlmsg select, #yiv8644427241 input, #yiv8644427241 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv8644427241 #yiv8644427241ygrp-mlmsg pre, #yiv8644427241 code {font:115% monospace;}#yiv8644427241 #yiv8644427241ygrp-mlmsg * {line-height:1.22em;}#yiv8644427241 #yiv8644427241ygrp-mlmsg #yiv8644427241logo {padding-bottom:10px;}#yiv8644427241 #yiv8644427241ygrp-msg p a {font-family:Verdana;}#yiv8644427241 #yiv8644427241ygrp-msg p#yiv8644427241attach-count span {color:#1E66AE;font-weight:700;}#yiv8644427241 #yiv8644427241ygrp-reco #yiv8644427241reco-head {color:#ff7900;font-weight:700;}#yiv8644427241 #yiv8644427241ygrp-reco {margin-bottom:20px;padding:0px;}#yiv8644427241 #yiv8644427241ygrp-sponsor #yiv8644427241ov li a {font-size:130%;text-decoration:none;}#yiv8644427241 #yiv8644427241ygrp-sponsor #yiv8644427241ov li {font-size:77%;list-style-type:square;padding:6px 0;}#yiv8644427241 #yiv8644427241ygrp-sponsor #yiv8644427241ov ul {margin:0;padding:0 0 0 8px;}#yiv8644427241 #yiv8644427241ygrp-text {font-family:Georgia;}#yiv8644427241 #yiv8644427241ygrp-text p {margin:0 0 1em 0;}#yiv8644427241 #yiv8644427241ygrp-text tt {font-size:120%;}#yiv8644427241 #yiv8644427241ygrp-vital ul li:last-child {border-right:none !important;}#yiv8644427241 Em Quarta-feira, 18 de Outubro de 2017 13:00, "Luis Freitas lfreita...@yahoo.com [oracle_br]" escreveu: Chiappa, No procedimento que o Alexandre mandou, ele fez o backup original com o banco em "mount", e não rodou o "recover database" antes de fazer o "open". Então não teve mesmo aplicação de archive. Talvez eu tenha entendido errado, mas lendo as notas me parece que é possível fazer backups "hot", e apenas um ultimo backup incremental precisaria ser "cold". Tem alguma mágica que acontece no dataguard que permite fazer dataguard físico entre plataformas (Item 7 da lista). Nesse caso tem aplicação de archives, mas é pelo dataguard. Atc,Luis Freitas On Wednesday, October 18, 2017 12:33 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Imagino que sim, e deve ser alguma coisa ainda não totalmente Suportada/Documentada, pois tanto a nota "Clone Database from Windows To Linux (Lower patchset to Higher) using RMAN" (Doc ID 2143991.1) quanto a "How to Restore Crossplatform Database from OMF to OMF Format Using Rman SET NEWNAME Command" (Doc ID 1940303.1) e (principalmente) a "RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support" (Doc ID 1079563.1) dizem que se vc optar por restaurar o Backup feito no Windows no Linux ele ** TEM *** que ser cold/consistent, pois Não é Suportada a aplicação de redo gerado no Windows no Linux, cfrme a nota "Restore From Windows To Linux using RMAN Fails" (Note 2003327.1) Acho que restaurar e aplicar os archives backupeados no Windows no banco restaurado no Linux deve Mesmo ser alguma nova feature 12cR2, OU talvez recém-incluida no último patchset/cpu/psu de versão abaixo, sim... []s Chiappa
Re: [oracle_br] Erro ao Restaurar os Archivelogs
Chiappa, Tá difícil de acompanhar esses novos features do RMAN, rs. Tem um procedimento hibrido que permite usar backup online, começa com o RMAN, e passa para o dataguard no final para aplicar os archives. "Using Active Database Duplication to Create Cross Platform Data Guard Setup (Windows/Linux) (Doc ID 881421.1)" A nota "Data Guard Support for Heterogeneous Primary and Logical Standbys in Same Data Guard Configuration (Doc ID 1085687.1)", tem uma entrelinha lá no meio: "Oracle recommends using the Data Guard Broker command line interface (DGMGRL) to administer mixed platform combinations from Oracle Database 11g onward and SQL*Plus command line for configurations that pre-date Oracle Database 11g." Então deve ser possível fazer isso metade pelo RMAN, metade pelo SQL*Plus, simulando uma configuração de dataguard e no final um "switch" para "primary". Atc,Luis Freitas On Wednesday, October 18, 2017 2:20 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Esse é o ponto : concordo COMPLETAMENTE que o procedimento normal documentado é que vc deve fazer o restore do database e depois simplesmente um OPEN RESETLOGS, simples assim : Não Há a menor necessidade (nem a Possibilidade!!) de recuperar database quando de backup cross platform... Porém, acontece que na msg original ele disse (ênfase com *s minha): "Após isso *** precisaria aplicar os Archives Logs *** para poder abrir o banco " Ao que entendi então Realmente ele quis/precisou (não sei por qual motivo, se o backup foi cold/consistente) aplicar archives que foram gerados na origem Windows, e como as notas mostram Não Existe suporte oficial pra aplicação de archives formato Windows numa instância rodando sob Linux A NÃO SER NO CASO de standby físico SE era isso mesmo que o colega lá queria fazer e fez, sim : como vc perguntou, Confirmo que se foi isso que o colega queira fazer e fez é alguma coisa Nova e Não-Documentada/suportada... []s Chiappa #yiv5773170614 #yiv5773170614 -- #yiv5773170614ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5773170614 #yiv5773170614ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5773170614 #yiv5773170614ygrp-mkp #yiv5773170614hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5773170614 #yiv5773170614ygrp-mkp #yiv5773170614ads {margin-bottom:10px;}#yiv5773170614 #yiv5773170614ygrp-mkp .yiv5773170614ad {padding:0 0;}#yiv5773170614 #yiv5773170614ygrp-mkp .yiv5773170614ad p {margin:0;}#yiv5773170614 #yiv5773170614ygrp-mkp .yiv5773170614ad a {color:#ff;text-decoration:none;}#yiv5773170614 #yiv5773170614ygrp-sponsor #yiv5773170614ygrp-lc {font-family:Arial;}#yiv5773170614 #yiv5773170614ygrp-sponsor #yiv5773170614ygrp-lc #yiv5773170614hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv5773170614 #yiv5773170614ygrp-sponsor #yiv5773170614ygrp-lc .yiv5773170614ad {margin-bottom:10px;padding:0 0;}#yiv5773170614 #yiv5773170614actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv5773170614 #yiv5773170614activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv5773170614 #yiv5773170614activity span {font-weight:700;}#yiv5773170614 #yiv5773170614activity span:first-child {text-transform:uppercase;}#yiv5773170614 #yiv5773170614activity span a {color:#5085b6;text-decoration:none;}#yiv5773170614 #yiv5773170614activity span span {color:#ff7900;}#yiv5773170614 #yiv5773170614activity span .yiv5773170614underline {text-decoration:underline;}#yiv5773170614 .yiv5773170614attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv5773170614 .yiv5773170614attach div a {text-decoration:none;}#yiv5773170614 .yiv5773170614attach img {border:none;padding-right:5px;}#yiv5773170614 .yiv5773170614attach label {display:block;margin-bottom:5px;}#yiv5773170614 .yiv5773170614attach label a {text-decoration:none;}#yiv5773170614 blockquote {margin:0 0 0 4px;}#yiv5773170614 .yiv5773170614bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv5773170614 .yiv5773170614bold a {text-decoration:none;}#yiv5773170614 dd.yiv5773170614last p a {font-family:Verdana;font-weight:700;}#yiv5773170614 dd.yiv5773170614last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv5773170614 dd.yiv5773170614last p span.yiv5773170614yshortcuts {margin-right:0;}#yiv5773170614 div.yiv5773170614attach-table div div a {text-decoration:none;}#yiv5773170614 div.yiv5773170614attach-table {width:400px;}#yiv5773170614 div.yiv5773170614file-title a, #yiv5773170614 div.yiv5773170614file-title a:active, #yiv5773170614 div.yiv5773170614file-title a:hover, #yiv5773170614 div.yiv5773170614file-title a:visited {text-decoration:none;}#yiv5773170614 div.yiv5773170614photo-title a, #yiv5773170614 div.yiv5773170614photo-title a:active, #yiv5773170614 div.yiv5773170614photo-title a:hover, #yiv5
Re: [oracle_br] Erro ao Restaurar os Archivelogs
Chiappa, No procedimento que o Alexandre mandou, ele fez o backup original com o banco em "mount", e não rodou o "recover database" antes de fazer o "open". Então não teve mesmo aplicação de archive. Talvez eu tenha entendido errado, mas lendo as notas me parece que é possível fazer backups "hot", e apenas um ultimo backup incremental precisaria ser "cold". Tem alguma mágica que acontece no dataguard que permite fazer dataguard físico entre plataformas (Item 7 da lista). Nesse caso tem aplicação de archives, mas é pelo dataguard. Atc,Luis Freitas On Wednesday, October 18, 2017 12:33 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Imagino que sim, e deve ser alguma coisa ainda não totalmente Suportada/Documentada, pois tanto a nota "Clone Database from Windows To Linux (Lower patchset to Higher) using RMAN" (Doc ID 2143991.1) quanto a "How to Restore Crossplatform Database from OMF to OMF Format Using Rman SET NEWNAME Command" (Doc ID 1940303.1) e (principalmente) a "RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support" (Doc ID 1079563.1) dizem que se vc optar por restaurar o Backup feito no Windows no Linux ele ** TEM *** que ser cold/consistent, pois Não é Suportada a aplicação de redo gerado no Windows no Linux, cfrme a nota "Restore From Windows To Linux using RMAN Fails" (Note 2003327.1) Acho que restaurar e aplicar os archives backupeados no Windows no banco restaurado no Linux deve Mesmo ser alguma nova feature 12cR2, OU talvez recém-incluida no último patchset/cpu/psu de versão abaixo, sim... []s Chiappa #yiv6414813445 #yiv6414813445 -- #yiv6414813445ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv6414813445 #yiv6414813445ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv6414813445 #yiv6414813445ygrp-mkp #yiv6414813445hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv6414813445 #yiv6414813445ygrp-mkp #yiv6414813445ads {margin-bottom:10px;}#yiv6414813445 #yiv6414813445ygrp-mkp .yiv6414813445ad {padding:0 0;}#yiv6414813445 #yiv6414813445ygrp-mkp .yiv6414813445ad p {margin:0;}#yiv6414813445 #yiv6414813445ygrp-mkp .yiv6414813445ad a {color:#ff;text-decoration:none;}#yiv6414813445 #yiv6414813445ygrp-sponsor #yiv6414813445ygrp-lc {font-family:Arial;}#yiv6414813445 #yiv6414813445ygrp-sponsor #yiv6414813445ygrp-lc #yiv6414813445hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv6414813445 #yiv6414813445ygrp-sponsor #yiv6414813445ygrp-lc .yiv6414813445ad {margin-bottom:10px;padding:0 0;}#yiv6414813445 #yiv6414813445actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv6414813445 #yiv6414813445activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv6414813445 #yiv6414813445activity span {font-weight:700;}#yiv6414813445 #yiv6414813445activity span:first-child {text-transform:uppercase;}#yiv6414813445 #yiv6414813445activity span a {color:#5085b6;text-decoration:none;}#yiv6414813445 #yiv6414813445activity span span {color:#ff7900;}#yiv6414813445 #yiv6414813445activity span .yiv6414813445underline {text-decoration:underline;}#yiv6414813445 .yiv6414813445attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv6414813445 .yiv6414813445attach div a {text-decoration:none;}#yiv6414813445 .yiv6414813445attach img {border:none;padding-right:5px;}#yiv6414813445 .yiv6414813445attach label {display:block;margin-bottom:5px;}#yiv6414813445 .yiv6414813445attach label a {text-decoration:none;}#yiv6414813445 blockquote {margin:0 0 0 4px;}#yiv6414813445 .yiv6414813445bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv6414813445 .yiv6414813445bold a {text-decoration:none;}#yiv6414813445 dd.yiv6414813445last p a {font-family:Verdana;font-weight:700;}#yiv6414813445 dd.yiv6414813445last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv6414813445 dd.yiv6414813445last p span.yiv6414813445yshortcuts {margin-right:0;}#yiv6414813445 div.yiv6414813445attach-table div div a {text-decoration:none;}#yiv6414813445 div.yiv6414813445attach-table {width:400px;}#yiv6414813445 div.yiv6414813445file-title a, #yiv6414813445 div.yiv6414813445file-title a:active, #yiv6414813445 div.yiv6414813445file-title a:hover, #yiv6414813445 div.yiv6414813445file-title a:visited {text-decoration:none;}#yiv6414813445 div.yiv6414813445photo-title a, #yiv6414813445 div.yiv6414813445photo-title a:active, #yiv6414813445 div.yiv6414813445photo-title a:hover, #yiv6414813445 div.yiv6414813445photo-title a:visited {text-decoration:none;}#yiv6414813445 div#yiv6414813445ygrp-mlmsg #yiv6414813445ygrp-msg p a span.yiv6414813445yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv6414813445 .yiv6414813445green {color:#628c2a;}#yiv6414813445 .yiv6414813445MsoNormal {margin:0 0 0 0;}#yiv6414813445 o {font-size:0;}#yiv6414813445 #yiv6414813445photo
Re: [oracle_br] Erro ao Restaurar os Archivelogs
Alessandro, Essa base aí é 12c? Pegunto pois talvez tenha algum "new feature" que eu não conheça. Fui la no suporte consultar, há uma nota mestre para migração de plataforma "Migration Of An Oracle Database Across OS Platforms (Generic Platform) (Doc ID 733205.1)". Essa nota lista os procedimentos: - Export / Import to include the use of Datapump facilities. All versions support Export/Import but for Datapump 10.1.0.2 or higher is required - Transportable Tablespaces 10G or Later - RMAN Convert Database functions. 10G or Later - RMAN Duplicate - Streams Replication - Create Table As Select (CTAS) - Dataguard Heterogeneous Primary and Physical Standbys - Oracle Golden Gate (For assistance with Oracle Golden Gate, an SR needs opened with the correct team) Bom, nessa lista não tem só "restore". Com rman tem "RMAN Convert Database functions" e "RMAN Duplicate". Também se usa o rman quando faz a conversão por "Transportable Tablespaces" e usa o recurso de "Cross Platform Incremental Backup" para fazer "roll forward" dos datafiles antes do processo de impdp. O mais parecido é o "RMAN Duplicate", mas no duplicate o control file é sempre recriado, talvez por isso a necessidade de recriá-lo para resolver os erros. Outra coisa que acontece no duplicate é que é feito um novo "DBID" o que irá marcar definitivamente o banco de dados como novo para o RMAN, impedindo que misture um backup/archives anteriores a conversão com backups novos durante o restore. Os processos de conversão com RMAN pedem para rodar uma package antes, DBMS_TDB.CHECK_DB, não sei que verificações ela faz. Há também um alerta na nota "RMAN DUPLICATE/RESTORE/RECOVER Mixed Platform Support (Doc ID 1079563.1)", falando que se o banco foi atualizado de uma versão anterior a 11g, pode haver blocos incompatíveis com a migração de plataforma. É exagero, mas o seguro morreu de velho, eu faria um "select * from ..." de todas as tabelas para forçar um full scan de todas elas, e confirmar que não há nenhum problema de compatibilidade no formato dos blocos, e gradualmente faria um "rebuild" de todos os índices, durante a noite. Aí vai do tamanho da base e do tempo e impacto que demora para rodar isso. Se aparecer alguma tabela com problemas de leitura e o servidor antigo ainda está disponível, é possível marcar os blocos afetados como ruins e recuperar os dados de lá com um insert as select usando os ROWIDs, por DBLink por exemplo, ou mesmo export/import em uma tabela ou esquema diferente, seguido de um insert/select ou alter table rename. Atc,Luis Freitas On Tuesday, October 17, 2017 6:07 PM, "Alessandro Lúcio Cordeiro da Silva alecordeirosi...@yahoo.com.br [oracle_br]" wrote: No caso eu fiz um backup nivel 0 com o banco no estado mount no Windows, e autobackup do controlfile. Depois instalei o Linux neste servidor e o Oracle. Feito isso fiz o restaure do banco, com algo mais ou menos assim... run { set dbid=x; set controlfile autobackup format for device type disk to ''; catalog start with 'diretorio onde salvei o backup nivel 0 do Windows no linux'; restore controlfile from autobackup; alter database mount; sql 'alter system set db_create_file_dest="/u01/app/oracle/oradata"'; set newname for database to new; restore database; switch datafile all; alter database open resetlogs; } depois disso consegui excluir do catalogo do controlfile os backup do Windows, mas os archives dara os erros... Alessandro Lúcio Cordeiro da Silva Analista de Sistema þ http://alecordeirosilva.blogspot.com/ Porque esta é a vontade de Deus, a saber, a vossa santificação: que vos abstenhais da prostituição. (1º Tessalonicenses 4:3) Em Terça-feira, 17 de Outubro de 2017 14:54, "Luis Freitas lfreita...@yahoo.com [oracle_br]" escreveu: Alessandro, É um cenário bem diferente. Talvez não seja preciso recriar o controlfile depois que os archives sairem do controlfile, se no restore eles assumirem nomes compatíveis com linux. Mas um restore de um backup antigo feito no Windows em um servidor Linux, seria preciso fazer a conversão novamente no meio do restore? Atc,Luis Freitas On Tuesday, October 17, 2017 3:47 PM, "Alessandro Lúcio Cordeiro da Silva alecordeirosi...@yahoo.com.br [oracle_br]" wrote: Olá Luis, Eu descobrir o problema. Ocorre que a poucos dias este banco foi migrado do Windows Server 2012 para Oracle Linux 6.5, e por isso tinha no catalogo do controlfile alguns archives que tinha a estrutura do Windows. Por isso qualquer operação sobre os archives (crosscheck; delete archivelog all; delete obsolete...) a
Re: [oracle_br] Erro ao Restaurar os Archivelogs
Alessandro, É um cenário bem diferente. Talvez não seja preciso recriar o controlfile depois que os archives sairem do controlfile, se no restore eles assumirem nomes compatíveis com linux. Mas um restore de um backup antigo feito no Windows em um servidor Linux, seria preciso fazer a conversão novamente no meio do restore? Atc,Luis Freitas On Tuesday, October 17, 2017 3:47 PM, "Alessandro Lúcio Cordeiro da Silva alecordeirosi...@yahoo.com.br [oracle_br]" wrote: Olá Luis, Eu descobrir o problema. Ocorre que a poucos dias este banco foi migrado do Windows Server 2012 para Oracle Linux 6.5, e por isso tinha no catalogo do controlfile alguns archives que tinha a estrutura do Windows. Por isso qualquer operação sobre os archives (crosscheck; delete archivelog all; delete obsolete...) apresentava erro. Para conseguir restaura-lo o backup do archive eu tive que recriar o controfile a partir do trace. Ocorre que PRODUCAO ainda esta com este problema, mas conforme pesquisei depois de algum tempo esta informação "lixo" do windows irá sumir por causa do parametro control_file_record_keep_time, que padrão é 07 dias. No momento vou aguardar Produção se "auto-curar" e se por uma eventualidade precisar restaurar o banco de produção, sei que preciso recriar o controlfile. Alessandro Lúcio Cordeiro da Silva Analista de Sistema þ http://alecordeirosilva.blogspot.com/ Porque esta é a vontade de Deus, a saber, a vossa santificação: que vos abstenhais da prostituição. (1º Tessalonicenses 4:3) Em Terça-feira, 17 de Outubro de 2017 12:43, "Luis Freitas lfreita...@yahoo.com [oracle_br]" escreveu: Alessandro, Tem algum datafile com $ no meio do nome? Atc,Luis Freitas On Monday, October 16, 2017 7:37 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Nem precisava ter recriado : ao que parece era mesmo backup pieces não catalogados corretamente, para limpar/remover as entradas já existentes nesse controlfile vc poderia ter simplesmente conectado o RMAN nesse controlfile já existente (via RMAN TARGET=usuario/senha NOCATALOG) e daí dentro do RMAN vc fazia um DELETE de todos os backups catalogados e depois um CATALOG START WITH Mas ok, reconstruir o controlfile Também funciona no sentido de remover todos os backups nele catalogados... []s Chiappa #yiv2320985407 #yiv2320985407 -- #yiv2320985407ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2320985407 #yiv2320985407ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2320985407 #yiv2320985407ygrp-mkp #yiv2320985407hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2320985407 #yiv2320985407ygrp-mkp #yiv2320985407ads {margin-bottom:10px;}#yiv2320985407 #yiv2320985407ygrp-mkp .yiv2320985407ad {padding:0 0;}#yiv2320985407 #yiv2320985407ygrp-mkp .yiv2320985407ad p {margin:0;}#yiv2320985407 #yiv2320985407ygrp-mkp .yiv2320985407ad a {color:#ff;text-decoration:none;}#yiv2320985407 #yiv2320985407ygrp-sponsor #yiv2320985407ygrp-lc {font-family:Arial;}#yiv2320985407 #yiv2320985407ygrp-sponsor #yiv2320985407ygrp-lc #yiv2320985407hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2320985407 #yiv2320985407ygrp-sponsor #yiv2320985407ygrp-lc .yiv2320985407ad {margin-bottom:10px;padding:0 0;}#yiv2320985407 #yiv2320985407actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv2320985407 #yiv2320985407activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv2320985407 #yiv2320985407activity span {font-weight:700;}#yiv2320985407 #yiv2320985407activity span:first-child {text-transform:uppercase;}#yiv2320985407 #yiv2320985407activity span a {color:#5085b6;text-decoration:none;}#yiv2320985407 #yiv2320985407activity span span {color:#ff7900;}#yiv2320985407 #yiv2320985407activity span .yiv2320985407underline {text-decoration:underline;}#yiv2320985407 .yiv2320985407attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv2320985407 .yiv2320985407attach div a {text-decoration:none;}#yiv2320985407 .yiv2320985407attach img {border:none;padding-right:5px;}#yiv2320985407 .yiv2320985407attach label {display:block;margin-bottom:5px;}#yiv2320985407 .yiv2320985407attach label a {text-decoration:none;}#yiv2320985407 blockquote {margin:0 0 0 4px;}#yiv2320985407 .yiv2320985407bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv2320985407 .yiv2320985407bold a {text-decoration:none;}#yiv2320985407 dd.yiv2320985407last p a {font-family:Verdana;font-weight:700;}#yiv2320985407 dd.yiv2320985407last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv2320985407 dd.yiv2320985407last p span.yiv2320985407yshortcuts {margin-right:0;}#yiv2320985407 div.yiv2320985407attach-table div div a {text-decoration:none;}#yiv2320985407 div.yiv23
Re: [oracle_br] Erro ao Restaurar os Archivelogs
Alessandro, Tem algum datafile com $ no meio do nome? Atc,Luis Freitas On Monday, October 16, 2017 7:37 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Nem precisava ter recriado : ao que parece era mesmo backup pieces não catalogados corretamente, para limpar/remover as entradas já existentes nesse controlfile vc poderia ter simplesmente conectado o RMAN nesse controlfile já existente (via RMAN TARGET=usuario/senha NOCATALOG) e daí dentro do RMAN vc fazia um DELETE de todos os backups catalogados e depois um CATALOG START WITH Mas ok, reconstruir o controlfile Também funciona no sentido de remover todos os backups nele catalogados... []s Chiappa #yiv7264831157 #yiv7264831157 -- #yiv7264831157ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7264831157 #yiv7264831157ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7264831157 #yiv7264831157ygrp-mkp #yiv7264831157hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7264831157 #yiv7264831157ygrp-mkp #yiv7264831157ads {margin-bottom:10px;}#yiv7264831157 #yiv7264831157ygrp-mkp .yiv7264831157ad {padding:0 0;}#yiv7264831157 #yiv7264831157ygrp-mkp .yiv7264831157ad p {margin:0;}#yiv7264831157 #yiv7264831157ygrp-mkp .yiv7264831157ad a {color:#ff;text-decoration:none;}#yiv7264831157 #yiv7264831157ygrp-sponsor #yiv7264831157ygrp-lc {font-family:Arial;}#yiv7264831157 #yiv7264831157ygrp-sponsor #yiv7264831157ygrp-lc #yiv7264831157hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7264831157 #yiv7264831157ygrp-sponsor #yiv7264831157ygrp-lc .yiv7264831157ad {margin-bottom:10px;padding:0 0;}#yiv7264831157 #yiv7264831157actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7264831157 #yiv7264831157activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7264831157 #yiv7264831157activity span {font-weight:700;}#yiv7264831157 #yiv7264831157activity span:first-child {text-transform:uppercase;}#yiv7264831157 #yiv7264831157activity span a {color:#5085b6;text-decoration:none;}#yiv7264831157 #yiv7264831157activity span span {color:#ff7900;}#yiv7264831157 #yiv7264831157activity span .yiv7264831157underline {text-decoration:underline;}#yiv7264831157 .yiv7264831157attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7264831157 .yiv7264831157attach div a {text-decoration:none;}#yiv7264831157 .yiv7264831157attach img {border:none;padding-right:5px;}#yiv7264831157 .yiv7264831157attach label {display:block;margin-bottom:5px;}#yiv7264831157 .yiv7264831157attach label a {text-decoration:none;}#yiv7264831157 blockquote {margin:0 0 0 4px;}#yiv7264831157 .yiv7264831157bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7264831157 .yiv7264831157bold a {text-decoration:none;}#yiv7264831157 dd.yiv7264831157last p a {font-family:Verdana;font-weight:700;}#yiv7264831157 dd.yiv7264831157last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv7264831157 dd.yiv7264831157last p span.yiv7264831157yshortcuts {margin-right:0;}#yiv7264831157 div.yiv7264831157attach-table div div a {text-decoration:none;}#yiv7264831157 div.yiv7264831157attach-table {width:400px;}#yiv7264831157 div.yiv7264831157file-title a, #yiv7264831157 div.yiv7264831157file-title a:active, #yiv7264831157 div.yiv7264831157file-title a:hover, #yiv7264831157 div.yiv7264831157file-title a:visited {text-decoration:none;}#yiv7264831157 div.yiv7264831157photo-title a, #yiv7264831157 div.yiv7264831157photo-title a:active, #yiv7264831157 div.yiv7264831157photo-title a:hover, #yiv7264831157 div.yiv7264831157photo-title a:visited {text-decoration:none;}#yiv7264831157 div#yiv7264831157ygrp-mlmsg #yiv7264831157ygrp-msg p a span.yiv7264831157yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv7264831157 .yiv7264831157green {color:#628c2a;}#yiv7264831157 .yiv7264831157MsoNormal {margin:0 0 0 0;}#yiv7264831157 o {font-size:0;}#yiv7264831157 #yiv7264831157photos div {float:left;width:72px;}#yiv7264831157 #yiv7264831157photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv7264831157 #yiv7264831157photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv7264831157 #yiv7264831157reco-category {font-size:77%;}#yiv7264831157 #yiv7264831157reco-desc {font-size:77%;}#yiv7264831157 .yiv7264831157replbq {margin:4px;}#yiv7264831157 #yiv7264831157ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv7264831157 #yiv7264831157ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv7264831157 #yiv7264831157ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv7264831157 #yiv7264831157ygrp-mlmsg select, #yiv7264831157 input, #yiv7264831157 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv7264831157 #yiv72648
Re: [oracle_br] Fatal NI connect error 12170.
Ednilson, O que faço muitas vezes é ativar o "dead connection detection", com o SQLNET.EXPIRE_TIME mesmo. Mas esse valor de 10, que são 10 minutos, pode ser muito alto se tiver um firewall no meio, e ele estiver "derrubando" as conexões por inatividade Pode tentar com 2 ou 1, para forçar um pacote a trafegar em cada conexão a cada dois ou um minutos. Se tiver um firewall "stateful" e o pessoal de rede fizer um reset dele, porque alterou regras ou qualquer outro motivo, pode também derrubar todas as conexões de uma vez. Esse erro também aparece se tiver alguma ferramenta monitorando se o Listener está ativo usando conexão TCP na porta dele, então pode não estar relacionada ao problema. Nesse caso o IP que aparece será o da ferramenta de monitoração. Atc,Luis Freitas On Friday, September 29, 2017 3:04 PM, "angelo angelolis...@gmail.com [oracle_br]" wrote: Ih, isso acontece comigo direto em uma base mas nao dá nada, porque a culpa é da propria app que fica com a conexão aberta a vida toda. 2017-09-29 8:58 GMT-03:00 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] : Bom Dia Pessoal, Tenho um banco que o fornecedor esta reclamando que cai a conexão do usuário, este usuários estão com profile default, sem IDLE_TIME Analisando o Alert, encontrei varias mensagem como esta abaixo. - Oracle Enterprise 11g – release 11.2.0.4.0- Red Hat Enterprise Linux Server release 6.5 Alert Log Fatal NI connect error 12170. VERSION INFORMATION: TNS for Linux: Version 11.2.0.4.0 - Production Oracle Bequeath NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production TCP/IP NT Protocol Adapter for Linux: Version 11.2.0.4.0 - Production Time: 29-SEP-2017 07:06:25 Tracing not turned on. Tns error struct: ns main err code: 12535 TNS-12535: TNS:operation timed out ns secondary err code: 12560 nt main err code: 505 TNS-00505: Operation timed out nt secondary err code: 110 nt OS err code: 0 Client address: (ADDRESS=(PROTOCOL=tcp)(HOST= 10.242.120.61)(PORT=57282))Fri Sep 29 07:29:51 2017 Notei que não tinha o arquivo sqlnet.ora em $ORACLE_HOME/network/admin e então configurei da seguinte forma, seguindo alguns post que vi na internet. $ more sqlnet.oraSQLNET.INBOUND_CONNECT_ TIMEOUT=0SQLNET.EXPIRE_TIME=10 E no listener.ora, inseri a linha abaixo e mesmo assim, continuo a receber essas mensagens no Alert INBOUND_CONNECT_TIMEOUT_ LISTENER=0 Alguem já passou por isso e poderia dar um ajudar? Grato,Ednilson #yiv3676680434 #yiv3676680434 -- #yiv3676680434ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3676680434 #yiv3676680434ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3676680434 #yiv3676680434ygrp-mkp #yiv3676680434hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3676680434 #yiv3676680434ygrp-mkp #yiv3676680434ads {margin-bottom:10px;}#yiv3676680434 #yiv3676680434ygrp-mkp .yiv3676680434ad {padding:0 0;}#yiv3676680434 #yiv3676680434ygrp-mkp .yiv3676680434ad p {margin:0;}#yiv3676680434 #yiv3676680434ygrp-mkp .yiv3676680434ad a {color:#ff;text-decoration:none;}#yiv3676680434 #yiv3676680434ygrp-sponsor #yiv3676680434ygrp-lc {font-family:Arial;}#yiv3676680434 #yiv3676680434ygrp-sponsor #yiv3676680434ygrp-lc #yiv3676680434hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3676680434 #yiv3676680434ygrp-sponsor #yiv3676680434ygrp-lc .yiv3676680434ad {margin-bottom:10px;padding:0 0;}#yiv3676680434 #yiv3676680434actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv3676680434 #yiv3676680434activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv3676680434 #yiv3676680434activity span {font-weight:700;}#yiv3676680434 #yiv3676680434activity span:first-child {text-transform:uppercase;}#yiv3676680434 #yiv3676680434activity span a {color:#5085b6;text-decoration:none;}#yiv3676680434 #yiv3676680434activity span span {color:#ff7900;}#yiv3676680434 #yiv3676680434activity span .yiv3676680434underline {text-decoration:underline;}#yiv3676680434 .yiv3676680434attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv3676680434 .yiv3676680434attach div a {text-decoration:none;}#yiv3676680434 .yiv3676680434attach img {border:none;padding-right:5px;}#yiv3676680434 .yiv3676680434attach label {display:block;margin-bottom:5px;}#yiv3676680434 .yiv3676680434attach label a {text-decoration:none;}#yiv3676680434 blockquote {margin:0 0 0 4px;}#yiv3676680434 .yiv3676680434bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv3676680434 .yiv3676680434bold a {text-decoration:none;}#yiv3676680434 dd.yiv3676680434last p a {font-family:Verdana;font-weight:700;}#yiv3676680434 dd.yiv3676680434last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv3676680434 dd.yiv3676680434last p span.yiv3676680434yshortcuts {marg
Re: [oracle_br] Ajuda com Delphi pode ser remunerada.
Eduardo, Talvez na sua base de desenvolvimento só você esteja usando? Quando está em produção, o primeiro usuário que roda o select, bloqueia os registros. Se fizer uma query que volta vários registros, vai bloqueando todos eles. O segundo usuário que tentar consultar a mesma coisa vai ter esse comportamento de "travar". Para liberar o lock tem que fazer o rollback ou commit assim que for feita a próxima consulta ou fechada a tela, mesmo que não tenha sido feita nenhuma alteração (update). Ou seja, se o usuário fizer outra consulta, mesmo após fechar os cursores, as linhas consultadas anteriormente continuam bloqueadas. Existe o "select ... for update nowait", pode-se informar um tempo em segundos para esperar também, "select ... for update nowait 5" por exemplo. Esse em vez de travar vai retornar um erro, mas não deve resolver o seu problema ai. Você pode consultar a v$locked_object, v$lock, dba_blockers ou dba_waiters para ver os bloqueios, quais tabelas são e quais as sessões que estão bloqueando. O problema é que elas não vão indicar quais linhas das tabelas estão bloqueadas. Se seguir o caminho das transações ativas usando outras views se chega até o numero dos blocos, mas para achar as linhas não conheço outro meio além de fazer um "block dump" e analisar a "interested transaction list" no trace gerado, o que não é uma coisa simples de fazer. Atc, Luis Freitas On Tuesday, September 19, 2017 9:45 PM, "Eduardo Perdomo panc...@gmail.com [oracle_br]" wrote: Obrigado pelo retorno.Eu uso o select for update, commit quando o usuário confirma e rollback quando cancela.Na minha base de desenvolvimento funciona normal, mas em produção o cliente/dba alega que o programa está travando um módulo especifico aleatóriamente.Qual select eu poderia verificar se deixei algum registro locado ao fechar o programa ? On Tue, Sep 19, 2017 at 12:12 PM, Luis Freitas lfreita...@yahoo.com [oracle_br] wrote: Eduardo, Não trabalho com Delphi, mas as ferramentas de 4a geração usam duas formas de lock: Lock otimista: Usa algum campo com o numero da alteração, e quando você tenta salvar um registro alterado em outro lugar ou outra sessão, o provedor de dados retorna um erro. O lock é feito apenas entre a verificação do numero de alteração e o update dos dados, quando é disparada alguma ação de salvamento. Lock pessimista: Faz o bloqueio no banco de dados, usando um comando "SELECT FOR UPDATE" ou coisa parecida. Outras sessões que tentem alterar algum registro lido irão "travar", como você está descrevendo. Se você está vendo esse travamento dentro da mesma instancia da aplicação, num mesmo computador, o provedor de dados que está usando no Delphi deve estar abrindo sessões de banco separadas para cada "modulo" que você está abrindo. Tem duas soluções para esse problema: - Fazer o Delphi compartilhar uma sessão unica para todos os módulos, talvez haja alguma configuração no seu provedor de dados para isso. Você não mencionou se está usando o BDE, ou ODBC, ou outra coisa. - Efetuar explicitamente um "commit" ou "rollback", o que irá liberar o lock no banco de dados. É preciso efetuar o commit ou rollback mesmo que você não tenha alterado dados. Pode ter alguma forma de fazer isso implicitamente também, com algum comando do provedor de dados. Atc, Luis Freitas On Tuesday, September 19, 2017 5:32 AM, "Eduardo Perdomo panc...@gmail.com [oracle_br]" wrote: Bom dia. Alguém trabalha com Delphi? Preciso de ajuda para entender como deslocar um registro, pois aparentemente estou conseguindo lockar, mas outros módulos estão travando devido ao lock. Algum problema na parte de liberar o registro. Posso remunerar se for o caso. Me add no WhatsApp 21968458592. Obrigado. -- Eduardo PerdomoConsultor de ImplantaçãoGrupo PC Sistemas - www.grupopc.com.br (21) 6845-8592pancary@gmail.comeduardo.perd...@pcinformatica.com.brBlog: eduardo.perdomo.nom.br #yiv3381933495 -- #yiv3381933495ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3381933495 #yiv3381933495ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3381933495 #yiv3381933495ygrp-mkp #yiv3381933495hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3381933495 #yiv3381933495ygrp-mkp #yiv3381933495ads {margin-bottom:10px;}#yiv3381933495 #yiv3381933495ygrp-mkp .yiv3381933495ad {padding:0 0;}#yiv3381933495 #yiv3381933495ygrp-mkp .yiv3381933495ad p {margin:0;}#yiv3381933495 #yiv3381933495ygrp-mkp .yiv3381933495ad a {color:#ff;text-decoration:none;}#yiv3381933495 #yiv3381933495ygrp-sponsor #yiv3381933495ygrp-lc {font-family:Arial;}#yiv3381933495 #yiv3381933495ygrp-sponsor #yiv3381933495ygrp-lc #yiv3381933495hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:
Re: [oracle_br] Ajuda com Delphi pode ser remunerada.
Eduardo, Não trabalho com Delphi, mas as ferramentas de 4a geração usam duas formas de lock: Lock otimista: Usa algum campo com o numero da alteração, e quando você tenta salvar um registro alterado em outro lugar ou outra sessão, o provedor de dados retorna um erro. O lock é feito apenas entre a verificação do numero de alteração e o update dos dados, quando é disparada alguma ação de salvamento. Lock pessimista: Faz o bloqueio no banco de dados, usando um comando "SELECT FOR UPDATE" ou coisa parecida. Outras sessões que tentem alterar algum registro lido irão "travar", como você está descrevendo. Se você está vendo esse travamento dentro da mesma instancia da aplicação, num mesmo computador, o provedor de dados que está usando no Delphi deve estar abrindo sessões de banco separadas para cada "modulo" que você está abrindo. Tem duas soluções para esse problema: - Fazer o Delphi compartilhar uma sessão unica para todos os módulos, talvez haja alguma configuração no seu provedor de dados para isso. Você não mencionou se está usando o BDE, ou ODBC, ou outra coisa. - Efetuar explicitamente um "commit" ou "rollback", o que irá liberar o lock no banco de dados. É preciso efetuar o commit ou rollback mesmo que você não tenha alterado dados. Pode ter alguma forma de fazer isso implicitamente também, com algum comando do provedor de dados. Atc, Luis Freitas On Tuesday, September 19, 2017 5:32 AM, "Eduardo Perdomo panc...@gmail.com [oracle_br]" wrote: Bom dia. Alguém trabalha com Delphi? Preciso de ajuda para entender como deslocar um registro, pois aparentemente estou conseguindo lockar, mas outros módulos estão travando devido ao lock. Algum problema na parte de liberar o registro. Posso remunerar se for o caso. Me add no WhatsApp 21968458592. Obrigado. #yiv2325418919 -- #yiv2325418919ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2325418919 #yiv2325418919ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2325418919 #yiv2325418919ygrp-mkp #yiv2325418919hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2325418919 #yiv2325418919ygrp-mkp #yiv2325418919ads {margin-bottom:10px;}#yiv2325418919 #yiv2325418919ygrp-mkp .yiv2325418919ad {padding:0 0;}#yiv2325418919 #yiv2325418919ygrp-mkp .yiv2325418919ad p {margin:0;}#yiv2325418919 #yiv2325418919ygrp-mkp .yiv2325418919ad a {color:#ff;text-decoration:none;}#yiv2325418919 #yiv2325418919ygrp-sponsor #yiv2325418919ygrp-lc {font-family:Arial;}#yiv2325418919 #yiv2325418919ygrp-sponsor #yiv2325418919ygrp-lc #yiv2325418919hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2325418919 #yiv2325418919ygrp-sponsor #yiv2325418919ygrp-lc .yiv2325418919ad {margin-bottom:10px;padding:0 0;}#yiv2325418919 #yiv2325418919actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv2325418919 #yiv2325418919activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv2325418919 #yiv2325418919activity span {font-weight:700;}#yiv2325418919 #yiv2325418919activity span:first-child {text-transform:uppercase;}#yiv2325418919 #yiv2325418919activity span a {color:#5085b6;text-decoration:none;}#yiv2325418919 #yiv2325418919activity span span {color:#ff7900;}#yiv2325418919 #yiv2325418919activity span .yiv2325418919underline {text-decoration:underline;}#yiv2325418919 .yiv2325418919attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv2325418919 .yiv2325418919attach div a {text-decoration:none;}#yiv2325418919 .yiv2325418919attach img {border:none;padding-right:5px;}#yiv2325418919 .yiv2325418919attach label {display:block;margin-bottom:5px;}#yiv2325418919 .yiv2325418919attach label a {text-decoration:none;}#yiv2325418919 blockquote {margin:0 0 0 4px;}#yiv2325418919 .yiv2325418919bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv2325418919 .yiv2325418919bold a {text-decoration:none;}#yiv2325418919 dd.yiv2325418919last p a {font-family:Verdana;font-weight:700;}#yiv2325418919 dd.yiv2325418919last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv2325418919 dd.yiv2325418919last p span.yiv2325418919yshortcuts {margin-right:0;}#yiv2325418919 div.yiv2325418919attach-table div div a {text-decoration:none;}#yiv2325418919 div.yiv2325418919attach-table {width:400px;}#yiv2325418919 div.yiv2325418919file-title a, #yiv2325418919 div.yiv2325418919file-title a:active, #yiv2325418919 div.yiv2325418919file-title a:hover, #yiv2325418919 div.yiv2325418919file-title a:visited {text-decoration:none;}#yiv2325418919 div.yiv2325418919photo-title a, #yiv2325418919 div.yiv2325418919photo-title a:active, #yiv2325418919 div.yiv2325418919photo-title a:hover, #yiv2325418919 div.yiv2325418919photo-title a:visited {text-decoration:none;}#yiv2325418919 div#yiv2325418919ygrp-mlmsg #yiv2325418919ygrp-msg p a span.yiv2325418919yshortcuts {font-fami
Re: RES: RES: [oracle_br] Re: restore database
Ednilson, Para esse problema do admin Horácio, caso o problema persista mesmo com aquela variável de OB2HOSTNAME, sugiro pedir para ele fazer backup de um arquivo qualquer no servidor de origem, e restaurar ele no servidor de destino. Dessa forma você consegue validar que realmente a parte do Data Protector está ok, sem problemas de configuração, e que o servidor de destino tem permissão de acesso aos backups feitos no servidor de origem. Atc,Luis Freitas On Friday, September 15, 2017 10:45 AM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Chiappa,O banco restaurado foi em outra maquina, da mesma forma que estou fazendo agora.No banco que restaurei é um 12c com 100G, e esse que estou tentando é 10g com 13T Falei com o Admin, mas o cara nem deu a minima dizendo que não há nenhum problema com o DP. Grato,Ednilson De: sentto-1682896-122040-1505480875-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-122040-1505480875-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de jlchia...@yahoo.com.br [oracle_br] Enviada em: sexta-feira, 15 de setembro de 2017 10:08 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] Re: restore database Faz isso, checa com o admin : ao que parece, de acordo com o que vc descreve, não parece ter ** nada ** a ver com o RMAN em si e ** tudo ** a ver com config do DP Só confirmando : esse outro banco que vc restaurou foi em outro servidor que não o originalmente registrado no backup original ? Se sim e funcionou mesmo assim, a possibilidade apontada pelo Mufalani de que o setting referente Aonde restaurar esteja incorreto talvez não se comprove, mas *** CHEQUE *** com o Admin, mesmo assim... []s Chiappa #yiv1089060438 #yiv1089060438 -- #yiv1089060438ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv1089060438 #yiv1089060438ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv1089060438 #yiv1089060438ygrp-mkp #yiv1089060438hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv1089060438 #yiv1089060438ygrp-mkp #yiv1089060438ads {margin-bottom:10px;}#yiv1089060438 #yiv1089060438ygrp-mkp .yiv1089060438ad {padding:0 0;}#yiv1089060438 #yiv1089060438ygrp-mkp .yiv1089060438ad p {margin:0;}#yiv1089060438 #yiv1089060438ygrp-mkp .yiv1089060438ad a {color:#ff;text-decoration:none;}#yiv1089060438 #yiv1089060438ygrp-sponsor #yiv1089060438ygrp-lc {font-family:Arial;}#yiv1089060438 #yiv1089060438ygrp-sponsor #yiv1089060438ygrp-lc #yiv1089060438hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv1089060438 #yiv1089060438ygrp-sponsor #yiv1089060438ygrp-lc .yiv1089060438ad {margin-bottom:10px;padding:0 0;}#yiv1089060438 #yiv1089060438actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv1089060438 #yiv1089060438activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv1089060438 #yiv1089060438activity span {font-weight:700;}#yiv1089060438 #yiv1089060438activity span:first-child {text-transform:uppercase;}#yiv1089060438 #yiv1089060438activity span a {color:#5085b6;text-decoration:none;}#yiv1089060438 #yiv1089060438activity span span {color:#ff7900;}#yiv1089060438 #yiv1089060438activity span .yiv1089060438underline {text-decoration:underline;}#yiv1089060438 .yiv1089060438attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv1089060438 .yiv1089060438attach div a {text-decoration:none;}#yiv1089060438 .yiv1089060438attach img {border:none;padding-right:5px;}#yiv1089060438 .yiv1089060438attach label {display:block;margin-bottom:5px;}#yiv1089060438 .yiv1089060438attach label a {text-decoration:none;}#yiv1089060438 blockquote {margin:0 0 0 4px;}#yiv1089060438 .yiv1089060438bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv1089060438 .yiv1089060438bold a {text-decoration:none;}#yiv1089060438 dd.yiv1089060438last p a {font-family:Verdana;font-weight:700;}#yiv1089060438 dd.yiv1089060438last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv1089060438 dd.yiv1089060438last p span.yiv1089060438yshortcuts {margin-right:0;}#yiv1089060438 div.yiv1089060438attach-table div div a {text-decoration:none;}#yiv1089060438 div.yiv1089060438attach-table {width:400px;}#yiv1089060438 div.yiv1089060438file-title a, #yiv1089060438 div.yiv1089060438file-title a:active, #yiv1089060438 div.yiv1089060438file-title a:hover, #yiv1089060438 div.yiv1089060438file-title a:visited {text-decoration:none;}#yiv1089060438 div.yiv1089060438photo-title a, #yiv1089060438 div.yiv1089060438photo-title a:active, #yiv1089060438 div.yiv1089060438photo-title a:hover, #yiv1089060438 div.yiv1089060438photo-title a:visited {text-decoration:none;}#yiv1089060438 div#yiv1089060438ygrp-mlmsg #yiv1089060438ygrp-msg p a span.yiv1089060438yshortcuts {font-family:Verdana;font-size:10px;font-weight:norm
Re: [oracle_br] Re: restore database
Ednilson, Tem que fazer isso que o Mulafani falou. Para o HP Data Protector, se estiver rodando esse comando pelo servidor, você deve conseguir passar a variável OB2BARHOSTNAME, no parametro ENV, com o nome do servidor onde foi feito o backup, pode ser com ou sem o domínio dependendo de como a ferramenta de backup está identificando ele, então você vai ter que tentar dos dois jeitos: - OB2BARHOSTNAME - server where backup was taken (if you restore to a different server) Link do Orafaq: http://www.orafaq.com/wiki/Data_Protector Agora se estiver rodando pelo console do Data Protector, fica mais complicado. Vai ter que achar o template usado para gerar o script de restore e alterar ele. Além de passar a maquina de origem, as ferramentas de backup costumam tem uma configuração de segurança de acesso aos backups feitos em outros servidores. Não sei como funciona isso no Data Protector, se o acesso não estiver liberado você deve continuar recebendo algum erro de acesso aos backup pieces. Essa configuração de acesso, se tiver, deve ser a mesma feita para restaurar arquivos comuns. Atc,Luis Freitas On Friday, September 15, 2017 8:54 AM, "Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br]" wrote: Vc deve estar restaurando em uma máquina diferente da original? Caso sim, vc tem que dizer pra ferramenta de backup que a maquina de destino é a mesma de origem. Isso acontece muito em duplicações de base onde o analista de backup esquece de dar essa permissão e "enganar" o MML. Veja se não é isso que está ocorrendo no seu ambiente. Obter o Outlook para iOSFrom: oracle_br@yahoogrupos.com.br on behalf of jlchia...@yahoo.com.br [oracle_br] Sent: Friday, September 15, 2017 8:48:58 AM To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Re: restore database Blz ? Bom, a primeira msg é uma das mais importantes : Vendor specific error: OB2_StartObjectRestoreFullName() failed ERR(-2) Esse "vendor specific" normalmente indica que vc *** Não está ** usando RMAN diretamente, mas sim que a API do RMAN está sendo chamada por algum software de backup externo : pode ser Netbackup, pode ser HP Protect, pode ser Tivoli data protection, entre N+1! soluções de backup que se integram com o RMAN... Isso é importante porque é EXTREMAMENTE COMUM que o programa-terceiro de backup mantenha algum tipo de POOL, de controle interno dos backup pieces gerados pelo RMAN : se por qquer falha operacional o backup piece em questão está Presente na fita mas foi Removido do 'pool'/dos controles internos do soft de backup, o erro é esse que vc mostra : https://community.saas.hpe.com/t5/Data-Protector-Practitioners/Error-While-Restore-Vendor-specific-error/td-p/271328 exemplifica um caso desses... Para vc COMPROVAR ou NEGAR a hipótese, verifique EXATAMAMENTE qual solução de backup complementar/tape media library vc está usando E aciona o Suporte deles e/oucheque com um Especialista na tal solução se a config dela está OK (às vezes coisas bestas como ORACLE_SID impróprio ou variáveis de ambiente ou acessos dão erro do tipo, cfrme https://vox.veritas.com/t5/NetBackup/Oracle-RMAN-restore-is-failing-with-error-quot-ORA-19507-failed/td-p/539268 mostra), se o Client dela está corretamente instalado/setado na máquina onde vc está fazendo o RESTORE (normalmente isso é exigido), confirme que o 'pool/controles internos dela REGISTRAM DIREITINHO os backup pieces que te interessam... Outro ponto que me causa estranheza é, cfrme mostrado em http://oracle.ittoolbox.com/groups/technical-functional/oracle-db-l/ora27029-skgfrtrv-sbtrestore-returned-error-failed-to-process-backup-file-4473070 , a linha : ORA-19507: failed to retrieve sequential file, handle="PRD_Online_Diario_DBF.dbf", parms="" *** MEGA-ESTRANHO *** esse parms="" pois normalmente é Exigido que o acesso seja feito através de LIBRARIES da solução externa de backup , daí o parms 'SBT_LIBRARY=/ Isso é OUTRO PONTO POSSÍVEL de origem da tua falha, é Outra Coisa a esclarecer com o Suporte do fornecedor dessa app terceira/solução externa de backup e/ou com um Especialista nela... []s Chiappa #yiv2419124758 #yiv2419124758 -- #yiv2419124758ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2419124758 #yiv2419124758ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2419124758 #yiv2419124758ygrp-mkp #yiv2419124758hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2419124758 #yiv2419124758ygrp-mkp #yiv2419124758ads {margin-bottom:10px;}#yiv2419124758 #yiv2419124758ygrp-mkp .yiv2419124758ad {padding:0 0;}#yiv2419124758 #yiv2419124758ygrp-mkp .yiv2419124758ad p {margin:0;}#yiv2419124758 #yiv2419124758ygrp-mkp .yiv2419124758ad a {color:#ff;text-decoration:none;}#yiv2419124758 #yiv2419124758ygrp-sponsor #yiv2419124758ygrp-lc {font-family:Arial;}#yiv2419124758 #yiv2419124758ygrp-sponsor #yiv2419124758ygrp-lc #yiv2419124758
Re: [oracle_br] Re: Proc 1z0-071 Oracle sql
Rogério, Não estou a par de nenhuma promoção aqui no Brasil, hoje recebi um e-mail falando do "Test Fest" na Oracle Open World, mas precisa ir lá... Se você trabalha para um parceiro Oracle, eles recebem uma quantidade de vouchers gratuitos por ano, e talvez possam dar um para você. As vezes o pessoal do RH fica segurando esses vouchers, acaba sobrando no fim do ano e eles liberam pra quem aparecer para não perder a validade. O parceiro Oracle Gold, Platinum ou Diamond tem direito a um desconto de 25% nas provas também . Nesse caso você precisa de um numero de registro de parceiro para efetuar a compra do voucher, ou que eles façam a compra para você. Atc,Luis Freitas On Thursday, September 14, 2017 6:21 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Desconheço no momento alguma promoção aberta pra provas de Certificação - eventualmente vamos ver se alguém que tenha conhecimento de alguma promoção/desconto/código Ativo pra essa prova exatamente que vc quer fazer se manifesta... E além disso, fica de Olho em http://education.oracle.com (loga com teu usuário gratuito do OTN) e no site da empresa que aplica as provas (http://www.pearsonvue.com/oracle/) e nos blogs/portais relacionados ao assunto (como http://certificacaobd.com.br/, https://blogs.oracle.com/certification/ por exemplo) que volta e meia o pessoal dá dicas sobre promoções, mudanças de provas, diminuição (ou aumento, às vezes :0) nas exigências pras provas)... []s Chiappa #yiv5040811408 #yiv5040811408 -- #yiv5040811408ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5040811408 #yiv5040811408ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5040811408 #yiv5040811408ygrp-mkp #yiv5040811408hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5040811408 #yiv5040811408ygrp-mkp #yiv5040811408ads {margin-bottom:10px;}#yiv5040811408 #yiv5040811408ygrp-mkp .yiv5040811408ad {padding:0 0;}#yiv5040811408 #yiv5040811408ygrp-mkp .yiv5040811408ad p {margin:0;}#yiv5040811408 #yiv5040811408ygrp-mkp .yiv5040811408ad a {color:#ff;text-decoration:none;}#yiv5040811408 #yiv5040811408ygrp-sponsor #yiv5040811408ygrp-lc {font-family:Arial;}#yiv5040811408 #yiv5040811408ygrp-sponsor #yiv5040811408ygrp-lc #yiv5040811408hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv5040811408 #yiv5040811408ygrp-sponsor #yiv5040811408ygrp-lc .yiv5040811408ad {margin-bottom:10px;padding:0 0;}#yiv5040811408 #yiv5040811408actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv5040811408 #yiv5040811408activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv5040811408 #yiv5040811408activity span {font-weight:700;}#yiv5040811408 #yiv5040811408activity span:first-child {text-transform:uppercase;}#yiv5040811408 #yiv5040811408activity span a {color:#5085b6;text-decoration:none;}#yiv5040811408 #yiv5040811408activity span span {color:#ff7900;}#yiv5040811408 #yiv5040811408activity span .yiv5040811408underline {text-decoration:underline;}#yiv5040811408 .yiv5040811408attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv5040811408 .yiv5040811408attach div a {text-decoration:none;}#yiv5040811408 .yiv5040811408attach img {border:none;padding-right:5px;}#yiv5040811408 .yiv5040811408attach label {display:block;margin-bottom:5px;}#yiv5040811408 .yiv5040811408attach label a {text-decoration:none;}#yiv5040811408 blockquote {margin:0 0 0 4px;}#yiv5040811408 .yiv5040811408bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv5040811408 .yiv5040811408bold a {text-decoration:none;}#yiv5040811408 dd.yiv5040811408last p a {font-family:Verdana;font-weight:700;}#yiv5040811408 dd.yiv5040811408last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv5040811408 dd.yiv5040811408last p span.yiv5040811408yshortcuts {margin-right:0;}#yiv5040811408 div.yiv5040811408attach-table div div a {text-decoration:none;}#yiv5040811408 div.yiv5040811408attach-table {width:400px;}#yiv5040811408 div.yiv5040811408file-title a, #yiv5040811408 div.yiv5040811408file-title a:active, #yiv5040811408 div.yiv5040811408file-title a:hover, #yiv5040811408 div.yiv5040811408file-title a:visited {text-decoration:none;}#yiv5040811408 div.yiv5040811408photo-title a, #yiv5040811408 div.yiv5040811408photo-title a:active, #yiv5040811408 div.yiv5040811408photo-title a:hover, #yiv5040811408 div.yiv5040811408photo-title a:visited {text-decoration:none;}#yiv5040811408 div#yiv5040811408ygrp-mlmsg #yiv5040811408ygrp-msg p a span.yiv5040811408yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv5040811408 .yiv5040811408green {color:#628c2a;}#yiv5040811408 .yiv5040811408MsoNormal {margin:0 0 0 0;}#yiv5040811408 o {font-size:0;}#yiv5040811408 #yiv5040811408photos div {float:left;width:72px;}#yiv5040811408 #yiv5040811408photos div div {border:1px soli
Re: [oracle_br] Re: Problema caracter especial
Chiappa, Achei bem legal a dica do dump, não conhecia essa. Mas o comportamento do Oracle quando não há equivalência definida é colocar esse ? mesmo, quando não há conversão definida entre os caracteres. É fácil de testar isso apenas pelo client, sem passar por um dblink. Ha alguns caracteres entre o WE8ISO8859P1 e o WE8MSWIN1252 que tem o mesmo problema. Neste teste a base foi criada usando o WE8ISO8859P1. SQL> create table teste(x varchar2(10)); Table created. SQL> insert into teste values ('`'); 1 row created. SQL> insert into teste values ('´'); 1 row created. SQL> commit; Commit complete. SQL> exit $ echo $NLS_LANGAmerican_America.WE8ISO8859P1 $ sqlplus aaa/bbb SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 6 15:13:13 2017 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select * from teste; X--`´ SQL> exitDisconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options $ export NLS_LANG=AMERICAN_AMERICA.WE8ISO8859P15$ sqlplus aaa/bbb SQL*Plus: Release 11.2.0.4.0 Production on Wed Sep 6 15:13:20 2017 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to:Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit ProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing options SQL> select * from teste; X--`¿ SQL> Atc,Luis Freitas On Wednesday, September 6, 2017 2:03 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Sim, o P15 não é um 'superset' no sentido estrito, pois alguns caracteres não estão presentes MAS NOTAR que as posições referentes aos caracteres P1 diferentes no P15 *** não estão VAZIOS **, e sim ocupados com outros caracteres : é o caso dos caracteres hexa A4, A6, B4... CONFIRME que esses posições na tabela P15 NÂO ESTÂO VAZIAS, então eu DISCORDO TOTALMENTE que numa sessão com P15 como characterset é normal aparecer "?"... O que deveria acontecer se a sessão estivesse correta no quesitos NLS é aparacer caracteres DIFERENTES, tipo cedilha no lugar do z com acentos do espannhol e coisa assim, e ** Não ** o caracter "?", yes ??? E da mesma maneira, TANTO no P1 quanto no P15 as posições sem uso fixo/pré-determinado/unknow (do hexa 80 at hexa 9F) SÃO AS MESMAS, então se fossem esses os caracteres contidos TANTO em p1 quanto em P15 iria aparecer um ? , o que ao que entendi lá do colega não é o caso... De resto, a nota confirma ** exatamente ** o que eu disse, ie, que vc TEM que setar corretamente a variável NLS_LANG (apontando para o CARACTERSET P15, se é isso que ele quer exibir), setar o COLLATE/LANGUAGE no unix/linux/aix E a config do software de terminal PRECISAMENTE o que eu disse/recomendei... E é claro, a nota ** não ** dá a dica do DUMP 1016, que nos mostraria TANTO o characterset QUANTO os bytes efetivamente armazenados nessas strings []s Chiappa #yiv5084876523 #yiv5084876523 -- #yiv5084876523ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5084876523 #yiv5084876523ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5084876523 #yiv5084876523ygrp-mkp #yiv5084876523hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5084876523 #yiv5084876523ygrp-mkp #yiv5084876523ads {margin-bottom:10px;}#yiv5084876523 #yiv5084876523ygrp-mkp .yiv5084876523ad {padding:0 0;}#yiv5084876523 #yiv5084876523ygrp-mkp .yiv5084876523ad p {margin:0;}#yiv5084876523 #yiv5084876523ygrp-mkp .yiv5084876523ad a {color:#ff;text-decoration:none;}#yiv5084876523 #yiv5084876523ygrp-sponsor #yiv5084876523ygrp-lc {font-family:Arial;}#yiv5084876523 #yiv5084876523ygrp-sponsor #yiv5084876523ygrp-lc #yiv5084876523hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv5084876523 #yiv5084876523ygrp-sponsor #yiv5084876523ygrp-lc .yiv5084876523ad {margin-bottom:10px;padding:0 0;}#yiv5084876523 #yiv5084876523actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv5084876523 #yiv5084876523activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv5084876523 #yiv5084876523activity span {font-weight:700;}#yiv5084876523 #yiv5084876523activity span:first-child {text-transform:uppercase;}#yiv5084876523 #yiv5084876523activity span a {color:#5085b6;text-decoration:none;}#yiv5084876523 #yiv5084876523activity span span {color:#ff7900;}#yiv5084876523 #yiv5084876523activity span .yiv5084876523underline {text-decoration:underline;}#yiv5084876523 .yiv5084876523attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv5084876523 .yiv5084876523attach div a {text-decoration:none;}#yiv5084876523 .yiv5084876523attach img {border:none;padding-ri
Re: [oracle_br] Re: Problema caracter especial
Roger, Pela nota "Difference between WE8ISO8859P1 and WE8ISO8859P15 characterset (Doc ID 121627.1)", o WE8ISO8859P15 não é um "superset" do WE8ISO8859P1. Então alguns caracteres do WE8ISO8859P1 devem aparecer como o ? mesmo, pois não tem conversão. Da mesma forma, alguns caracteres do WE8ISO8859P15 devem mudar para ? se você tentar passar eles para o WE8ISO8859P1. A nota lista os caracteres que estão em conflito, que e incluí o ´. O WE8ISO8859P15 tem só `e '. Atc,Luis Freitas On Wednesday, September 6, 2017 9:00 AM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Blz - faz as verificações que indiquei que vc deve chegar no resultado ok... EM ESPECIAL, não deixe de setar a LANG para o chracaterset superset/'maior' dos envolvidos, de descobrir como setar a FONTE no teu software de terminal (assegurando que ele está usando uma FONTE que contém ** todos ** os caracteres necessários) E de fazer os ajustes de LOCALE no seu prompt do AIX, sendo que se vc usa bash shell, provavelmente vc vai poder automatizar eles no .bash_profile Não deixa de também fazer o teste de conexão/select dessa tabela com caracteres especiais no SQL DEVELOPER, já que por default ele converte tudo pra UNICODE, é improvável que haja caracteres não presentes no UNICODE nessas strings aí... E esse SELECT ** tem ** que conter também o DUMP das strings , pra gente ficar sabendo COMO foi codificada essa string, tipo : SELECT colunastring, DUMP(colunastring, 1016) from tabelaemquestão []s Chiappa #yiv8900305155 #yiv8900305155 -- #yiv8900305155ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv8900305155 #yiv8900305155ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv8900305155 #yiv8900305155ygrp-mkp #yiv8900305155hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv8900305155 #yiv8900305155ygrp-mkp #yiv8900305155ads {margin-bottom:10px;}#yiv8900305155 #yiv8900305155ygrp-mkp .yiv8900305155ad {padding:0 0;}#yiv8900305155 #yiv8900305155ygrp-mkp .yiv8900305155ad p {margin:0;}#yiv8900305155 #yiv8900305155ygrp-mkp .yiv8900305155ad a {color:#ff;text-decoration:none;}#yiv8900305155 #yiv8900305155ygrp-sponsor #yiv8900305155ygrp-lc {font-family:Arial;}#yiv8900305155 #yiv8900305155ygrp-sponsor #yiv8900305155ygrp-lc #yiv8900305155hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv8900305155 #yiv8900305155ygrp-sponsor #yiv8900305155ygrp-lc .yiv8900305155ad {margin-bottom:10px;padding:0 0;}#yiv8900305155 #yiv8900305155actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv8900305155 #yiv8900305155activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv8900305155 #yiv8900305155activity span {font-weight:700;}#yiv8900305155 #yiv8900305155activity span:first-child {text-transform:uppercase;}#yiv8900305155 #yiv8900305155activity span a {color:#5085b6;text-decoration:none;}#yiv8900305155 #yiv8900305155activity span span {color:#ff7900;}#yiv8900305155 #yiv8900305155activity span .yiv8900305155underline {text-decoration:underline;}#yiv8900305155 .yiv8900305155attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv8900305155 .yiv8900305155attach div a {text-decoration:none;}#yiv8900305155 .yiv8900305155attach img {border:none;padding-right:5px;}#yiv8900305155 .yiv8900305155attach label {display:block;margin-bottom:5px;}#yiv8900305155 .yiv8900305155attach label a {text-decoration:none;}#yiv8900305155 blockquote {margin:0 0 0 4px;}#yiv8900305155 .yiv8900305155bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv8900305155 .yiv8900305155bold a {text-decoration:none;}#yiv8900305155 dd.yiv8900305155last p a {font-family:Verdana;font-weight:700;}#yiv8900305155 dd.yiv8900305155last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv8900305155 dd.yiv8900305155last p span.yiv8900305155yshortcuts {margin-right:0;}#yiv8900305155 div.yiv8900305155attach-table div div a {text-decoration:none;}#yiv8900305155 div.yiv8900305155attach-table {width:400px;}#yiv8900305155 div.yiv8900305155file-title a, #yiv8900305155 div.yiv8900305155file-title a:active, #yiv8900305155 div.yiv8900305155file-title a:hover, #yiv8900305155 div.yiv8900305155file-title a:visited {text-decoration:none;}#yiv8900305155 div.yiv8900305155photo-title a, #yiv8900305155 div.yiv8900305155photo-title a:active, #yiv8900305155 div.yiv8900305155photo-title a:hover, #yiv8900305155 div.yiv8900305155photo-title a:visited {text-decoration:none;}#yiv8900305155 div#yiv8900305155ygrp-mlmsg #yiv8900305155ygrp-msg p a span.yiv8900305155yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv8900305155 .yiv8900305155green {color:#628c2a;}#yiv8900305155 .yiv8900305155MsoNormal {margin:0 0 0 0;}#yiv8900305155 o {font-size:0;}#yiv8900305155 #yiv8900305155photos div {float:left;width:72px;}#yiv8900305155 #yiv890030
Re: RES: [oracle_br] Recup erar espaço livre na SYSAUX
Ednilson, Bom, poderia ter, mas apareceria um "BIN$" alguma coisa lá na DBA_EXTENTS. Atc,Luis Freitas On Thursday, August 31, 2017 4:49 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Mufalani,Não existia objetos de usuarios comum nesta tablespace. SQL> purge dba_recyclebin; DBA Recyclebin purged. SQL> alter database datafile '/ora001/oradata/dboLIMS/sysaux01.dbf' resize 1m;alter database datafile '/ora001/oradata/dboLIMS/sysaux01.dbf' resize 1m*ERROR at line 1:ORA-03297: file contains used data beyond requested RESIZE value Grato,Ednilson De: sentto-1682896-122001-1504208145-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-122001-1504208145-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 16:26 Para: oracle_br@yahoogrupos.com.br; oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Recup erar espaço livre na SYSAUX Só chutando, havia alguma coisa de usuario nessa tablespace que foi dropado? Caso sim, da um purge na dba_recyclebin, depois de liberar lá ai tu consegue fazer o resize do datafile. Obter o Outlook para iOS_ From: jlchia...@yahoo.com.br [oracle_br] Sent: quinta-feira, agosto 31, 2017 16:20 Subject: Re: RES: RES: RES: [oracle_br] Recup erar espaço livre na SYSAUX To: Repetindo e confirmando : vc ** FEZ ** a consulta na V$SYSAUX_OCCUPANTS que indiquei e a soma da coluna de bytes/tamanho dos ocupantes tá dando ** muito menos ** do que o tamanho atual da tablespace SYSAUX SE SIM, pra mim tá Claro que a questão é que no passado vc teve ocupantes que consumiam muito e após o procedimento de limpeza os "registros" das "tabelas" envolvidas foram deletados MAS o espaço em disco Não Foi Liberado Isso é COMUM, é EXATAMENTE ASSIM que o RDBMS Oracle trabalha, após um DELETE e COMMIT o espaço em disco que era ocupado pelos dados apagados PERMANECE ALOCADO para a mesma tabela... E como eu falei na minha palestra do dba barsil (em http://www.dbabr.com.br/dbabrasil2/palestras/apresentacoes/Jose_Chiappa_Mitos.pdf) isso Não é Fragmentação, pois os próximos INSERTs vão SIM AUTOMAGICAMENTE ocupar esse espaço que hoje está em branco... SE vc quiser liberar pra disco esse espaço, experimente fazer um SHRINK nos segmentos envolvidos mas PLZ antes confirme com o SUPORTE ORACLE se há algum procedimento extra que deva ser feito, tipo desativar temporariamente a feature cujas tabelas tão com bastante espaço reservado mas não usado no momento... []s Chiappa #yiv1795128687 #yiv1795128687 -- #yiv1795128687ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv1795128687 #yiv1795128687ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv1795128687 #yiv1795128687ygrp-mkp #yiv1795128687hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv1795128687 #yiv1795128687ygrp-mkp #yiv1795128687ads {margin-bottom:10px;}#yiv1795128687 #yiv1795128687ygrp-mkp .yiv1795128687ad {padding:0 0;}#yiv1795128687 #yiv1795128687ygrp-mkp .yiv1795128687ad p {margin:0;}#yiv1795128687 #yiv1795128687ygrp-mkp .yiv1795128687ad a {color:#ff;text-decoration:none;}#yiv1795128687 #yiv1795128687ygrp-sponsor #yiv1795128687ygrp-lc {font-family:Arial;}#yiv1795128687 #yiv1795128687ygrp-sponsor #yiv1795128687ygrp-lc #yiv1795128687hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv1795128687 #yiv1795128687ygrp-sponsor #yiv1795128687ygrp-lc .yiv1795128687ad {margin-bottom:10px;padding:0 0;}#yiv1795128687 #yiv1795128687actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv1795128687 #yiv1795128687activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv1795128687 #yiv1795128687activity span {font-weight:700;}#yiv1795128687 #yiv1795128687activity span:first-child {text-transform:uppercase;}#yiv1795128687 #yiv1795128687activity span a {color:#5085b6;text-decoration:none;}#yiv1795128687 #yiv1795128687activity span span {color:#ff7900;}#yiv1795128687 #yiv1795128687activity span .yiv1795128687underline {text-decoration:underline;}#yiv1795128687 .yiv1795128687attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv1795128687 .yiv1795128687attach div a {text-decoration:none;}#yiv1795128687 .yiv1795128687attach img {border:none;padding-right:5px;}#yiv1795128687 .yiv1795128687attach label {display:block;margin-bottom:5px;}#yiv1795128687 .yiv1795128687attach label a {text-decoration:none;}#yiv1795128687 blockquote {margin:0 0 0 4px;}#yiv1795128687 .yiv1795128687bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv1795128687 .yiv1795128687bold a {text-decoration:none;}#yiv1795128687 dd.yiv1795128687last p a {font-family:Verdana;font-weight:700;}#yiv1795128687 dd.yiv1795128687last p span {
Re: RES: RES: RES: [oracle_br] R ecup erar espaço livre na SYSAUX
Chiappa, Alter tablespace ... shrink space, confesso que não conhecia essa. Tive que abrir o manual de "SQL Reference". Mas esse só funciona para tablespace temporário. SHRINK SPACE ClauseThis clause is valid only for temporary tablespaces. It lets you reduce the amount of space the tablespace is taking. In the optional KEEP clause, the size_clause defines the lower bound that a tablespace can be shrunk to. It is the opposite of MAXSIZE for an autoextensible tablespace. If you omit the KEEP clause, then the database will attempt to shrink the tablespace as much as possible as long as other tablespace storage attributes are satisfied. Atc,Luis Freitas On Thursday, August 31, 2017 4:55 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Dois pontos meio óbvios mas que valem a pena ser citados : a) além de shrink do segmento e/ou eventuais MOVEs (talvez até MOVE pra mesma tablespace) , um outro método possível para vc liberar de volta pro disco/sistema operacional espaço sem dados é vc DROPAR o segmento que tem esse espaço vazio alocado pra ele : já que muitos dos ocupantes da SYSAUX são repositórios e coisas assim (principalmente snapshots do AWR e coisas assim) que podem ser dropadas e recriadas via scripts em $ORACLE_HOME/rdbms/admin, isso pode ser uma Opção, assim que vc identificar QUAIS segmentos estão com espaço em branco e QUAL feature/ocupante os usa... b) eu citei shrink de segmentos mas Lembre que existe també o SHRINK SPACE de tablespace, via comando ALTER TABLESPACE : OBVIAMENTE vc tem que ter privilégio de SYSDBA pra fazer isso na SYSAUX e certamente vai ter que desativar temporariamente alguma(s) feature(s) mas em princípio é Possível... []s Chiappa #yiv0407670508 #yiv0407670508 -- #yiv0407670508ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0407670508 #yiv0407670508ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0407670508 #yiv0407670508ygrp-mkp #yiv0407670508hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0407670508 #yiv0407670508ygrp-mkp #yiv0407670508ads {margin-bottom:10px;}#yiv0407670508 #yiv0407670508ygrp-mkp .yiv0407670508ad {padding:0 0;}#yiv0407670508 #yiv0407670508ygrp-mkp .yiv0407670508ad p {margin:0;}#yiv0407670508 #yiv0407670508ygrp-mkp .yiv0407670508ad a {color:#ff;text-decoration:none;}#yiv0407670508 #yiv0407670508ygrp-sponsor #yiv0407670508ygrp-lc {font-family:Arial;}#yiv0407670508 #yiv0407670508ygrp-sponsor #yiv0407670508ygrp-lc #yiv0407670508hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0407670508 #yiv0407670508ygrp-sponsor #yiv0407670508ygrp-lc .yiv0407670508ad {margin-bottom:10px;padding:0 0;}#yiv0407670508 #yiv0407670508actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0407670508 #yiv0407670508activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0407670508 #yiv0407670508activity span {font-weight:700;}#yiv0407670508 #yiv0407670508activity span:first-child {text-transform:uppercase;}#yiv0407670508 #yiv0407670508activity span a {color:#5085b6;text-decoration:none;}#yiv0407670508 #yiv0407670508activity span span {color:#ff7900;}#yiv0407670508 #yiv0407670508activity span .yiv0407670508underline {text-decoration:underline;}#yiv0407670508 .yiv0407670508attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv0407670508 .yiv0407670508attach div a {text-decoration:none;}#yiv0407670508 .yiv0407670508attach img {border:none;padding-right:5px;}#yiv0407670508 .yiv0407670508attach label {display:block;margin-bottom:5px;}#yiv0407670508 .yiv0407670508attach label a {text-decoration:none;}#yiv0407670508 blockquote {margin:0 0 0 4px;}#yiv0407670508 .yiv0407670508bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv0407670508 .yiv0407670508bold a {text-decoration:none;}#yiv0407670508 dd.yiv0407670508last p a {font-family:Verdana;font-weight:700;}#yiv0407670508 dd.yiv0407670508last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv0407670508 dd.yiv0407670508last p span.yiv0407670508yshortcuts {margin-right:0;}#yiv0407670508 div.yiv0407670508attach-table div div a {text-decoration:none;}#yiv0407670508 div.yiv0407670508attach-table {width:400px;}#yiv0407670508 div.yiv0407670508file-title a, #yiv0407670508 div.yiv0407670508file-title a:active, #yiv0407670508 div.yiv0407670508file-title a:hover, #yiv0407670508 div.yiv0407670508file-title a:visited {text-decoration:none;}#yiv0407670508 div.yiv0407670508photo-title a, #yiv0407670508 div.yiv0407670508photo-title a:active, #yiv0407670508 div.yiv0407670508photo-title a:hover, #yiv0407670508 div.yiv0407670508photo-title a:visited {text-decoration:none;}#yiv0407670508 div#yiv0407670508ygrp-mlmsg #yiv0407670508ygrp-msg p a span.yiv0407670508yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv0407670508 .yiv0407670508green {co
Re: RES: RES: [oracle_br] Recuperar espaço livre na SYSAUX
Ednilson, Faltou reforçar que mover ou reorganizar objetos na SYSAUX, tem que ser seguindo procedimento do suporte. Depois de identificar o objeto, precisa seguir um procedimento suportado para reorganizar ele, normalmente com o banco em modo "restricted session", como o pessoal já mencionou ai. A unica exceção que conheço é mesmo essas tabelas de auditoria. Mesmo assim, o que dá pra fazer com o banco aberto é truncar elas apenas. Atc,Luis Freitas On Thursday, August 31, 2017 4:00 PM, "Luis Freitas lfreita...@yahoo.com [oracle_br]" wrote: Ednilson, Algumas coisas é possível mover, mas muita coisa que tá na SYSAUX tem que ficar lá mesmo. Mas se forem objetos que possa reorganizar, por ex, com alter table move, mantendo o tablespace, ou truncar e reimportar os dados, já resolve. Após fazer isso os extents são realocados no começo dos datafiles e você vai conseguir diminuir eles. Tanto a FGA_LOG$ como a AUD$ são da auditoria, você pode truncar elas. Já os LOBs, precisa identificar quais tabelas eles pertencem, pela DBA_LOBS. Inclua também o block_id na query, para ver realmente quais extents estão no fim do arquivo. A posição no arquivo é o block_id*db_block_size. Atc,Luis Freitas On Thursday, August 31, 2017 3:42 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Luis,Certo, mas descobrindo esses objetos a proposta seria criar uma novo tablespace e mover ? SQL> select owner, segment_name, segment_type from DBA_EXTENTS where tablespace_name = 'SYSAUX' and file_id = 13 order by block_id desc; 2 3 4 5 OWNER SEGMENT_NAME SEGMEN-- -- --SYS SYS_IL159130C00028$$ LOBINDEXSYS SYS_LOB159130C00028$$ LOBSEGMENTSYS SYS_IL159130C00013$$ LOBINDEXSYS SYS_LOB159130C00013$$ LOBSEGMENTSYS FGA_LOG$ TABLESYS AUD$ TABLESYS SYS_IL000501C00041$$ LOBINDEXSYS SYS_LOB000501C00041$$ LOBSEGMENTSYS SYS_IL000501C00040$$ LOBINDEXSYS SYS_LOB000501C00040$$ LOBSEG... Grato,Ednilson De: sentto-1682896-121989-1504202538-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121989-1504202538-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Luis Freitas lfreita...@yahoo.com [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 15:02 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] Recuperar espaço livre na SYSAUX Ednilson, ... order by block_id desc Mas preste atenção no file_id também, que é o datafile. Talvez rodar a query com file_id=.. para cada datafile. Atc,Luis Freitas On Thursday, August 31, 2017 2:55 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Mufalani,Eu já havia feito um Purge na Audit Trail e deixei desabilitada. Doc 1582627.1 Grato,Ednilson De: sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 14:28 Para: oracle_br@yahoogrupos.com.br; oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Recuperar espaço livre na SYSAUX Boa tarde, Dá uma olhada nas notas 1292724.1 e 1055547.1 e veja se lhe ajudam. AttMufalani Obter o Outlook para iOSFrom: oracle_br@yahoogrupos.com.br on behalf of 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] Sent: Thursday, August 31, 2017 2:25:48 PM To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Recuperar espaço livre na SYSAUX Boa Tarde Pessoal,- Red Hat Enterprise Linux Server release 6.3- Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production Existe alguma forma de recuperar esse espaço livre da tablespace SYSAUX? SQL> SELECT B.tablespace_name, tbs_size SizeMb, A.free_space FreeMb FROM (SELECT tablespace_name, ROUND(SUM(bytes) / 1024 / 1024) as free_space 2 3 4 FROM dba_free_space GROUP BY tablespace_name) A, (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 as tbs_size FROM dba_data_files GROUP BY tablespace_name) B 5 WHERE A.tablespace_name(+) = B.tablespace_nameorder by FreeMb desc 6 7 8 9 10 11 / TABLESPACE_NAME SIZEMB FREEMB-- -- --SYSAUX 111759 108748DOCXINDEX
Re: RES: RES: [oracle_br] Recuperar espaço livre na SYSAUX
Ednilson, Algumas coisas é possível mover, mas muita coisa que tá na SYSAUX tem que ficar lá mesmo. Mas se forem objetos que possa reorganizar, por ex, com alter table move, mantendo o tablespace, ou truncar e reimportar os dados, já resolve. Após fazer isso os extents são realocados no começo dos datafiles e você vai conseguir diminuir eles. Tanto a FGA_LOG$ como a AUD$ são da auditoria, você pode truncar elas. Já os LOBs, precisa identificar quais tabelas eles pertencem, pela DBA_LOBS. Inclua também o block_id na query, para ver realmente quais extents estão no fim do arquivo. A posição no arquivo é o block_id*db_block_size. Atc,Luis Freitas On Thursday, August 31, 2017 3:42 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Luis,Certo, mas descobrindo esses objetos a proposta seria criar uma novo tablespace e mover ? SQL> select owner, segment_name, segment_type from DBA_EXTENTS where tablespace_name = 'SYSAUX' and file_id = 13 order by block_id desc; 2 3 4 5 OWNER SEGMENT_NAME SEGMEN-- -- --SYS SYS_IL159130C00028$$ LOBINDEXSYS SYS_LOB159130C00028$$ LOBSEGMENTSYS SYS_IL159130C00013$$ LOBINDEXSYS SYS_LOB159130C00013$$ LOBSEGMENTSYS FGA_LOG$ TABLESYS AUD$ TABLESYS SYS_IL000501C00041$$ LOBINDEXSYS SYS_LOB000501C00041$$ LOBSEGMENTSYS SYS_IL000501C00040$$ LOBINDEXSYS SYS_LOB000501C00040$$ LOBSEG... Grato,Ednilson De: sentto-1682896-121989-1504202538-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121989-1504202538-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Luis Freitas lfreita...@yahoo.com [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 15:02 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] Recuperar espaço livre na SYSAUX Ednilson, ... order by block_id desc Mas preste atenção no file_id também, que é o datafile. Talvez rodar a query com file_id=.. para cada datafile. Atc,Luis Freitas On Thursday, August 31, 2017 2:55 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Mufalani,Eu já havia feito um Purge na Audit Trail e deixei desabilitada. Doc 1582627.1 Grato,Ednilson De: sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 14:28 Para: oracle_br@yahoogrupos.com.br; oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Recuperar espaço livre na SYSAUX Boa tarde, Dá uma olhada nas notas 1292724.1 e 1055547.1 e veja se lhe ajudam. AttMufalani Obter o Outlook para iOSFrom: oracle_br@yahoogrupos.com.br on behalf of 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] Sent: Thursday, August 31, 2017 2:25:48 PM To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Recuperar espaço livre na SYSAUX Boa Tarde Pessoal,- Red Hat Enterprise Linux Server release 6.3- Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production Existe alguma forma de recuperar esse espaço livre da tablespace SYSAUX? SQL> SELECT B.tablespace_name, tbs_size SizeMb, A.free_space FreeMb FROM (SELECT tablespace_name, ROUND(SUM(bytes) / 1024 / 1024) as free_space 2 3 4 FROM dba_free_space GROUP BY tablespace_name) A, (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 as tbs_size FROM dba_data_files GROUP BY tablespace_name) B 5 WHERE A.tablespace_name(+) = B.tablespace_nameorder by FreeMb desc 6 7 8 9 10 11 / TABLESPACE_NAME SIZEMB FREEMB-- -- --SYSAUX 111759 108748DOCXINDEX 4254 211DOCCONTROL 3209 191UNDOTBS1 222 179SYSTEM 879 18DOCXLOGACESSO 10 9DOCXLONG 981 1DOCXRELAT 5 0USERS 2 0 10 rows selected. Grato,Ednilson Silva #yiv7458902407 #yiv7458902407 -- #yiv7458902407ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7458902407 #y
Re: RES: [oracle_br] Recuperar espaço livre na SYSAUX
Ednilson, ... order by block_id desc Mas preste atenção no file_id também, que é o datafile. Talvez rodar a query com file_id=.. para cada datafile. Atc,Luis Freitas On Thursday, August 31, 2017 2:55 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Mufalani,Eu já havia feito um Purge na Audit Trail e deixei desabilitada. Doc 1582627.1 Grato,Ednilson De: sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121986-1504201119-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br] Enviada em: quinta-feira, 31 de agosto de 2017 14:28 Para: oracle_br@yahoogrupos.com.br; oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] Recuperar espaço livre na SYSAUX Boa tarde, Dá uma olhada nas notas 1292724.1 e 1055547.1 e veja se lhe ajudam. AttMufalani Obter o Outlook para iOSFrom: oracle_br@yahoogrupos.com.br on behalf of 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] Sent: Thursday, August 31, 2017 2:25:48 PM To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Recuperar espaço livre na SYSAUX Boa Tarde Pessoal,- Red Hat Enterprise Linux Server release 6.3- Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production Existe alguma forma de recuperar esse espaço livre da tablespace SYSAUX? SQL> SELECT B.tablespace_name, tbs_size SizeMb, A.free_space FreeMb FROM (SELECT tablespace_name, ROUND(SUM(bytes) / 1024 / 1024) as free_space 2 3 4 FROM dba_free_space GROUP BY tablespace_name) A, (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 as tbs_size FROM dba_data_files GROUP BY tablespace_name) B 5 WHERE A.tablespace_name(+) = B.tablespace_nameorder by FreeMb desc 6 7 8 9 10 11 / TABLESPACE_NAME SIZEMB FREEMB-- -- --SYSAUX 111759 108748DOCXINDEX 4254 211DOCCONTROL 3209 191UNDOTBS1 222 179SYSTEM 879 18DOCXLOGACESSO 10 9DOCXLONG 981 1DOCXRELAT 5 0USERS 2 0 10 rows selected. Grato,Ednilson Silva #yiv6527039585 #yiv6527039585 -- #yiv6527039585ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv6527039585 #yiv6527039585ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv6527039585 #yiv6527039585ygrp-mkp #yiv6527039585hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv6527039585 #yiv6527039585ygrp-mkp #yiv6527039585ads {margin-bottom:10px;}#yiv6527039585 #yiv6527039585ygrp-mkp .yiv6527039585ad {padding:0 0;}#yiv6527039585 #yiv6527039585ygrp-mkp .yiv6527039585ad p {margin:0;}#yiv6527039585 #yiv6527039585ygrp-mkp .yiv6527039585ad a {color:#ff;text-decoration:none;}#yiv6527039585 #yiv6527039585ygrp-sponsor #yiv6527039585ygrp-lc {font-family:Arial;}#yiv6527039585 #yiv6527039585ygrp-sponsor #yiv6527039585ygrp-lc #yiv6527039585hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv6527039585 #yiv6527039585ygrp-sponsor #yiv6527039585ygrp-lc .yiv6527039585ad {margin-bottom:10px;padding:0 0;}#yiv6527039585 #yiv6527039585actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv6527039585 #yiv6527039585activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv6527039585 #yiv6527039585activity span {font-weight:700;}#yiv6527039585 #yiv6527039585activity span:first-child {text-transform:uppercase;}#yiv6527039585 #yiv6527039585activity span a {color:#5085b6;text-decoration:none;}#yiv6527039585 #yiv6527039585activity span span {color:#ff7900;}#yiv6527039585 #yiv6527039585activity span .yiv6527039585underline {text-decoration:underline;}#yiv6527039585 .yiv6527039585attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv6527039585 .yiv6527039585attach div a {text-decoration:none;}#yiv6527039585 .yiv6527039585attach img {border:none;padding-right:5px;}#yiv6527039585 .yiv6527039585attach label {display:block;margin-bottom:5px;}#yiv6527039585 .yiv6527039585attach label a {text-decoration:none;}#yiv6527039585 blockquote {margin:0 0 0 4px;}#yiv6527039585 .yiv6527039585bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv6527039585 .yiv6527039585bold a {text-decoration:none;}#yiv6527039585 dd.yiv6527039585last p a {font-family:Verdana;font-weight:700;}#yiv6527039585 dd.yiv6527039585last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv6527039585 dd.yiv6527039585last p span.yiv6527039585yshortcuts {margin-right:0;}#yiv6527039585
Re: [oracle_br] Recuperar espaço livre na SYSAUX
Edninson, A SYSAUX é menos tensa que a SYSTEM, mas deve depender do que está ocupando os datafiles. Você olhou na DBA_EXTENTS quais são os objetos ocupando os blocos finais dos datafiles? Se for a auditoria, AUD$, por exemplo, tem como reorganizar ela e depois reduzir os datafiles. (Ex. How to Reorganize SYS.AUD$ Table Doc ID 166301.1 e alguns outros notes sobre isso) Atç,Luis Freitas On Thursday, August 31, 2017 2:25 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Boa Tarde Pessoal,- Red Hat Enterprise Linux Server release 6.3- Oracle Database 12c Enterprise Edition Release 12.1.0.2.0 - 64bit Production Existe alguma forma de recuperar esse espaço livre da tablespace SYSAUX? SQL> SELECT B.tablespace_name, tbs_size SizeMb, A.free_space FreeMb FROM (SELECT tablespace_name, ROUND(SUM(bytes) / 1024 / 1024) as free_space 2 3 4 FROM dba_free_space GROUP BY tablespace_name) A, (SELECT tablespace_name, SUM(bytes) / 1024 / 1024 as tbs_size FROM dba_data_files GROUP BY tablespace_name) B 5 WHERE A.tablespace_name(+) = B.tablespace_name order by FreeMb desc 6 7 8 9 10 11 / TABLESPACE_NAME SIZEMB FREEMB-- -- --SYSAUX 111759 108748DOCXINDEX 4254 211DOCCONTROL 3209 191UNDOTBS1 222 179SYSTEM 879 18DOCXLOGACESSO 10 9DOCXLONG 981 1DOCXRELAT 5 0USERS 2 0 10 rows selected. Grato,Ednilson Silva #yiv2834690207 #yiv2834690207 -- #yiv2834690207ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2834690207 #yiv2834690207ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2834690207 #yiv2834690207ygrp-mkp #yiv2834690207hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2834690207 #yiv2834690207ygrp-mkp #yiv2834690207ads {margin-bottom:10px;}#yiv2834690207 #yiv2834690207ygrp-mkp .yiv2834690207ad {padding:0 0;}#yiv2834690207 #yiv2834690207ygrp-mkp .yiv2834690207ad p {margin:0;}#yiv2834690207 #yiv2834690207ygrp-mkp .yiv2834690207ad a {color:#ff;text-decoration:none;}#yiv2834690207 #yiv2834690207ygrp-sponsor #yiv2834690207ygrp-lc {font-family:Arial;}#yiv2834690207 #yiv2834690207ygrp-sponsor #yiv2834690207ygrp-lc #yiv2834690207hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2834690207 #yiv2834690207ygrp-sponsor #yiv2834690207ygrp-lc .yiv2834690207ad {margin-bottom:10px;padding:0 0;}#yiv2834690207 #yiv2834690207actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv2834690207 #yiv2834690207activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv2834690207 #yiv2834690207activity span {font-weight:700;}#yiv2834690207 #yiv2834690207activity span:first-child {text-transform:uppercase;}#yiv2834690207 #yiv2834690207activity span a {color:#5085b6;text-decoration:none;}#yiv2834690207 #yiv2834690207activity span span {color:#ff7900;}#yiv2834690207 #yiv2834690207activity span .yiv2834690207underline {text-decoration:underline;}#yiv2834690207 .yiv2834690207attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv2834690207 .yiv2834690207attach div a {text-decoration:none;}#yiv2834690207 .yiv2834690207attach img {border:none;padding-right:5px;}#yiv2834690207 .yiv2834690207attach label {display:block;margin-bottom:5px;}#yiv2834690207 .yiv2834690207attach label a {text-decoration:none;}#yiv2834690207 blockquote {margin:0 0 0 4px;}#yiv2834690207 .yiv2834690207bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv2834690207 .yiv2834690207bold a {text-decoration:none;}#yiv2834690207 dd.yiv2834690207last p a {font-family:Verdana;font-weight:700;}#yiv2834690207 dd.yiv2834690207last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv2834690207 dd.yiv2834690207last p span.yiv2834690207yshortcuts {margin-right:0;}#yiv2834690207 div.yiv2834690207attach-table div div a {text-decoration:none;}#yiv2834690207 div.yiv2834690207attach-table {width:400px;}#yiv2834690207 div.yiv2834690207file-title a, #yiv2834690207 div.yiv2834690207file-title a:active, #yiv2834690207 div.yiv2834690207file-title a:hover, #yiv2834690207 div.yiv2834690207file-title a:visited {text-decoration:none;}#yiv2834690207 div.yiv2834690207photo-title a, #yiv2834690207 div.yiv2834690207photo-title a:active, #yiv2834690207 div.yiv2834690207photo-title a:hover, #yiv2834690207 div.yiv2834690207photo-title a:visited {text-decoration:none;}#yiv2834690207 div#yiv2834690207ygrp-mlmsg #yiv2834690207ygrp-msg p a span.yiv28
Re: [oracle_br] Re: Script sql para geração de DDL d e todo o database/instancia separado por usuario
Froier, Dois outros exemplos, nesse primeiro, do Burleson, ele fala sobre os problemas com dependência entre tabelas e constraints: http://www.dba-oracle.com/t_1_dbms_metadata.htm http://hudsonsantosdba.blogspot.com.br/2011/05/gerar-schema-ddl-no-oracle-sem-datapump.html Atc,Luis Freitas On Thursday, August 3, 2017 6:31 PM, "fro...@gmail.com [oracle_br]" wrote: Muito obrigado, vou gerar o script e posto para voces. #yiv4134441766 #yiv4134441766 -- #yiv4134441766ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv4134441766 #yiv4134441766ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv4134441766 #yiv4134441766ygrp-mkp #yiv4134441766hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv4134441766 #yiv4134441766ygrp-mkp #yiv4134441766ads {margin-bottom:10px;}#yiv4134441766 #yiv4134441766ygrp-mkp .yiv4134441766ad {padding:0 0;}#yiv4134441766 #yiv4134441766ygrp-mkp .yiv4134441766ad p {margin:0;}#yiv4134441766 #yiv4134441766ygrp-mkp .yiv4134441766ad a {color:#ff;text-decoration:none;}#yiv4134441766 #yiv4134441766ygrp-sponsor #yiv4134441766ygrp-lc {font-family:Arial;}#yiv4134441766 #yiv4134441766ygrp-sponsor #yiv4134441766ygrp-lc #yiv4134441766hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv4134441766 #yiv4134441766ygrp-sponsor #yiv4134441766ygrp-lc .yiv4134441766ad {margin-bottom:10px;padding:0 0;}#yiv4134441766 #yiv4134441766actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv4134441766 #yiv4134441766activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv4134441766 #yiv4134441766activity span {font-weight:700;}#yiv4134441766 #yiv4134441766activity span:first-child {text-transform:uppercase;}#yiv4134441766 #yiv4134441766activity span a {color:#5085b6;text-decoration:none;}#yiv4134441766 #yiv4134441766activity span span {color:#ff7900;}#yiv4134441766 #yiv4134441766activity span .yiv4134441766underline {text-decoration:underline;}#yiv4134441766 .yiv4134441766attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv4134441766 .yiv4134441766attach div a {text-decoration:none;}#yiv4134441766 .yiv4134441766attach img {border:none;padding-right:5px;}#yiv4134441766 .yiv4134441766attach label {display:block;margin-bottom:5px;}#yiv4134441766 .yiv4134441766attach label a {text-decoration:none;}#yiv4134441766 blockquote {margin:0 0 0 4px;}#yiv4134441766 .yiv4134441766bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv4134441766 .yiv4134441766bold a {text-decoration:none;}#yiv4134441766 dd.yiv4134441766last p a {font-family:Verdana;font-weight:700;}#yiv4134441766 dd.yiv4134441766last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv4134441766 dd.yiv4134441766last p span.yiv4134441766yshortcuts {margin-right:0;}#yiv4134441766 div.yiv4134441766attach-table div div a {text-decoration:none;}#yiv4134441766 div.yiv4134441766attach-table {width:400px;}#yiv4134441766 div.yiv4134441766file-title a, #yiv4134441766 div.yiv4134441766file-title a:active, #yiv4134441766 div.yiv4134441766file-title a:hover, #yiv4134441766 div.yiv4134441766file-title a:visited {text-decoration:none;}#yiv4134441766 div.yiv4134441766photo-title a, #yiv4134441766 div.yiv4134441766photo-title a:active, #yiv4134441766 div.yiv4134441766photo-title a:hover, #yiv4134441766 div.yiv4134441766photo-title a:visited {text-decoration:none;}#yiv4134441766 div#yiv4134441766ygrp-mlmsg #yiv4134441766ygrp-msg p a span.yiv4134441766yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv4134441766 .yiv4134441766green {color:#628c2a;}#yiv4134441766 .yiv4134441766MsoNormal {margin:0 0 0 0;}#yiv4134441766 o {font-size:0;}#yiv4134441766 #yiv4134441766photos div {float:left;width:72px;}#yiv4134441766 #yiv4134441766photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv4134441766 #yiv4134441766photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv4134441766 #yiv4134441766reco-category {font-size:77%;}#yiv4134441766 #yiv4134441766reco-desc {font-size:77%;}#yiv4134441766 .yiv4134441766replbq {margin:4px;}#yiv4134441766 #yiv4134441766ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv4134441766 #yiv4134441766ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv4134441766 #yiv4134441766ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv4134441766 #yiv4134441766ygrp-mlmsg select, #yiv4134441766 input, #yiv4134441766 textarea {font:99% Arial, Helvetica, clean, sans-serif;}#yiv4134441766 #yiv4134441766ygrp-mlmsg pre, #yiv4134441766 code {font:115% monospace;}#yiv4134441766 #yiv4134441766ygrp-mlmsg * {line-height:1.22em;}#yiv4134441766 #yiv4134441766ygrp-mlmsg #yiv4134441766logo {padding-bottom:10px;}#yiv4134441766 #yiv4134441766ygrp-msg p
Fw: Re: [oracle_br] Re: Script sql para geração de DDL de todo o database/instancia separado por usuario
Froier, Concordo com o Chiappa sobre isso, o expdp/impdp com sqlfile é a melhor opção, você pode fazer o export com o sys ou outro usuário com permissão de export full database e filtrar com o parametro "schemas". Ele vai gerar um script funcional para recriar os esquemas de forma fácil. Do exemplo que ele já mandou pode incluir a opção "CONTENT=metadata_only" no export, o que deve gerar um arquivo pequeno, contendo apenas a definição dos objetos. Você vai precisar gerar scripts com os grants concedidos ao schemas também. Se optar por usar o dbms_metadata, sugiro incluir os comandos abaixo, para gerar os scripts. Quando usei esta ferramenta tive muitos problemas com o tratamento de objetos dependentes e grants. É mais útil quando se extrai objetos individuais. dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'SQLTERMINATOR', true); dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'PRETTY', true); Atc,Luis Freitas On Wednesday, August 2, 2017, 5:44:07 PM GMT-3, fro...@gmail.com [oracle_br] wrote: Boa tarde Chiappa,Apenas a criação dos objetos vazios e sem o "Create database".Reconheço e estou preparado para excluir os usuário de acesso ao database (account_status='OPEN', os schemas de dados sempre estão com disable) e quando forem usuários de sistema (default_tablespace not in ('users','sysaux','system')). Agradeço-lhe muito a gentileza em tentar responder a minha pergunta, mas percebo que não possui o que estou procurando. Acredito ter sido bem específico, sendo o link repassado de nenhuma utilidade para mim. Obrigado de qualquer forma, Frederico Roier ---Em oracle_br@yahoogrupos.com.br, escreveu: Detalha um pouco mais : vc quer obter o comando CREATE DATABASE também ou não ? Vc diz que "quer DDLs", então IMAGINO que vc quer obter os DDLs de criação dos objetos mas VAZIOS, SEM DADOS, é isso ?? Outra coisa, vc fala "gerar DDL completa", mas vc *** SABE *** que dentro de um database Oracle existem *** DIVERSOS *** schemas de uso INTERNO APENAS, como o SYS, o SYSTEM, e vários outros : NEM PENSE em querer 'clonar' o schema SYS ou o SYSTEM de um database em outro, isso só pode dar os mais altos enroscos.. SUPONDO que os procedimentos normais de clone de database (principalmente clone físico via cópia de arquivos) não te atendem mesmo (por questões de espaço ou o que for), E que o que vc vai fazer é o ** NORMAL ** de se ver pelaí (ie, simplesmente usar o DBCA pra criar um database ** VAZIO ** de dados de usuários e clonar *** APENAS *** os itens gerais do banco (como TABLESPACES e ROLES, digamos), os objetos de usuários públicos não criados internamente pelo RDBMS (principalmente sinônimos públicos), os usuários de banco não-internos e seus privilégios E os poucos schemas não-internos que possuem dados, a melhor opção imho seria gerar os DDLs em um arquivo-texto pelo datapump : http://www.acehints.com/2011/07/data-pump-impdp-expdp-sqlfile-option-to.html é um pequeno exemplo pra te dar um start Provavelmente vc vai ter que enfiar um EXCLUDEs pra exluir os schemas internos e os dados das tabelas, mas não é nada muito complexo []s Chiappa
Re: [oracle_br] Re: Script sql para geração de DDL de todo o database/instancia separado por usuario
Froier, Concordo com o Chiappa sobre isso, o expdp/impdp com sqlfile é a melhor opção, você pode fazer o export com o sys ou outro usuário com permissão de export full database e filtrar com o parametro "schemas". Ele vai gerar um script funcional para recriar os esquemas de forma fácil. Do exemplo que ele já mandou pode incluir a opção "CONTENT=metadata_only" no export, o que deve gerar um arquivo pequeno, contendo apenas a definição dos objetos. Você vai precisar gerar scripts com os grants concedidos ao schemas também. Se optar por usar o dbms_metadata, sugiro incluir os comandos abaixo, para gerar os scripts. Quando usei esta ferramenta tive muitos problemas com o tratamento de objetos dependentes e grants. É mais útil quando se extrai objetos individuais. dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'SQLTERMINATOR', true); dbms_metadata.set_transform_param (dbms_metadata.session_transform, 'PRETTY', true); Atc,Luis Freitas On Wednesday, August 2, 2017, 5:44:07 PM GMT-3, fro...@gmail.com [oracle_br] wrote: Boa tarde Chiappa,Apenas a criação dos objetos vazios e sem o "Create database".Reconheço e estou preparado para excluir os usuário de acesso ao database (account_status='OPEN', os schemas de dados sempre estão com disable) e quando forem usuários de sistema (default_tablespace not in ('users','sysaux','system')). Agradeço-lhe muito a gentileza em tentar responder a minha pergunta, mas percebo que não possui o que estou procurando. Acredito ter sido bem específico, sendo o link repassado de nenhuma utilidade para mim. Obrigado de qualquer forma, Frederico Roier ---Em oracle_br@yahoogrupos.com.br, escreveu: Detalha um pouco mais : vc quer obter o comando CREATE DATABASE também ou não ? Vc diz que "quer DDLs", então IMAGINO que vc quer obter os DDLs de criação dos objetos mas VAZIOS, SEM DADOS, é isso ?? Outra coisa, vc fala "gerar DDL completa", mas vc *** SABE *** que dentro de um database Oracle existem *** DIVERSOS *** schemas de uso INTERNO APENAS, como o SYS, o SYSTEM, e vários outros : NEM PENSE em querer 'clonar' o schema SYS ou o SYSTEM de um database em outro, isso só pode dar os mais altos enroscos.. SUPONDO que os procedimentos normais de clone de database (principalmente clone físico via cópia de arquivos) não te atendem mesmo (por questões de espaço ou o que for), E que o que vc vai fazer é o ** NORMAL ** de se ver pelaí (ie, simplesmente usar o DBCA pra criar um database ** VAZIO ** de dados de usuários e clonar *** APENAS *** os itens gerais do banco (como TABLESPACES e ROLES, digamos), os objetos de usuários públicos não criados internamente pelo RDBMS (principalmente sinônimos públicos), os usuários de banco não-internos e seus privilégios E os poucos schemas não-internos que possuem dados, a melhor opção imho seria gerar os DDLs em um arquivo-texto pelo datapump : http://www.acehints.com/2011/07/data-pump-impdp-expdp-sqlfile-option-to.html é um pequeno exemplo pra te dar um start Provavelmente vc vai ter que enfiar um EXCLUDEs pra exluir os schemas internos e os dados das tabelas, mas não é nada muito complexo []s Chiappa #yiv5064173973 #yiv5064173973 -- #yiv5064173973ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5064173973 #yiv5064173973ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5064173973 #yiv5064173973ygrp-mkp #yiv5064173973hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5064173973 #yiv5064173973ygrp-mkp #yiv5064173973ads {margin-bottom:10px;}#yiv5064173973 #yiv5064173973ygrp-mkp .yiv5064173973ad {padding:0 0;}#yiv5064173973 #yiv5064173973ygrp-mkp .yiv5064173973ad p {margin:0;}#yiv5064173973 #yiv5064173973ygrp-mkp .yiv5064173973ad a {color:#ff;text-decoration:none;}#yiv5064173973 #yiv5064173973ygrp-sponsor #yiv5064173973ygrp-lc {font-family:Arial;}#yiv5064173973 #yiv5064173973ygrp-sponsor #yiv5064173973ygrp-lc #yiv5064173973hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv5064173973 #yiv5064173973ygrp-sponsor #yiv5064173973ygrp-lc .yiv5064173973ad {margin-bottom:10px;padding:0 0;}#yiv5064173973 #yiv5064173973actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv5064173973 #yiv5064173973activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv5064173973 #yiv5064173973activity span {font-weight:700;}#yiv5064173973 #yiv5064173973activity span:first-child {text-transform:uppercase;}#yiv5064173973 #yiv5064173973activity span a {color:#5085b6;text-decoration:none;}#yiv5064173973 #yiv5064173973activity span span {color:#ff7900;}#yiv5064173973 #yiv5064173973activity span .yiv5064173973underline {text-decoration:underline;}#yiv5064173973 .yiv5064173973attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv5064173973 .yiv5064173973attach div a {text-decora
Re: [oracle_br] Docker
Nelson, Os scripts parecem instalar o Oracle usando o installer. Você pode colocar um comando de dbca no final para criar a base do jeito que precisa. Atc,Luis Freitas On Wednesday, July 5, 2017 7:49 PM, "Nelson Cartaxo ncart...@yahoo.com [oracle_br]" wrote: Po, mas ninguém aí consegue me ajudar com relação aos datafiles? Precisava deixar isso pra área de qa, destruir e recriar a base através do Jenkins. Obrigadao Att,Nelson Cartaxo Em 5 de jul de 2017, às 13:05, jlchia...@yahoo.com.br [oracle_br] escreveu: Isso aí, Nelson... Angelo, esse ponto de cada docker não ser uma máquina completa mas sim uma task rodando na máquina física apenas realmente é a diferença Crucial entre vc ter múltiplas VMs na máquina física versus ter múltiplos docks na mesma máquina... Por exemplo, cada VM é como se fosse uma máquina a mais na sua rede, então em tese cada VM facilmente pode ter seu IP próprio, e assim vc pode setar regras de firewall específicas pra cada VM facilmente - numa máquina onde vc tem vários dockers, esses dockers todos na visão do Sistema Operacional tão rodando no mesmo servidor, então fica Difícil vc fazer o mesmo... Outra consequência NATURAL desse fato é que se uma VM por qquer motivo der pau/tiver um kernel panic, enfim, fazer e acontecer e ir pro vinagre e mesmo rebootar sozinha ou o que for, é quase IMPOSSÍVEL essa VM perturbar as outras que rodam no mesmo servidor físico, e quanto mais perturbar o servidor físico em si... Já as docks que rodam na mesma máquina, se vc tiver um bug no controlador de docks, ou no sistema operacional ou no que for, pode ser que a docker com pau interfira com as outras docks... Idem também como ponto de diferença a questão de controle de hardware : por exemplo, se vc limitar o I/O numa VM (via vboxmanage ou seja qual tool tua solução de VMs tiver) em x IOPS, pode chover canivete, a aplicação rodando dentro da VM pode fazer o briqueabraque que for, que NUNCA recebe mais banda de I/O do que x... Até existem ferramentas, scripts e truques pra vc fazer o mesmo nas suas docks mas é Muuuito Mais Complexo e menos confiável, imho E nem vou falar da Virtualização hard-partition nativa de sistema operacional (como as Zones do Solaris ou as LPARs do AIX, onde vc pode não só limitar mas SEPARAR o hardware, indicando (digamos) que a VM 1 só pode acessar/usar os processadores 1 e 2, a VM 2 só pode usar os processadores 3 e 4)... É outro nível de controle e segurança... A vantagem principal de cada dock não ser uma VM completa imho é que sendo apenas uma task do SO cada dock precisa de menos capacidade de CPU, memória e recursos de modo geral do hardware do servidor físico para ser controlada/administrada []s Chiappa #yiv7671146802 #yiv7671146802 -- #yiv7671146802ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7671146802 #yiv7671146802ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7671146802 #yiv7671146802ygrp-mkp #yiv7671146802hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7671146802 #yiv7671146802ygrp-mkp #yiv7671146802ads {margin-bottom:10px;}#yiv7671146802 #yiv7671146802ygrp-mkp .yiv7671146802ad {padding:0 0;}#yiv7671146802 #yiv7671146802ygrp-mkp .yiv7671146802ad p {margin:0;}#yiv7671146802 #yiv7671146802ygrp-mkp .yiv7671146802ad a {color:#ff;text-decoration:none;}#yiv7671146802 #yiv7671146802ygrp-sponsor #yiv7671146802ygrp-lc {font-family:Arial;}#yiv7671146802 #yiv7671146802ygrp-sponsor #yiv7671146802ygrp-lc #yiv7671146802hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7671146802 #yiv7671146802ygrp-sponsor #yiv7671146802ygrp-lc .yiv7671146802ad {margin-bottom:10px;padding:0 0;}#yiv7671146802 #yiv7671146802actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7671146802 #yiv7671146802activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7671146802 #yiv7671146802activity span {font-weight:700;}#yiv7671146802 #yiv7671146802activity span:first-child {text-transform:uppercase;}#yiv7671146802 #yiv7671146802activity span a {color:#5085b6;text-decoration:none;}#yiv7671146802 #yiv7671146802activity span span {color:#ff7900;}#yiv7671146802 #yiv7671146802activity span .yiv7671146802underline {text-decoration:underline;}#yiv7671146802 .yiv7671146802attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7671146802 .yiv7671146802attach div a {text-decoration:none;}#yiv7671146802 .yiv7671146802attach img {border:none;padding-right:5px;}#yiv7671146802 .yiv7671146802attach label {display:block;margin-bottom:5px;}#yiv7671146802 .yiv7671146802attach label a {text-decoration:none;}#yiv7671146802 blockquote {margin:0 0 0 4px;}#yiv7671146802 .yiv7671146802bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7671146802 .yiv7671146802bold a {text-decoration:none;}#yiv767114680
Re: [oracle_br] Como remover o traço
Mario, Você viu meu e-mail de ontem sobre o '' e SQL dinâmico? Se estiver fazendo tudo certo mesmo, pode ser um bug, mas acho difícil. Veja se tem índice nas colunas das duas tabelas, e confirme o tipo de dados em ambas e nas variáveis que está passando? O índice pode mudar o plano de execução e estar expondo algum bug de resultado incorreto. O parâmetro cursor_sharing=FORCE está setado? Se estiver, altera ele no nível de sessão e veja se muda o comportamento: alter session set CURSOR_SHARING=EXACT; Atc,Luis Freitas On Friday, June 9, 2017 11:26 AM, "'Emerson S. Gaudencio' emerson.fen...@gmail.com [oracle_br]" wrote: @Mario Rodrigues, Tente utilizar essa função aqui: http://blog.gaudencio.net.br/2015/11/oracle-funcao-para-remover-caracteres.html Essa função serve para remover caracteres especiais de string e deixar somente letras e numero, assim atende sua lógica e não precisa ficar pensando em utilizar replace. Att,Emerson 2017-06-09 9:42 GMT-03:00 Mario Rodrigues marioirodrig...@gmail.com [oracle_br] : Pessoal, Serio ... pq este funciona SELECT nvl(round(VALOR,2),0) into v_custo FROM TABELA1 WHERE ITEM = replace(coditem,'-','') ; e este não SELECT nvl(round(VALOR,2),0) INTO v_preco_original FROM TABELA2 WHERE CODIGO_ITEM = replace(coditem,'-','') ; Tipo de dados do ITEM e CODIGO_ITEM são os mesmos. O que mais eu posso ver??? Em 9 de junho de 2017 09:15, Mario Rodrigues escreveu: Bom Dia pessoal Pois eh ... ate criei uma funcão FUNCTION CONVERTCODITEM(p_coditem in VARCHAR2) RETURN NUMBER IS item NUMBER(20); BEGIN SELECT NOVOITEM INTO item from( SELECT SUBSTR(replace(p_coditem,'-',' '), 1, LENGTH(replace(p_coditem,'-',' ')) - 1) NOVOITEM FROM DUAL); RETURN(item); END; preciso que o codigo 4506-3 retorne somente 4506 ... nao sei mesmo o motivo disso estar acontecendo, pois como falei em outro select em outra funcao funciona perfeitamente .. o tipo de dados é VARCHAR2 .. Em 9 de junho de 2017 00:14, 'Marcelino Mota' supo...@linguagem.com.br [oracle_br] escreveu: Mario, Verifica o tipo de dado que você esta usando se é char ou varchar2 apesar de serem strings, se comportam de maneira diferente. Att. Marcelino #yiv3524427644 #yiv3524427644 -- #yiv3524427644ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3524427644 #yiv3524427644ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3524427644 #yiv3524427644ygrp-mkp #yiv3524427644hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3524427644 #yiv3524427644ygrp-mkp #yiv3524427644ads {margin-bottom:10px;}#yiv3524427644 #yiv3524427644ygrp-mkp .yiv3524427644ad {padding:0 0;}#yiv3524427644 #yiv3524427644ygrp-mkp .yiv3524427644ad p {margin:0;}#yiv3524427644 #yiv3524427644ygrp-mkp .yiv3524427644ad a {color:#ff;text-decoration:none;}#yiv3524427644 #yiv3524427644ygrp-sponsor #yiv3524427644ygrp-lc {font-family:Arial;}#yiv3524427644 #yiv3524427644ygrp-sponsor #yiv3524427644ygrp-lc #yiv3524427644hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3524427644 #yiv3524427644ygrp-sponsor #yiv3524427644ygrp-lc .yiv3524427644ad {margin-bottom:10px;padding:0 0;}#yiv3524427644 #yiv3524427644actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv3524427644 #yiv3524427644activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv3524427644 #yiv3524427644activity span {font-weight:700;}#yiv3524427644 #yiv3524427644activity span:first-child {text-transform:uppercase;}#yiv3524427644 #yiv3524427644activity span a {color:#5085b6;text-decoration:none;}#yiv3524427644 #yiv3524427644activity span span {color:#ff7900;}#yiv3524427644 #yiv3524427644activity span .yiv3524427644underline {text-decoration:underline;}#yiv3524427644 .yiv3524427644attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv3524427644 .yiv3524427644attach div a {text-decoration:none;}#yiv3524427644 .yiv3524427644attach img {border:none;padding-right:5px;}#yiv3524427644 .yiv3524427644attach label {display:block;margin-bottom:5px;}#yiv3524427644 .yiv3524427644attach label a {text-decoration:none;}#yiv3524427644 blockquote {margin:0 0 0 4px;}#yiv3524427644 .yiv3524427644bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv3524427644 .yiv3524427644bold a {text-decoration:none;}#yiv3524427644 dd.yiv3524427644last p a {font-family:Verdana;font-weight:700;}#yiv3524427644 dd.yiv3524427644last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv3524427644 dd.yiv3524427644last p span.yiv3524427644yshortcuts {margin-right:0;}#yiv3524427644 div.yiv3524427644attach-table div div a {text-decoration:none;}#yi
Re: [oracle_br] Re: Como remover o traço
Mário, Para o banco entender que isso ai é texto em vez de numero, precisa incluir a ' como o Chiappa sugeriu. No PL/SQL fica algo como: v_sql='SELECT replace('''||v_condicao||''',''-'','''') FROM DUAL'; Mas isso pode gerar outros problemas, como muito hard parse devido ao sql dinâmico, e até mesmo sql injection, o melhor é usar binds, como abaixo. Nesse caso o banco entende que é string usando o tipo da variável v_condicao, que deve ser varchar2: v_sql:='SELECT replace(:1,''-'','''') FROM DUAL'; EXECUTE IMMEDIATE v_sql INTO v_resultado USING v_condicao; Ou: v_sql:='SELECT replace(:1,''-'','''') FROM DUAL'; OPEN v_cursor FOR v_sql USING v_condicao; Atc,Luis Freitas On Thursday, June 8, 2017 6:11 PM, "Mario Rodrigues marioirodrig...@gmail.com [oracle_br]" wrote: Isso o valor que vai ser feito o replace é dinamico. É PL msm ... estou tentando de outra forma .. Sinceramente nao faço ideia o que seja .. Obrigado a todos. 2017-06-08 17:45 GMT-03:00 Luis Freitas lfreita...@yahoo.com [oracle_br] : Mario, O seu select não tem esse valor ai né, que se fosse isso você colocava fixo '45063' na query e pronto, não precisava desse replace. Que linguagem você está usando, é PL/SQL ou outra coisa? Como você passa esse valor? Por bind? Ou está gerando o sql dinâmico? Atc,Luis Freitas On Thursday, June 8, 2017 5:22 PM, "Mario Rodrigues marioirodrig...@gmail.com [oracle_br]" wrote: sim sim cara eu sei ... na verdade nao uso o numero fixo vem de uma variavel na verdade é assim replace(valor, '-',''); como falei por algum motivo num select funcionou e no outro nao Em 8 de junho de 2017 17:16, Vitor Junior vitorj...@gmail.com [oracle_br] escreveu: Olha onde o Chiappa colocou as aspas. Está diferente do teu exemplo. ;) Em qui, 8 de jun de 2017 às 17:02, Mario Rodrigues marioirodrig...@gmail.com [oracle_br] escreveu: Oi Chiappa, Boa Tarde Pois eh eu tb acho obvio, porem não sei o que acontece. Tenho uma função que tem um select que tem como clausula numero = replace(4506-3,'-','')dai nao me retorna nadase eu coloco 45063 ou '45063' retorna usando dbms_output.put_line desse3 replace aparece 45063 ... porem no select nao retorna nada ... o tipo de dados é number ja tentei varchar e nada tb Por isso fiz essa pergunta "meio perdida" quase na certeza que a resposta seria em cima da string. o mais engraçado é tenho um outro select que usa esse mesmo replace e retorna o que precisa retornar .. somente nesse maldito select não vem rsrsrs Mas ok, obrigado! Em 8 de junho de 2017 16:53, jlchia...@yahoo.com.br [oracle_br] escreveu: Mário, óbvio : se vc tem uma expressão numérica, OBVIAMENTE o caracter '-' vai ser entendi como um sinal de substração, né não ??? E óbvio#2, tá Documentado que a função REPLACE trabalha com strings... Então para atender aos dois pontos simplesmente TRANSFORME esse número em STRING, fechando a expressão com aspas, assim : SELECT replace('4506-3', '-', '') FROM DUAL; []s Chiappa -- Att,/Regards, Vitor Jr. https://br.linkedin.com/in/ vitorjunior81 #yiv9427911643 #yiv9427911643 -- #yiv9427911643ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9427911643 #yiv9427911643ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9427911643 #yiv9427911643ygrp-mkp #yiv9427911643hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9427911643 #yiv9427911643ygrp-mkp #yiv9427911643ads {margin-bottom:10px;}#yiv9427911643 #yiv9427911643ygrp-mkp .yiv9427911643ad {padding:0 0;}#yiv9427911643 #yiv9427911643ygrp-mkp .yiv9427911643ad p {margin:0;}#yiv9427911643 #yiv9427911643ygrp-mkp .yiv9427911643ad a {color:#ff;text-decoration:none;}#yiv9427911643 #yiv9427911643ygrp-sponsor #yiv9427911643ygrp-lc {font-family:Arial;}#yiv9427911643 #yiv9427911643ygrp-sponsor #yiv9427911643ygrp-lc #yiv9427911643hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9427911643 #yiv9427911643ygrp-sponsor #yiv9427911643ygrp-lc .yiv9427911643ad {margin-bottom:10px;padding:0 0;}#yiv9427911643 #yiv9427911643actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9427911643 #yiv9427911643activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9427911643 #yiv9427911643activity span {font-weight:700;}#yiv9427911643 #yiv9427911643activity span:first-child {text-transform:uppercase;}#yiv9427911643 #yiv9427911643activity span a {color:#5085b6;text-decoration:none;}#yiv9427911643 #yiv9427911643activity span span {color:#ff7900;}#yiv94279116
Re: [oracle_br] Re: Como remover o traço
Mario, O seu select não tem esse valor ai né, que se fosse isso você colocava fixo '45063' na query e pronto, não precisava desse replace. Que linguagem você está usando, é PL/SQL ou outra coisa? Como você passa esse valor? Por bind? Ou está gerando o sql dinâmico? Atc,Luis Freitas On Thursday, June 8, 2017 5:22 PM, "Mario Rodrigues marioirodrig...@gmail.com [oracle_br]" wrote: sim sim cara eu sei ... na verdade nao uso o numero fixo vem de uma variavel na verdade é assim replace(valor, '-',''); como falei por algum motivo num select funcionou e no outro nao Em 8 de junho de 2017 17:16, Vitor Junior vitorj...@gmail.com [oracle_br] escreveu: Olha onde o Chiappa colocou as aspas. Está diferente do teu exemplo. ;) Em qui, 8 de jun de 2017 às 17:02, Mario Rodrigues marioirodrig...@gmail.com [oracle_br] escreveu: Oi Chiappa, Boa Tarde Pois eh eu tb acho obvio, porem não sei o que acontece. Tenho uma função que tem um select que tem como clausula numero = replace(4506-3,'-','')dai nao me retorna nadase eu coloco 45063 ou '45063' retorna usando dbms_output.put_line desse3 replace aparece 45063 ... porem no select nao retorna nada ... o tipo de dados é number ja tentei varchar e nada tb Por isso fiz essa pergunta "meio perdida" quase na certeza que a resposta seria em cima da string. o mais engraçado é tenho um outro select que usa esse mesmo replace e retorna o que precisa retornar .. somente nesse maldito select não vem rsrsrs Mas ok, obrigado! Em 8 de junho de 2017 16:53, jlchia...@yahoo.com.br [oracle_br] escreveu: Mário, óbvio : se vc tem uma expressão numérica, OBVIAMENTE o caracter '-' vai ser entendi como um sinal de substração, né não ??? E óbvio#2, tá Documentado que a função REPLACE trabalha com strings... Então para atender aos dois pontos simplesmente TRANSFORME esse número em STRING, fechando a expressão com aspas, assim : SELECT replace('4506-3', '-', '') FROM DUAL; []s Chiappa -- Att,/Regards, Vitor Jr. https://br.linkedin.com/in/ vitorjunior81 #yiv7430258789 #yiv7430258789 -- #yiv7430258789ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7430258789 #yiv7430258789ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7430258789 #yiv7430258789ygrp-mkp #yiv7430258789hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7430258789 #yiv7430258789ygrp-mkp #yiv7430258789ads {margin-bottom:10px;}#yiv7430258789 #yiv7430258789ygrp-mkp .yiv7430258789ad {padding:0 0;}#yiv7430258789 #yiv7430258789ygrp-mkp .yiv7430258789ad p {margin:0;}#yiv7430258789 #yiv7430258789ygrp-mkp .yiv7430258789ad a {color:#ff;text-decoration:none;}#yiv7430258789 #yiv7430258789ygrp-sponsor #yiv7430258789ygrp-lc {font-family:Arial;}#yiv7430258789 #yiv7430258789ygrp-sponsor #yiv7430258789ygrp-lc #yiv7430258789hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7430258789 #yiv7430258789ygrp-sponsor #yiv7430258789ygrp-lc .yiv7430258789ad {margin-bottom:10px;padding:0 0;}#yiv7430258789 #yiv7430258789actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7430258789 #yiv7430258789activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7430258789 #yiv7430258789activity span {font-weight:700;}#yiv7430258789 #yiv7430258789activity span:first-child {text-transform:uppercase;}#yiv7430258789 #yiv7430258789activity span a {color:#5085b6;text-decoration:none;}#yiv7430258789 #yiv7430258789activity span span {color:#ff7900;}#yiv7430258789 #yiv7430258789activity span .yiv7430258789underline {text-decoration:underline;}#yiv7430258789 .yiv7430258789attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7430258789 .yiv7430258789attach div a {text-decoration:none;}#yiv7430258789 .yiv7430258789attach img {border:none;padding-right:5px;}#yiv7430258789 .yiv7430258789attach label {display:block;margin-bottom:5px;}#yiv7430258789 .yiv7430258789attach label a {text-decoration:none;}#yiv7430258789 blockquote {margin:0 0 0 4px;}#yiv7430258789 .yiv7430258789bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7430258789 .yiv7430258789bold a {text-decoration:none;}#yiv7430258789 dd.yiv7430258789last p a {font-family:Verdana;font-weight:700;}#yiv7430258789 dd.yiv7430258789last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv7430258789 dd.yiv7430258789last p span.yiv7430258789yshortcuts {margin-right:0;}#yiv7430258789 div.yiv7430258789attach-table div div a {text-decoration:none;}#yiv7430258789 div.yiv7430258789attach-table {width:400px;}#yiv7430258789 div.yiv7430258789file-title a, #yiv7430258789 div.yiv7430258789file-title a:active, #yiv7430258789 div.yiv7430258789file-title a:hover, #yiv7430258789 div.yiv7430258789file-title a:visited {text-decoration:none;}#yiv7430258789 div.yiv7430258789photo-title a, #yiv7430258789 div.yiv7430258789ph
Re: [oracle_br] Aplicar o io_calibrate
Ola Marinho, Eu pessoalmente nunca rodei esse io calibrate, ou calibrate io. Antes da 12c isso parece influenciar apenas se o IORM estiver ativado, não sei se é o caso ai. Os únicos ambientes que trabalhei onde o IORM estava ativo foram no Exadata. E nos cases que conheço estava configurado apenas na camada do storage node, não chegou a ser configurado o IORM dentro do banco. Já na 12c tem um "feature" de auto paralelismo que pode estar usando essa informação, se estiver ativada. Há também uma estatística de IO que é gerada pelo dbms_stats.gather_system_stats, já essa pode influenciar, e muito, no plano de execução. Quanto ao evento, ele parece estar mais relacionado a concorrência entre o acesso da tabela para full scan com "direct path read" e alterações que estão ainda "dirty", apenas no "block cache". Tem uma série de bugs da 10g e 11g no suporte que mencionam esse evento, mas você não passou informação sobre a versão do banco. Havia alguns parâmetros para controlar a quantidade de blocos "dirty" no block cache, mas eles atualmente são obsoletos. Fora bugs você pode perguntar porque estão sendo feitas tantas alterações na tabela ao ponto de causar esse problema de concorrência, se isso é um processo normal. Mas estou assumindo que o outro processo é algum tipo de carga ou alteração em massa, você não passou muitas informações. Muitos eventos de "control file parallel write" ou "log file sync" podem indicar também aplicações que estão fazendo muitos commits por segundo. Como uma carga ou atualização em massa que faz um "commit" a cada registro, em vez de processar por lotes. Isso pode gerar uma contenção grande de I/O. Talvez alguém da lista tenha mais experiência com o io calibrate e possa dar uma outra opinião. Atc,Luis Freitas On Tuesday, June 6, 2017 1:51 PM, "lmarinh...@yahoo.com.br [oracle_br]" wrote: Boa tarde Prezados, Surgiu uma duvida, estive em uma reunião devido um problema de performance e claro eu só dei uma opinião ao DBA de infra a respeito de aplicar o io_calibrate, ja que a ultiva vez foi em fevereiro. A resposta foi: Não é necessário aplicar, pois isso só é feito uma vez.. É só uma vez ou quando houver necessidade? Por favor meus colegas, alguém poderia tirar esta dúvida? Eu acho que aplicaria se houvesse necessidade, mas fico no aguarde. Solicitei isso devido o problema que estava passando e vi que a operação que eles estavam executando estava gerando um evento: event='enq: KO - fast object checkpoint e estavam dizendo que era a minha sessão aplicacional que estava provocando isso por estar aguardando o commit or rollback de outra sessão aplicacional. Mas vi que a minha sessão estava aguardando a deles, pois a sessão deles que estavam na blocking_session . Ao consultar a sessão que estava bloqueando vi que estava em um evento: control file parallel write dai o motivo do evento enq: KO - fast object checkpoint e dai o motivo que perguntei que não seria bom fazer uma calibração nos discos.. Desculpe a mistura das informações.. Grande Abraço, LM #yiv8325097290 #yiv8325097290 -- #yiv8325097290ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv8325097290 #yiv8325097290ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv8325097290 #yiv8325097290ygrp-mkp #yiv8325097290hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv8325097290 #yiv8325097290ygrp-mkp #yiv8325097290ads {margin-bottom:10px;}#yiv8325097290 #yiv8325097290ygrp-mkp .yiv8325097290ad {padding:0 0;}#yiv8325097290 #yiv8325097290ygrp-mkp .yiv8325097290ad p {margin:0;}#yiv8325097290 #yiv8325097290ygrp-mkp .yiv8325097290ad a {color:#ff;text-decoration:none;}#yiv8325097290 #yiv8325097290ygrp-sponsor #yiv8325097290ygrp-lc {font-family:Arial;}#yiv8325097290 #yiv8325097290ygrp-sponsor #yiv8325097290ygrp-lc #yiv8325097290hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv8325097290 #yiv8325097290ygrp-sponsor #yiv8325097290ygrp-lc .yiv8325097290ad {margin-bottom:10px;padding:0 0;}#yiv8325097290 #yiv8325097290actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv8325097290 #yiv8325097290activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv8325097290 #yiv8325097290activity span {font-weight:700;}#yiv8325097290 #yiv8325097290activity span:first-child {text-transform:uppercase;}#yiv8325097290 #yiv8325097290activity span a {color:#5085b6;text-decoration:none;}#yiv8325097290 #yiv8325097290activity span span {color:#ff7900;}#yiv8325097290 #yiv8325097290activity span .yiv8325097290underline {text-decoration:underline;}#yiv8325097290 .yiv8325097290attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv8325097290 .yiv8325097290attach div a {text-decoration:none;}#yiv8325097290 .yiv8325097290attach img {border:none;padding-right:5px;}#yiv8325097290 .
Re: [oracle_br] Re: Suporte oracle 11g
Angelo, Lembrando que o suporte Oracle inclui o direito de upgrade. Se você para de pagar o suporte, não pode mais fazer um upgrade para versões mais novas. Nessa situação, quando for fazer o upgrade vai ter que escolher entre comprar as licenças novamente ou pagar o suporte retroativo. Atc,Luis Freitas On Monday, May 29, 2017 6:00 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Opa : então, a nota metalink xxx nos diz que : Database 11g Release 2 Lifetime Support Dates Release GA Date Premier Support Ends Extended Support Ends Sustaining Support Ends 11.2 Sep 2009 31 Jan 2015 31 Dec 2020 Indefinite OU SEJA, o Suporte Premier acabou em 31/01/2015, desde 01/02/2015 ** PORTANTO ** o 11gR2 já está SIM em Suporte Extendido, okdoc ??? nenhuma Novidade aqui pra vc, espero ??? O ponto adicional é que, cfrme vc sabe, normalmente para vc poder ativar o Suporte Extendido vc tem que pagar uma taxa extra além do valor de Renovação normal, e a Oracle optou (por liberalidade contratual, decisão interna dela, Oracle) por postergar a aplicação desta taxa para depois de Dezembro/2018, então quem renovar o Suporte Extendido pro 11gR2 antes dessa data vai pagar só o preço normal de renovação de Suporte, não havendo taxas extrasVeja o artigo Oficial registrando isso em https://blogs.oracle.com/stevenchan/database-112-extended-support-fee-waived-through-december-2018 ... E não existe isso de "preocupação se vão mudar as Regras" : a Oracle *** sempre *** registra muito detalhadamente, com Anos de antecedência, o tempo de vida do Suporte para TODOS os seus produtos... []s Chiappa OBS : vc não perguntou, mas só pra esclarecer, deixe-me fazer duas indicações : a. o Suporte é um valor que vc paga Anualmente, de modo OPCIONAL, para que vc possa baixar patches e abrir Chamados no Suporte Técnico para ser atendido por um especialista Oracle - se vc quiser assumir o Risco, tranquilamente vc PODE SIM rodar um RDBMS Oracle sem pagara a taxa de Suporte... O que é INESCAPÁVEL para vc poder rodar o RDBMS Oracle de modo não-ilegal é ter comprado a necessária Licença de Uso, que é um pagamento que vc pode fazer uma vez só e vale pra vida toda OU pode ser feito anualmente ou bi-anualmente, cfrme quiser... b. vou relembrar rapidamente o que significa cada estágio de Suporte : => Premier Support : para produtos que estão nesta fase de Suporte, se não existir uma correção para um bug que vc encontrar, a Oracle se obriga a criar um para vc , E também a Oracle garante que os scripts de Upgrade, as ferramentas de Administração que ela disponibilizar, etc, VÂO ser totalmente compatíveis com o produto em questão. Outro ponto é que vc pode abrir Chamados no Suporte da Oracle em regime de 24x7, a qualquer momento, para Produtos que estão nesta fase de Suporte => Extended Support : para produtos que estão nessa fase de Suporte (é ** EXATAMENTE o caso do 11gR2 hoje em dia !!), o Diferencial maior é que a Oracle *** não mais *** se compromete a criar patches específicos pra esse produto... O Produto vai continuar recebendo CPUs e PSUs (ie, os conjuntos de correções trimestrais para os bugs que a Oracle for encontrando), mas no ritmo e na Agenda pré-existente dela : REPITO, se vc encontrar um bug (o mais crítico que seja) no produto Oracle que está nessa fase de Suporte, vc que espere até a Oracle EVENTUALMENTE libere um patch dentro do PSU ou do CPU trimestral => Sustaining Support : para os produtos que estão nesta fase de Suporte vc NÃO MAIS poderá abrir Chamados 24x7, vc NÃO mais vai receber os conjuntos de patches trimestrais, e NÃO VAI SER garantido que os scripts de Upgrade pra versões mais novas e/ou que as eventuais ferramentas sejam Adaptadas pra essa versão do Produto... Basicamente para produtos que vc tenha Sustaining vc só poderá abrir o Chamado e ser atendido SE o seu problema já for conhecido, E só vai poder baixar/aplicar os patches já existentes... É importante lembrar que para vc ter o Suporte Sustaining para um produto tão velho que já saiu da fase até de Extended, vc *** VAI ter que pagar uma Taxa extra afora o valor de Renovação normal de Suporte, E essa taxa extra Não É barata, de forma alguma #yiv0991281294 -- #yiv0991281294ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0991281294 #yiv0991281294ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0991281294 #yiv0991281294ygrp-mkp #yiv0991281294hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0991281294 #yiv0991281294ygrp-mkp #yiv0991281294ads {margin-bottom:10px;}#yiv0991281294 #yiv0991281294ygrp-mkp .yiv0991281294ad {padding:0 0;}#yiv0991281294 #yiv0991281294ygrp-mkp .yiv0991281294ad p {margin:0;}#yiv0991281294 #yiv0991281294ygrp-mkp .yiv0991281294ad a {color:#ff;text-decoration:none;}#yiv0991281294 #yiv0991281294ygrp-sponsor #yiv099128
Re: RES: [oracle_br] Re: Erro ao gerar Report
Marlon, Se o objetivo for só fazer o reports funcionar, você pode mover esse pedaço do código para uma "stored procedure" no banco, e chamar ela no reports, para evitar que o engine PL/SQL do reports acesse essas tabelas. Se o problema for mesmo esse, deve resolver. Atc,Luis Freitas On Friday, May 12, 2017 3:02 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Bom, vc não diz mas vou dar de barato * que vc checou e CONFIRMOU a inexistência de outras fontes de erro, como parâmetros de kernel inapropriados, falta de espaço em disco durante o processamento (em especial área temp), bugs no seu programa (por exemplo, conteúdo RAW de tamanho x sendo inserido numa coluna ou variável do seu programa com tamanho máximo menor que x), etc Sendo só a questão de datatype, sim : é perfeitamente possível vc converter on-the-fly um LONG RAW para BLOB, veja https://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:13213885403654 para um exemplo onde se faz isso com TO_LOB, usando uma Global Temporary Table como armazenamento temporário EVIDENTEMENTE, nada te impede de converter de uma vez, criando uma coluna BLOB e fazendo um UPDATE nessa coluna com o TO_LOB da coluna LONG RAW, e feito o update vc dropa a coluna LONG RAW e se preciso renomeia a coluna BLOB []s Chiappa #yiv8956659830 #yiv8956659830 -- #yiv8956659830ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv8956659830 #yiv8956659830ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv8956659830 #yiv8956659830ygrp-mkp #yiv8956659830hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv8956659830 #yiv8956659830ygrp-mkp #yiv8956659830ads {margin-bottom:10px;}#yiv8956659830 #yiv8956659830ygrp-mkp .yiv8956659830ad {padding:0 0;}#yiv8956659830 #yiv8956659830ygrp-mkp .yiv8956659830ad p {margin:0;}#yiv8956659830 #yiv8956659830ygrp-mkp .yiv8956659830ad a {color:#ff;text-decoration:none;}#yiv8956659830 #yiv8956659830ygrp-sponsor #yiv8956659830ygrp-lc {font-family:Arial;}#yiv8956659830 #yiv8956659830ygrp-sponsor #yiv8956659830ygrp-lc #yiv8956659830hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv8956659830 #yiv8956659830ygrp-sponsor #yiv8956659830ygrp-lc .yiv8956659830ad {margin-bottom:10px;padding:0 0;}#yiv8956659830 #yiv8956659830actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv8956659830 #yiv8956659830activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv8956659830 #yiv8956659830activity span {font-weight:700;}#yiv8956659830 #yiv8956659830activity span:first-child {text-transform:uppercase;}#yiv8956659830 #yiv8956659830activity span a {color:#5085b6;text-decoration:none;}#yiv8956659830 #yiv8956659830activity span span {color:#ff7900;}#yiv8956659830 #yiv8956659830activity span .yiv8956659830underline {text-decoration:underline;}#yiv8956659830 .yiv8956659830attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv8956659830 .yiv8956659830attach div a {text-decoration:none;}#yiv8956659830 .yiv8956659830attach img {border:none;padding-right:5px;}#yiv8956659830 .yiv8956659830attach label {display:block;margin-bottom:5px;}#yiv8956659830 .yiv8956659830attach label a {text-decoration:none;}#yiv8956659830 blockquote {margin:0 0 0 4px;}#yiv8956659830 .yiv8956659830bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv8956659830 .yiv8956659830bold a {text-decoration:none;}#yiv8956659830 dd.yiv8956659830last p a {font-family:Verdana;font-weight:700;}#yiv8956659830 dd.yiv8956659830last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv8956659830 dd.yiv8956659830last p span.yiv8956659830yshortcuts {margin-right:0;}#yiv8956659830 div.yiv8956659830attach-table div div a {text-decoration:none;}#yiv8956659830 div.yiv8956659830attach-table {width:400px;}#yiv8956659830 div.yiv8956659830file-title a, #yiv8956659830 div.yiv8956659830file-title a:active, #yiv8956659830 div.yiv8956659830file-title a:hover, #yiv8956659830 div.yiv8956659830file-title a:visited {text-decoration:none;}#yiv8956659830 div.yiv8956659830photo-title a, #yiv8956659830 div.yiv8956659830photo-title a:active, #yiv8956659830 div.yiv8956659830photo-title a:hover, #yiv8956659830 div.yiv8956659830photo-title a:visited {text-decoration:none;}#yiv8956659830 div#yiv8956659830ygrp-mlmsg #yiv8956659830ygrp-msg p a span.yiv8956659830yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv8956659830 .yiv8956659830green {color:#628c2a;}#yiv8956659830 .yiv8956659830MsoNormal {margin:0 0 0 0;}#yiv8956659830 o {font-size:0;}#yiv8956659830 #yiv8956659830photos div {float:left;width:72px;}#yiv8956659830 #yiv8956659830photos div div {border:1px solid #66;height:62px;overflow:hidden;width:62px;}#yiv8956659830 #yiv8956659830photos div label {color:#66;font-size:10px;overflow:hidden;text-alig
Re: [oracle_br] Re: Quantas vezes por dia cada material ized view é acessada(query rewrite)
Marinho, A v$db_object_cache mostra quantas vezes um objeto foi "pingado" pelo Oracle, mas ele pode ter sido só sido considerado pelo otimizador e não utilizado no plano final. A v$segment_statistics mostra quantas vezes algum segmento foi acessado, mas como é voltada para performance só registra alguns tipos de acesso, como "full table scans". Se o acesso for por índice, em apenas alguns blocos da MV, pode não aparecer ai. Para ter um valor diário você precisa fazer uma diferença dos valores, pois as views são cumulativas. Se você tiver o diagnostic pack, o AWR tem um relatório de segmentos mais acessados também, mas só tem cinco linhas, deve ter algum jeito de incluir mais resultados, mas eu não conheço. Atc,Luis Freitas On Wednesday, April 26, 2017 5:28 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Boa tarde : não, afaik o RDBMS nas versões mais recente mantém estatísticas apenas sobre o REFRESH das MVs, mas não sobre o uso delas... Assim, imho da mesma maneira que uma tabela comum, se vc quer registrar cada acesso aos dados da view materializada vc TEM que ativar algum tipo de Auditoria (via logminer, AUDIT, DBMS_FGA ou similar) E/OU pode consultar as views de SQL e de planos para ver quais SQLs estão referenciando ela Vamos aguardar por outras idéias mas de cara é isso até onde sei []s Chiappa #yiv7232753577 #yiv7232753577 -- #yiv7232753577ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7232753577 #yiv7232753577ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7232753577 #yiv7232753577ygrp-mkp #yiv7232753577hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7232753577 #yiv7232753577ygrp-mkp #yiv7232753577ads {margin-bottom:10px;}#yiv7232753577 #yiv7232753577ygrp-mkp .yiv7232753577ad {padding:0 0;}#yiv7232753577 #yiv7232753577ygrp-mkp .yiv7232753577ad p {margin:0;}#yiv7232753577 #yiv7232753577ygrp-mkp .yiv7232753577ad a {color:#ff;text-decoration:none;}#yiv7232753577 #yiv7232753577ygrp-sponsor #yiv7232753577ygrp-lc {font-family:Arial;}#yiv7232753577 #yiv7232753577ygrp-sponsor #yiv7232753577ygrp-lc #yiv7232753577hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7232753577 #yiv7232753577ygrp-sponsor #yiv7232753577ygrp-lc .yiv7232753577ad {margin-bottom:10px;padding:0 0;}#yiv7232753577 #yiv7232753577actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7232753577 #yiv7232753577activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7232753577 #yiv7232753577activity span {font-weight:700;}#yiv7232753577 #yiv7232753577activity span:first-child {text-transform:uppercase;}#yiv7232753577 #yiv7232753577activity span a {color:#5085b6;text-decoration:none;}#yiv7232753577 #yiv7232753577activity span span {color:#ff7900;}#yiv7232753577 #yiv7232753577activity span .yiv7232753577underline {text-decoration:underline;}#yiv7232753577 .yiv7232753577attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7232753577 .yiv7232753577attach div a {text-decoration:none;}#yiv7232753577 .yiv7232753577attach img {border:none;padding-right:5px;}#yiv7232753577 .yiv7232753577attach label {display:block;margin-bottom:5px;}#yiv7232753577 .yiv7232753577attach label a {text-decoration:none;}#yiv7232753577 blockquote {margin:0 0 0 4px;}#yiv7232753577 .yiv7232753577bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7232753577 .yiv7232753577bold a {text-decoration:none;}#yiv7232753577 dd.yiv7232753577last p a {font-family:Verdana;font-weight:700;}#yiv7232753577 dd.yiv7232753577last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv7232753577 dd.yiv7232753577last p span.yiv7232753577yshortcuts {margin-right:0;}#yiv7232753577 div.yiv7232753577attach-table div div a {text-decoration:none;}#yiv7232753577 div.yiv7232753577attach-table {width:400px;}#yiv7232753577 div.yiv7232753577file-title a, #yiv7232753577 div.yiv7232753577file-title a:active, #yiv7232753577 div.yiv7232753577file-title a:hover, #yiv7232753577 div.yiv7232753577file-title a:visited {text-decoration:none;}#yiv7232753577 div.yiv7232753577photo-title a, #yiv7232753577 div.yiv7232753577photo-title a:active, #yiv7232753577 div.yiv7232753577photo-title a:hover, #yiv7232753577 div.yiv7232753577photo-title a:visited {text-decoration:none;}#yiv7232753577 div#yiv7232753577ygrp-mlmsg #yiv7232753577ygrp-msg p a span.yiv7232753577yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv7232753577 .yiv7232753577green {color:#628c2a;}#yiv7232753577 .yiv7232753577MsoNormal {margin:0 0 0 0;}#yiv7232753577 o {font-size:0;}#yiv7232753577 #yiv7232753577photos div {float:left;width:72px;}#yiv7232753577 #yiv7232753577photos div div {border:1px solid #66;height:62px;overflow:hidden;width:62px;}#yiv7232753577 #yiv7232753577photos div label {color:#66;font-s
Re: RES: RES: [oracle_br] upgrade 12.1 to 12.2 ?
Ednilson, Legal, depois conta para a gente se o backup da 10g está funcionando com esse catalogo. Abs,Luis Freitas On Thursday, April 20, 2017 2:17 PM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Luis,Agora entendi o que estava ocorrendo.Fiz o UPGRADE CATALOG e atualizou o catalogo. Mufalani,Obrigado pela ajuda tambem. Grato,Ednilson De: sentto-1682896-121760-1492697172-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121760-1492697172-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de Luis Freitas lfreita...@yahoo.com [oracle_br] Enviada em: quinta-feira, 20 de abril de 2017 11:06 Para: oracle_br@yahoogrupos.com.br Assunto: Re: RES: [oracle_br] upgrade 12.1 to 12.2 ? Ednilson, A versão do catalogo não depende da versão do banco em que foi criado, mas da versão do RMAN que você usou quando rodou o create catalog no esquema do catalogo. Você não precisa instalar nada para atualizar ele, basta rodar o comando com algum RMAN de versão mais recente. Mas faça um backup do catalogo antes, caso o rman da 10g pare de funcionar e você precise voltar o catalogo para a versão anterior. É mais seguro criar um catalogo separado para a 12.2. Há alguma compatibilidade do catalogo com versões mais antigas do rman, no suporte tem o documento RMAN Compatibility Matrix (Doc ID 73431.1), mas ele ainda não foi atualizado para o Oracle 12.2. Atc,Luis Freitas On Thursday, April 20, 2017 10:36 AM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Angelo,Então, o catalogo nunca foi 11, nasceu como 12.1 mesmo.Os demais bancos aqui entre 10g e 11g estão funcionando sem problemas. Mas esse banco novo é 12.2 Então eu teria que instalar o binario do 12.2 e migrar o catalogo, certo? Grato,Ednilson De: sentto-1682896-121758-1492694385-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121758-1492694385-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de angelo angelolis...@gmail.com [oracle_br] Enviada em: quinta-feira, 20 de abril de 2017 10:13 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] upgrade 12.1 to 12.2 ? Curiosidade Isso ja foi 11.2.0.4 tambem ? ( foi subindo de 11g pra 12c.. ) O proprio erro ta entregando.. PL/SQL package RMAN.DBMS_RCVCAT version 11.02.00.04 in RCVCAT database is too old tenta atualizar o catalogo On 20 April 2017 at 09:58, 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] wrote: Pessoal,Tenho um Catalogo do RMAN que esta no 12.1, e agora estou tentando registrar um banco 12.2 Recovery Manager: Release 12.2.0.1.0 - Production on Thu Apr 20 09:44:35 2017 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. connected to target database: DBOADTP (DBID=1459929393)connected to recovery catalog databasePL/SQL package RMAN.DBMS_RCVCAT version 11.02.00.04 in RCVCAT database is too old Como devo proceder para atualizar a versão desse meu banco RMAN de 12.1 para 12.2 ? Grato,Ednilson Silva #yiv9274758923 #yiv9274758923 -- #yiv9274758923ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9274758923 #yiv9274758923ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9274758923 #yiv9274758923ygrp-mkp #yiv9274758923hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9274758923 #yiv9274758923ygrp-mkp #yiv9274758923ads {margin-bottom:10px;}#yiv9274758923 #yiv9274758923ygrp-mkp .yiv9274758923ad {padding:0 0;}#yiv9274758923 #yiv9274758923ygrp-mkp .yiv9274758923ad p {margin:0;}#yiv9274758923 #yiv9274758923ygrp-mkp .yiv9274758923ad a {color:#ff;text-decoration:none;}#yiv9274758923 #yiv9274758923ygrp-sponsor #yiv9274758923ygrp-lc {font-family:Arial;}#yiv9274758923 #yiv9274758923ygrp-sponsor #yiv9274758923ygrp-lc #yiv9274758923hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9274758923 #yiv9274758923ygrp-sponsor #yiv9274758923ygrp-lc .yiv9274758923ad {margin-bottom:10px;padding:0 0;}#yiv9274758923 #yiv9274758923actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9274758923 #yiv9274758923activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9274758923 #yiv9274758923activity span {font-weight:700;}#yiv9274758923 #yiv9274758923activity span:first-child {text-transform:uppercase;}#yiv9274758923 #yiv9274758923activity span a {color:#5085b6;text-decoration:none;}#yiv9274758923 #yiv9274758923activity span span {color:#ff7900;}#yiv9274758923 #yiv9274758923activity span .yiv9274758923underline {text-decoration:underline;}#yiv9274758923 .yiv9274758923attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv9274758923 .yiv9274758923attach div a {text-decoration:none;}#yiv9274758923 .yiv9274758923attach img {border:none;padding-ri
Re: RES: [oracle_br] upgrade 12.1 to 12.2 ?
Ednilson, A versão do catalogo não depende da versão do banco em que foi criado, mas da versão do RMAN que você usou quando rodou o create catalog no esquema do catalogo. Você não precisa instalar nada para atualizar ele, basta rodar o comando com algum RMAN de versão mais recente. Mas faça um backup do catalogo antes, caso o rman da 10g pare de funcionar e você precise voltar o catalogo para a versão anterior. É mais seguro criar um catalogo separado para a 12.2. Há alguma compatibilidade do catalogo com versões mais antigas do rman, no suporte tem o documento RMAN Compatibility Matrix (Doc ID 73431.1), mas ele ainda não foi atualizado para o Oracle 12.2. Atc,Luis Freitas On Thursday, April 20, 2017 10:36 AM, "'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br]" wrote: Angelo,Então, o catalogo nunca foi 11, nasceu como 12.1 mesmo.Os demais bancos aqui entre 10g e 11g estão funcionando sem problemas. Mas esse banco novo é 12.2 Então eu teria que instalar o binario do 12.2 e migrar o catalogo, certo? Grato,Ednilson De: sentto-1682896-121758-1492694385-ednilson.silva=jbs.com...@returns.groups.yahoo.com [mailto:sentto-1682896-121758-1492694385-ednilson.silva=jbs.com...@returns.groups.yahoo.com] Em nome de angelo angelolis...@gmail.com [oracle_br] Enviada em: quinta-feira, 20 de abril de 2017 10:13 Para: oracle_br@yahoogrupos.com.br Assunto: Re: [oracle_br] upgrade 12.1 to 12.2 ? Curiosidade Isso ja foi 11.2.0.4 tambem ? ( foi subindo de 11g pra 12c.. ) O proprio erro ta entregando.. PL/SQL package RMAN.DBMS_RCVCAT version 11.02.00.04 in RCVCAT database is too old tenta atualizar o catalogo On 20 April 2017 at 09:58, 'Ednilson Silva' ednilson.si...@jbs.com.br [oracle_br] wrote: Pessoal,Tenho um Catalogo do RMAN que esta no 12.1, e agora estou tentando registrar um banco 12.2 Recovery Manager: Release 12.2.0.1.0 - Production on Thu Apr 20 09:44:35 2017 Copyright (c) 1982, 2017, Oracle and/or its affiliates. All rights reserved. connected to target database: DBOADTP (DBID=1459929393)connected to recovery catalog databasePL/SQL package RMAN.DBMS_RCVCAT version 11.02.00.04 in RCVCAT database is too old Como devo proceder para atualizar a versão desse meu banco RMAN de 12.1 para 12.2 ? Grato,Ednilson Silva #yiv0225103695 #yiv0225103695 -- #yiv0225103695ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0225103695 #yiv0225103695ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0225103695 #yiv0225103695ygrp-mkp #yiv0225103695hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0225103695 #yiv0225103695ygrp-mkp #yiv0225103695ads {margin-bottom:10px;}#yiv0225103695 #yiv0225103695ygrp-mkp .yiv0225103695ad {padding:0 0;}#yiv0225103695 #yiv0225103695ygrp-mkp .yiv0225103695ad p {margin:0;}#yiv0225103695 #yiv0225103695ygrp-mkp .yiv0225103695ad a {color:#ff;text-decoration:none;}#yiv0225103695 #yiv0225103695ygrp-sponsor #yiv0225103695ygrp-lc {font-family:Arial;}#yiv0225103695 #yiv0225103695ygrp-sponsor #yiv0225103695ygrp-lc #yiv0225103695hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0225103695 #yiv0225103695ygrp-sponsor #yiv0225103695ygrp-lc .yiv0225103695ad {margin-bottom:10px;padding:0 0;}#yiv0225103695 #yiv0225103695actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0225103695 #yiv0225103695activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0225103695 #yiv0225103695activity span {font-weight:700;}#yiv0225103695 #yiv0225103695activity span:first-child {text-transform:uppercase;}#yiv0225103695 #yiv0225103695activity span a {color:#5085b6;text-decoration:none;}#yiv0225103695 #yiv0225103695activity span span {color:#ff7900;}#yiv0225103695 #yiv0225103695activity span .yiv0225103695underline {text-decoration:underline;}#yiv0225103695 .yiv0225103695attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv0225103695 .yiv0225103695attach div a {text-decoration:none;}#yiv0225103695 .yiv0225103695attach img {border:none;padding-right:5px;}#yiv0225103695 .yiv0225103695attach label {display:block;margin-bottom:5px;}#yiv0225103695 .yiv0225103695attach label a {text-decoration:none;}#yiv0225103695 blockquote {margin:0 0 0 4px;}#yiv0225103695 .yiv0225103695bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv0225103695 .yiv0225103695bold a {text-decoration:none;}#yiv0225103695 dd.yiv0225103695last p a {font-family:Verdana;font-weight:700;}#yiv0225103695 dd.yiv0225103695last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv0225103695 dd.yiv0225103695last p span.yiv0225103695yshortcuts {margin-right:0;}#yiv0225103695 div.yiv0225103695attach-table div div a {text-decoration:none;}#yiv0225103695 div.yiv0225103695attach-table {width:400px;}#yiv0225103695 div.yiv0225103695file-title a, #yiv0225103695 div.yiv0
Re: [oracle_br] impdp
Mario, Se você não vai usar este sistema em produção, está fazendo testes ou desenvolvimento, pode usar uma versão full com a licença "OTN", que não tem custo. Mas para isso não pode ter esse sistema em produção ai na empresa ou organização onde você está. Se tiver uma produção do sistema, a licença OTN não vale. Atc,Luis Freitas On Wednesday, April 12, 2017 4:35 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Intão, Angelo : sim, muito provavelmente corrompeu o XE atual mas como era uma instância de testes e POCs pelo que entendi então não vale a pena o trabalho de tentar consertar, é criar outra instância mesmo... Agora, não necessariamente essa nova instância ** Obrigatoriamente ** teria que ser algo 'full', ie, Standard ou Enterprise : seria interessante se pudesse ser algo acima do XE (pois entre outras coisas assim o cara poderia testar recursos não disponíveis no XE) mas se isso não for viável (principalmente por causa de CUSTOS!!), é ** TOTALMENTE POSSÍVEL ** vc importar dumps de banco 'full' no e repetir testes / executar rotinas no XE mesmo que elas foram originalmente desenvolvidas num banco 'full', *** RESPEITANDO-SE os limites e ausências do XE []s Chiappa #yiv9047748934 #yiv9047748934 -- #yiv9047748934ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9047748934 #yiv9047748934ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9047748934 #yiv9047748934ygrp-mkp #yiv9047748934hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9047748934 #yiv9047748934ygrp-mkp #yiv9047748934ads {margin-bottom:10px;}#yiv9047748934 #yiv9047748934ygrp-mkp .yiv9047748934ad {padding:0 0;}#yiv9047748934 #yiv9047748934ygrp-mkp .yiv9047748934ad p {margin:0;}#yiv9047748934 #yiv9047748934ygrp-mkp .yiv9047748934ad a {color:#ff;text-decoration:none;}#yiv9047748934 #yiv9047748934ygrp-sponsor #yiv9047748934ygrp-lc {font-family:Arial;}#yiv9047748934 #yiv9047748934ygrp-sponsor #yiv9047748934ygrp-lc #yiv9047748934hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9047748934 #yiv9047748934ygrp-sponsor #yiv9047748934ygrp-lc .yiv9047748934ad {margin-bottom:10px;padding:0 0;}#yiv9047748934 #yiv9047748934actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9047748934 #yiv9047748934activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9047748934 #yiv9047748934activity span {font-weight:700;}#yiv9047748934 #yiv9047748934activity span:first-child {text-transform:uppercase;}#yiv9047748934 #yiv9047748934activity span a {color:#5085b6;text-decoration:none;}#yiv9047748934 #yiv9047748934activity span span {color:#ff7900;}#yiv9047748934 #yiv9047748934activity span .yiv9047748934underline {text-decoration:underline;}#yiv9047748934 .yiv9047748934attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv9047748934 .yiv9047748934attach div a {text-decoration:none;}#yiv9047748934 .yiv9047748934attach img {border:none;padding-right:5px;}#yiv9047748934 .yiv9047748934attach label {display:block;margin-bottom:5px;}#yiv9047748934 .yiv9047748934attach label a {text-decoration:none;}#yiv9047748934 blockquote {margin:0 0 0 4px;}#yiv9047748934 .yiv9047748934bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv9047748934 .yiv9047748934bold a {text-decoration:none;}#yiv9047748934 dd.yiv9047748934last p a {font-family:Verdana;font-weight:700;}#yiv9047748934 dd.yiv9047748934last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv9047748934 dd.yiv9047748934last p span.yiv9047748934yshortcuts {margin-right:0;}#yiv9047748934 div.yiv9047748934attach-table div div a {text-decoration:none;}#yiv9047748934 div.yiv9047748934attach-table {width:400px;}#yiv9047748934 div.yiv9047748934file-title a, #yiv9047748934 div.yiv9047748934file-title a:active, #yiv9047748934 div.yiv9047748934file-title a:hover, #yiv9047748934 div.yiv9047748934file-title a:visited {text-decoration:none;}#yiv9047748934 div.yiv9047748934photo-title a, #yiv9047748934 div.yiv9047748934photo-title a:active, #yiv9047748934 div.yiv9047748934photo-title a:hover, #yiv9047748934 div.yiv9047748934photo-title a:visited {text-decoration:none;}#yiv9047748934 div#yiv9047748934ygrp-mlmsg #yiv9047748934ygrp-msg p a span.yiv9047748934yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv9047748934 .yiv9047748934green {color:#628c2a;}#yiv9047748934 .yiv9047748934MsoNormal {margin:0 0 0 0;}#yiv9047748934 o {font-size:0;}#yiv9047748934 #yiv9047748934photos div {float:left;width:72px;}#yiv9047748934 #yiv9047748934photos div div {border:1px solid #66;height:62px;overflow:hidden;width:62px;}#yiv9047748934 #yiv9047748934photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv9047748934 #yiv9047748934reco-category {font-size:77%;}#yiv90477
Re: [oracle_br] Re: Sequences schema sys
Rogerio, O google aponta esse blog para esse erro: http://www.usn-it.de/index.php/2013/05/29/ora-600-kokiasg1-reasons-and-workarounds/ Tem uma sugestão de colocar um parametro para poder abrir o banco e recriar uma das sequences do SYS. Depois disso talvez você consiga exportar os objetos para recriar o banco, ou rodar o catalog.sql como sugerido. Mas essas sugestões não são suportadas pela Oracle a não ser que você abra um chamado e o analista sugira fazer isso. Então a base que teve o problema precisa ser abandonada após extrair os dados. Nesse tipo de situação o antigo exp deve funcionar mais fácil que o expdp, pois precisa de menos recursos do banco para ser executado. Se o banco não abrir de jeito nenhum, e não houver backup, um jeito de recuperar os dados é através do Field Support, que pode usar uma ferramenta chamada Oracle's Data Unloader. Você tentou abrir o banco com "startup upgrade"? Atc,Luis Freitas On Wednesday, April 12, 2017 7:16 PM, "Roger Camatini rogerio.camat...@gmail.com [oracle_br]" wrote: Chiappa, Sei que é muito dificil uma coisa dessas acontecer, mas como tu mesmo disse, a pouco dias atras houve um caso relatado aqui mesmo no forum, de um cidadão mexendo nos objetos do SYS. Tentei fazer o que foi proposto, mas como o banco não está aberto, os scripts dão erro. O 'alter database open' gera um ora 600 também. Atenciosamente, Rogério Camatini Em 12 de abril de 2017 19:02, jlchia...@yahoo.com.br [oracle_br] escreveu: imho dropar objetos (sequências ou seja o que for) do SYS *** não é *** um teste válido para aprendizado, pois é algo que ** DIFICILMENTE ** ocorre em uso REAL, do dia a dia, NÂO é um problema que vc rotineiramente venha a ser chamado pra resolver Na verdade a regra é Clara, no SYS salvo exceções realmente excepcionais não se faz DDL nenhum, DML nenhum, no máximo se faz DCLs dando GRANTs pra alguns POUCOS schemas/roles escolhidos, mas ok, que seja para aprendizado pessoal seu, algo que vc talvez não use na real No caso a resposta é simples : praticamente ** todos ** os objetos do SYS são criados por scripts sqlplus, que ficam em $ORACLE_HOME/rdbms/admin (catalog.sql e catproc.sql são os principais, cheque no 12c se mais algum foi introduzido mas iirc não foi) , então o procedimento é vc os executar um após o outro e depois recompilar tudo que estiver inválido com utlrp, é isso Notar que muitas vezes um DDL ou DML feito no SYS causa diversos efeitos graves (pesquise aqui mesmo no Fórum, há algumas semanas teve um sujeito que saiu fazendo DML/DDL no schema SYS e em consequência perdeu acesso à export/import, ferramentas que ele usava pra backup lógico, esse foi um exemplo recente) mas como no seu caso ao que parece o SYS ainda consegue conectar no banco, os scripts devem funcionar sem probs []s Chiappa #yiv0924645594 #yiv0924645594 -- #yiv0924645594ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0924645594 #yiv0924645594ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0924645594 #yiv0924645594ygrp-mkp #yiv0924645594hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0924645594 #yiv0924645594ygrp-mkp #yiv0924645594ads {margin-bottom:10px;}#yiv0924645594 #yiv0924645594ygrp-mkp .yiv0924645594ad {padding:0 0;}#yiv0924645594 #yiv0924645594ygrp-mkp .yiv0924645594ad p {margin:0;}#yiv0924645594 #yiv0924645594ygrp-mkp .yiv0924645594ad a {color:#ff;text-decoration:none;}#yiv0924645594 #yiv0924645594ygrp-sponsor #yiv0924645594ygrp-lc {font-family:Arial;}#yiv0924645594 #yiv0924645594ygrp-sponsor #yiv0924645594ygrp-lc #yiv0924645594hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0924645594 #yiv0924645594ygrp-sponsor #yiv0924645594ygrp-lc .yiv0924645594ad {margin-bottom:10px;padding:0 0;}#yiv0924645594 #yiv0924645594actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0924645594 #yiv0924645594activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0924645594 #yiv0924645594activity span {font-weight:700;}#yiv0924645594 #yiv0924645594activity span:first-child {text-transform:uppercase;}#yiv0924645594 #yiv0924645594activity span a {color:#5085b6;text-decoration:none;}#yiv0924645594 #yiv0924645594activity span span {color:#ff7900;}#yiv0924645594 #yiv0924645594activity span .yiv0924645594underline {text-decoration:underline;}#yiv0924645594 .yiv0924645594attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv0924645594 .yiv0924645594attach div a {text-decoration:none;}#yiv0924645594 .yiv0924645594attach img {border:none;padding-right:5px;}#yiv0924645594 .yiv0924645594attach label {display:block;margin-bottom:5px;}#yiv0924645594 .yiv0924645594attach label a {text-decoration:none;}#yiv0924645594 blockquote {margin:0 0 0 4px;}#yiv0924645594 .yiv0924645594bold {fon
Re: [oracle_br] Sequences schema sys
Roger, Posta alguns dos erros. Tentou subir a base com startup upgrade? Atc.Luis Freitas On Wednesday, April 12, 2017 5:03 PM, "Rodrigo Mufalani rodr...@mufalani.com.br [oracle_br]" wrote: Já tentou rodar catproc e catalog? Ou similar, caso tenha mudado no nome... Get Outlook for iOSFrom: oracle_br@yahoogrupos.com.br on behalf of Roger Camatini rogerio.camat...@gmail.com [oracle_br] Sent: Wednesday, April 12, 2017 4:52:17 PM To: oracle_br@yahoogrupos.com.br Subject: [oracle_br] Sequences schema sys Boa tarde Senhores, No sentido de estudo e resolução de problemas, criei uma base de testes 12c e deletei as sequences do schema SYS. Como esperado, o banco começou a gerar muitos erros ora 600, não deixando mais nenhum user que não tenha privilégio DBA conectar ao banco. Baixei o banco, e simplesmente não sobe mais..isso tbm já era esperado. Após muitas pesquisas e todas sem sucesso até o momento, não consegui encontrar nada que possa ajudar na resolução do problema. Alguem dos experts do grupo já passou por algo similar? Atenciosamente, Rogério Camatini #yiv0798966193 #yiv0798966193 -- #yiv0798966193ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0798966193 #yiv0798966193ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0798966193 #yiv0798966193ygrp-mkp #yiv0798966193hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0798966193 #yiv0798966193ygrp-mkp #yiv0798966193ads {margin-bottom:10px;}#yiv0798966193 #yiv0798966193ygrp-mkp .yiv0798966193ad {padding:0 0;}#yiv0798966193 #yiv0798966193ygrp-mkp .yiv0798966193ad p {margin:0;}#yiv0798966193 #yiv0798966193ygrp-mkp .yiv0798966193ad a {color:#ff;text-decoration:none;}#yiv0798966193 #yiv0798966193ygrp-sponsor #yiv0798966193ygrp-lc {font-family:Arial;}#yiv0798966193 #yiv0798966193ygrp-sponsor #yiv0798966193ygrp-lc #yiv0798966193hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0798966193 #yiv0798966193ygrp-sponsor #yiv0798966193ygrp-lc .yiv0798966193ad {margin-bottom:10px;padding:0 0;}#yiv0798966193 #yiv0798966193actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0798966193 #yiv0798966193activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0798966193 #yiv0798966193activity span {font-weight:700;}#yiv0798966193 #yiv0798966193activity span:first-child {text-transform:uppercase;}#yiv0798966193 #yiv0798966193activity span a {color:#5085b6;text-decoration:none;}#yiv0798966193 #yiv0798966193activity span span {color:#ff7900;}#yiv0798966193 #yiv0798966193activity span .yiv0798966193underline {text-decoration:underline;}#yiv0798966193 .yiv0798966193attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv0798966193 .yiv0798966193attach div a {text-decoration:none;}#yiv0798966193 .yiv0798966193attach img {border:none;padding-right:5px;}#yiv0798966193 .yiv0798966193attach label {display:block;margin-bottom:5px;}#yiv0798966193 .yiv0798966193attach label a {text-decoration:none;}#yiv0798966193 blockquote {margin:0 0 0 4px;}#yiv0798966193 .yiv0798966193bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv0798966193 .yiv0798966193bold a {text-decoration:none;}#yiv0798966193 dd.yiv0798966193last p a {font-family:Verdana;font-weight:700;}#yiv0798966193 dd.yiv0798966193last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv0798966193 dd.yiv0798966193last p span.yiv0798966193yshortcuts {margin-right:0;}#yiv0798966193 div.yiv0798966193attach-table div div a {text-decoration:none;}#yiv0798966193 div.yiv0798966193attach-table {width:400px;}#yiv0798966193 div.yiv0798966193file-title a, #yiv0798966193 div.yiv0798966193file-title a:active, #yiv0798966193 div.yiv0798966193file-title a:hover, #yiv0798966193 div.yiv0798966193file-title a:visited {text-decoration:none;}#yiv0798966193 div.yiv0798966193photo-title a, #yiv0798966193 div.yiv0798966193photo-title a:active, #yiv0798966193 div.yiv0798966193photo-title a:hover, #yiv0798966193 div.yiv0798966193photo-title a:visited {text-decoration:none;}#yiv0798966193 div#yiv0798966193ygrp-mlmsg #yiv0798966193ygrp-msg p a span.yiv0798966193yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv0798966193 .yiv0798966193green {color:#628c2a;}#yiv0798966193 .yiv0798966193MsoNormal {margin:0 0 0 0;}#yiv0798966193 o {font-size:0;}#yiv0798966193 #yiv0798966193photos div {float:left;width:72px;}#yiv0798966193 #yiv0798966193photos div div {border:1px solid #66;height:62px;overflow:hidden;width:62px;}#yiv0798966193 #yiv0798966193photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv0798966193 #yiv0798966193reco-category {font-size:77%;}#yiv0798966193 #yiv0798966193reco-desc {font-size:77%;}#yiv0798966193 .yiv0798966193replbq {margin:4px;}#yiv0798966193 #yiv0798966193ygrp-actbar
Re: [oracle_br] impdp
Chiappa, Meu 11g r2 aqui também não mostra informação de charset no impdp. Talvez só tenha isso na 12c? ;;;Import: Release 11.2.0.4.0 - Production on Thu Mar 30 15:21:43 2017 Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.;;;Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bitProductionWith the Partitioning, OLAP, Data Mining and Real Application Testing optionsMaster table "SYSTEM"."SYS_IMPORT_SCHEMA_01" successfully loaded/unloadedStarting "SYSTEM"."SYS_IMPORT_SCHEMA_01": system/ directory=DATA_PUMP_2 dumpfile=.dmp logfile=impdp_xxx.log parallel=8 schemas=XXXProcessing object type SCHEMA_EXPORT/USER... Atc,Luis Freitas On Tuesday, April 4, 2017 6:45 PM, "Isabele de Araujo Barros isabe...@gmail.com [oracle_br]" wrote: Mario, Já aconteceu esse problema comigo. No Oracle XE o encoding padrão é o utf-8.No UTF-8 tem caracteres que podem ocupar mais de 1 byte, por isso ocorre o problema. http://stackoverflow.com/ questions/81448/difference- between-byte-and-char-in- column-datatypes http://dba.stackexchange.com/questions/2736/oracle-import-problem-caused-by-different-character-sets O que eu fiz foi identificar as colunas com problema, criei as tabelas sem dados, aumentei o tamanho dos campos e importei os dados. Acho que também mudando de byte para char também resolve, mas não testei. Att,Isabele Em 4 de abril de 2017 15:23, angelo angelolis...@gmail.com [oracle_br] escreveu: Mario, tenta importar de novo com o impdp ( vai dar erro ) mas coloca pra gerar log em txt logfile=erro.txt e olha o arquivo de erro geradoO encoding utilizado vai aparecer dentro do log, logo no inicio quando o arquivo dmp começar a ser lido. E ai vc pode ajustar a sua sessão pra importar com o encoding original. On 4 April 2017 at 15:10, Luis Freitas lfreita...@yahoo.com [oracle_br] wrote: Mario, O melhor é ver qual o characterset da base que gerou o export, e criar uma base usando o mesmo characterset. Pode olhar o arquivo com "strings .dmp | head" (Em linux/unix), deve aparecer o characterset em que ele foi gerado, que provavelmente é o characterset da base de origem. Se eu fosse chutar, o arquivo deve ser WE8ISO8859P1 e você deve estar usando uma base UTF8 (Unicode). Atc,Luis Freitas On Tuesday, April 4, 2017 2:01 PM, "Mario Rodrigues marioirodrig...@gmail.com [oracle_br]" wrote: Pois é ... já solicitei as informações a empresa q fez o export .. é que tenho certeza que vai demorar uns 2 dias para eu obter a resposta .. estou pesquisando (com as dicas de vcs) uma forma de tentar resolver sem depender deles ... Obrigado Em 4 de abril de 2017 13:44, César Carvalho cesar.sys...@gmail.com [oracle_br] escreveu: Ta com cara de encoding mesmo. Em 4 de abril de 2017 13:35, angelo angelolis...@gmail.com [oracle_br] escreveu: Será que não está com o encoding errado não ? Tem que ser igual ao do banco de dados que foi exportado, do contrario vai chover erros pra todo lado porque o impdp tenta fazer uma conversão impossível de rolar. 2017-04-04 11:31 GMT-03:00 Tércio Costa terciosilvaco...@gmail.com [oracle_br] : Oracle XE tem os mesmos limites de coluna que as outras versões. Acontece que o erro está mostrando que o carácter que ele está tentando importar tem tamanho 31 mesmo, maior que o da coluna, por isso o erro. Verifique essa linha em questão se é assim mesmo, faça uma consulta na base que exportou. Em 4 de abril de 2017 11:16, Mario Rodrigues marioirodrig...@gmail.com [oracle_br] escreveu: Pessoal, Bom Dia Estou realizando o import de uma base, dai aestou tendo a seguinte msg de erro: value too large for column DESCRICAO(actual: 21, maximum: 20) Quem fez o DUMP me informou que a coluna em questão esta com 30 no tamanho ... alguem sabe me informar se no ORACLE XE tem algum limite sobre o tamanho??? -- || Tércio Costa, Oracle Certified SQL Expert Analista de Sistemas, Unimed João Pessoa m:+55 83 9 9915 9168 | w:https://oraclepress.wordpr ess.com/ | | -- César CarvalhoEspecialista em Banco de DadosMCP|MCSA|VPS|VTSPE-mail: cesar@hotmail.com | cesar.sysdba@gmail.comSkype: cesar.dba #yiv0475605862 #yiv0475605862 -- #yiv0475605862ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0475605862 #yiv0475605862ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0475605862 #yiv0475605862ygrp-mkp #yiv0475605862hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0475605862 #yiv0475605862ygrp-mkp #yiv0475605862ads {margin-bottom:10px;}#yiv0475605862 #yiv0475605862ygrp-mkp .yiv0475605862ad {padding:0 0;}#yiv0475605862 #yiv0475605862ygrp-mkp .yiv0475605862ad p {margin:0;}#yiv0475605862 #yiv0475605862ygrp-mkp .yiv0475605862ad a
Re: [oracle_br] impdp
Mario, O melhor é ver qual o characterset da base que gerou o export, e criar uma base usando o mesmo characterset. Pode olhar o arquivo com "strings .dmp | head" (Em linux/unix), deve aparecer o characterset em que ele foi gerado, que provavelmente é o characterset da base de origem. Se eu fosse chutar, o arquivo deve ser WE8ISO8859P1 e você deve estar usando uma base UTF8 (Unicode). Atc,Luis Freitas On Tuesday, April 4, 2017 2:01 PM, "Mario Rodrigues marioirodrig...@gmail.com [oracle_br]" wrote: Pois é ... já solicitei as informações a empresa q fez o export .. é que tenho certeza que vai demorar uns 2 dias para eu obter a resposta .. estou pesquisando (com as dicas de vcs) uma forma de tentar resolver sem depender deles ... Obrigado Em 4 de abril de 2017 13:44, César Carvalho cesar.sys...@gmail.com [oracle_br] escreveu: Ta com cara de encoding mesmo. Em 4 de abril de 2017 13:35, angelo angelolis...@gmail.com [oracle_br] escreveu: Será que não está com o encoding errado não ? Tem que ser igual ao do banco de dados que foi exportado, do contrario vai chover erros pra todo lado porque o impdp tenta fazer uma conversão impossível de rolar. 2017-04-04 11:31 GMT-03:00 Tércio Costa terciosilvaco...@gmail.com [oracle_br] : Oracle XE tem os mesmos limites de coluna que as outras versões. Acontece que o erro está mostrando que o carácter que ele está tentando importar tem tamanho 31 mesmo, maior que o da coluna, por isso o erro. Verifique essa linha em questão se é assim mesmo, faça uma consulta na base que exportou. Em 4 de abril de 2017 11:16, Mario Rodrigues marioirodrig...@gmail.com [oracle_br] escreveu: Pessoal, Bom Dia Estou realizando o import de uma base, dai aestou tendo a seguinte msg de erro: value too large for column DESCRICAO(actual: 21, maximum: 20) Quem fez o DUMP me informou que a coluna em questão esta com 30 no tamanho ... alguem sabe me informar se no ORACLE XE tem algum limite sobre o tamanho??? -- || Tércio Costa, Oracle Certified SQL Expert Analista de Sistemas, Unimed João Pessoa m:+55 83 9 9915 9168 | w:https://oraclepress.wordpr ess.com/ | | -- César CarvalhoEspecialista em Banco de DadosMCP|MCSA|VPS|VTSPE-mail: cesar@hotmail.com | cesar.sysdba@gmail.comSkype: cesar.dba #yiv2982689928 #yiv2982689928 -- #yiv2982689928ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2982689928 #yiv2982689928ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2982689928 #yiv2982689928ygrp-mkp #yiv2982689928hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2982689928 #yiv2982689928ygrp-mkp #yiv2982689928ads {margin-bottom:10px;}#yiv2982689928 #yiv2982689928ygrp-mkp .yiv2982689928ad {padding:0 0;}#yiv2982689928 #yiv2982689928ygrp-mkp .yiv2982689928ad p {margin:0;}#yiv2982689928 #yiv2982689928ygrp-mkp .yiv2982689928ad a {color:#ff;text-decoration:none;}#yiv2982689928 #yiv2982689928ygrp-sponsor #yiv2982689928ygrp-lc {font-family:Arial;}#yiv2982689928 #yiv2982689928ygrp-sponsor #yiv2982689928ygrp-lc #yiv2982689928hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2982689928 #yiv2982689928ygrp-sponsor #yiv2982689928ygrp-lc .yiv2982689928ad {margin-bottom:10px;padding:0 0;}#yiv2982689928 #yiv2982689928actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv2982689928 #yiv2982689928activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv2982689928 #yiv2982689928activity span {font-weight:700;}#yiv2982689928 #yiv2982689928activity span:first-child {text-transform:uppercase;}#yiv2982689928 #yiv2982689928activity span a {color:#5085b6;text-decoration:none;}#yiv2982689928 #yiv2982689928activity span span {color:#ff7900;}#yiv2982689928 #yiv2982689928activity span .yiv2982689928underline {text-decoration:underline;}#yiv2982689928 .yiv2982689928attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv2982689928 .yiv2982689928attach div a {text-decoration:none;}#yiv2982689928 .yiv2982689928attach img {border:none;padding-right:5px;}#yiv2982689928 .yiv2982689928attach label {display:block;margin-bottom:5px;}#yiv2982689928 .yiv2982689928attach label a {text-decoration:none;}#yiv2982689928 blockquote {margin:0 0 0 4px;}#yiv2982689928 .yiv2982689928bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv2982689928 .yiv2982689928bold a {text-decoration:none;}#yiv2982689928 dd.yiv2982689928last p a {font-family:Verdana;font-weight:700;}#yiv2982689928 dd.yiv2982689928last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv2982689928 dd.yiv2982689928last p span.yiv2982689928yshortcuts {margin-right:0;}#yiv2982689928 div.yiv2982689928attach-table div div a {text-decoration:none;}#yiv2982689928 div.yiv2982689928attach-table {width:400px;}#yiv2982689928 div.y
Re: [oracle_br] ORA-07445: exception encountered: core dump
Erik, Esse parâmetro desativa recursos do "query optimizer", então é bem provável relacionado sim. Atc,Luis Freitas On Friday, March 17, 2017 3:55 PM, "Erik Castilho escasti...@gmail.com [oracle_br]" wrote: Para contorno do problema citado acima foi setado o parâmetro "_optimizer_enable_extended_stats" para false, após isso um outro processo do sistema ficou muito lento, antes era bem rápido mas agora esta bem lento, não sei se foi por causa desse parâmetro especificamente porém coincidiu, esse parâmetro tem algo haver com o desempenho do banco? algo assim? Em 17 de março de 2017 14:16, Luis Freitas lfreita...@yahoo.com [oracle_br] escreveu: Erik, É muito comum se negociar desconto ou gratuidade no primeiro ano de suporte do Oracle, então normalmente é instalado o ultimo patch set do banco, mesmo que a empresa acabe não renovando esse suporte depois. A 11.2.0.4 está disponível desde Agosto de 2013. É provável que a maior parte dos clientes do seu ERP aí esteja na versão 11.2.0.3 ou 11.2.0.4. Para estar nessa situação que você tem ai é preciso que seja negociado um contrato de licença sem nenhum tipo de suporte. Ou havia o primeiro ano de suporte mas a pessoa que instalou o banco "comeu bola", e pela regra do suporte Oracle você só pode usar o que fez o "download" antes de expirar o suporte. Nem me lembro mais quando foi a ultima vez que vi um banco 11.2.0.1. Há muita instalações ainda usando a versão 10g r2 e até alguns 9i r2, e 11g r1, mas também costuma ser um dos últimos patchsets que estava disponível. Sobre download de patches não relacionados ao produto, há sim bloqueio de alguns tipos de patches por família de produto, isso é chamado de "Patch Entitlement" e quando acontece o botão de download fica desativado para o patch, e existe também alguma auditoria no download de patches. Atenciosamente,Luis Freitas On Friday, March 17, 2017 10:59 AM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Ainda na tentativa de esclarecer cristalinamente a sua situação, há alguns pontos a mais que são ** diferentes ** dos outros Fabricantes de RDBMSs na política de Licenciamento e na de Suporte : 1. sobre Suporte : a) de modo geral a Oracle trabalha assim : quando lança um Produto, ela já diz até quando ele vai estar em Suporte Premier (ie, até quando a Oracle se compromete a criar bugfixes pra ele e se compromete a atuar diretamente no seu ambiente em caso de problemas, podendo inclusive - a critério dela - solicitar acesso remoto e te ajudar a resolver problemas diretamente), ALÉM de se comprometer a criar um bugfix customizado pra vc se vc encontrar um bug novo. Assim que acaba o período de Suporte Premier, começa o período de Suporte Extendido : durante o período de Suporte Extendido, vc recebe as correções para erros críticos que a Oracle descobrir (ie, CPUs e PSUs) mas iirc não pode solicitar novos bugfixes customizados para o seu ambiente para novos bugs que vc encontrar e a Oracle não se compromete a atuar diretamente no seu ambiente seja qual for a Criticidade / Severidade do problema, ** mas ** vc terá Pleno acesso aos softwares Oracle atualizados e aos bugfixes que já foram feitos, bem como aos DOCUMENTOS TÉCNICOS todos que existam, tais como o que o outro colega usou pra indicar o work-around do seu bug... Acabando o período de Suporte Extendido, aí começa o período de Sustaining Support, onde vc não recebe nada de novo, é só acesso aos bugfixes que já foram criados e nenhuma Ação da Oracle será feita pelos Analistas além de pesquisar e indicar ações anteriores já tomadas no passado para outros clientes. b) Custos : o ponto é que após o primeiro ano de Suporte Extendido normalmente a Oracle cobra além do valor de Contrato de Suporte normal uma ** taxa extra ** , para (entre outras coisas) valorizar/estimular a mudança de versão : no caso ESPECÍFICO do 11gR2, porém, cfrme https://blogs.oracle.com/ UPGRADE/entry/no_extra_fee_ for_extended, a Oracle optou por DISPENSAR essa taxa extra, então vc ainda pode obter SUporte para o 11gR2 sem essa taxa extra. Além desse, o outro Custo que vc pode (eu diria vai) incorrer aí é o reinstatement, cfrme indicado em http://www.oracle.com/us/ support/library/057419.pdf : a questão é que quando vc compra o Suporte junto com a Licença de uso vc paga um valor reduzido no Suporte, mas se vc deixar pra contratar o Suporte muito tempo depois da Licença obviamente não terá direito a valor promocional, então o valor vai ser mais alto, normalmente 150% do valor promocional de quem compra junto com Licença. c) obviamente Chamado aos analistas Oracle e solicitação de patches são específicos pro produto que vc licenciou, mas para casos onde vc só queira baixar patches já existentes e/ou documentos técnicos , não é garantido mas via de regra a Oracle *** não *** compartimentaliza o acesso a ele
Re: [oracle_br] ORA-07445: exception encountered: core dump
Erik, É muito comum se negociar desconto ou gratuidade no primeiro ano de suporte do Oracle, então normalmente é instalado o ultimo patch set do banco, mesmo que a empresa acabe não renovando esse suporte depois. A 11.2.0.4 está disponível desde Agosto de 2013. É provável que a maior parte dos clientes do seu ERP aí esteja na versão 11.2.0.3 ou 11.2.0.4. Para estar nessa situação que você tem ai é preciso que seja negociado um contrato de licença sem nenhum tipo de suporte. Ou havia o primeiro ano de suporte mas a pessoa que instalou o banco "comeu bola", e pela regra do suporte Oracle você só pode usar o que fez o "download" antes de expirar o suporte. Nem me lembro mais quando foi a ultima vez que vi um banco 11.2.0.1. Há muita instalações ainda usando a versão 10g r2 e até alguns 9i r2, e 11g r1, mas também costuma ser um dos últimos patchsets que estava disponível. Sobre download de patches não relacionados ao produto, há sim bloqueio de alguns tipos de patches por família de produto, isso é chamado de "Patch Entitlement" e quando acontece o botão de download fica desativado para o patch, e existe também alguma auditoria no download de patches. Atenciosamente,Luis Freitas On Friday, March 17, 2017 10:59 AM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Ainda na tentativa de esclarecer cristalinamente a sua situação, há alguns pontos a mais que são ** diferentes ** dos outros Fabricantes de RDBMSs na política de Licenciamento e na de Suporte : 1. sobre Suporte : a) de modo geral a Oracle trabalha assim : quando lança um Produto, ela já diz até quando ele vai estar em Suporte Premier (ie, até quando a Oracle se compromete a criar bugfixes pra ele e se compromete a atuar diretamente no seu ambiente em caso de problemas, podendo inclusive - a critério dela - solicitar acesso remoto e te ajudar a resolver problemas diretamente), ALÉM de se comprometer a criar um bugfix customizado pra vc se vc encontrar um bug novo. Assim que acaba o período de Suporte Premier, começa o período de Suporte Extendido : durante o período de Suporte Extendido, vc recebe as correções para erros críticos que a Oracle descobrir (ie, CPUs e PSUs) mas iirc não pode solicitar novos bugfixes customizados para o seu ambiente para novos bugs que vc encontrar e a Oracle não se compromete a atuar diretamente no seu ambiente seja qual for a Criticidade / Severidade do problema, ** mas ** vc terá Pleno acesso aos softwares Oracle atualizados e aos bugfixes que já foram feitos, bem como aos DOCUMENTOS TÉCNICOS todos que existam, tais como o que o outro colega usou pra indicar o work-around do seu bug... Acabando o período de Suporte Extendido, aí começa o período de Sustaining Support, onde vc não recebe nada de novo, é só acesso aos bugfixes que já foram criados e nenhuma Ação da Oracle será feita pelos Analistas além de pesquisar e indicar ações anteriores já tomadas no passado para outros clientes. b) Custos : o ponto é que após o primeiro ano de Suporte Extendido normalmente a Oracle cobra além do valor de Contrato de Suporte normal uma ** taxa extra ** , para (entre outras coisas) valorizar/estimular a mudança de versão : no caso ESPECÍFICO do 11gR2, porém, cfrme https://blogs.oracle.com/UPGRADE/entry/no_extra_fee_for_extended, a Oracle optou por DISPENSAR essa taxa extra, então vc ainda pode obter SUporte para o 11gR2 sem essa taxa extra. Além desse, o outro Custo que vc pode (eu diria vai) incorrer aí é o reinstatement, cfrme indicado em http://www.oracle.com/us/support/library/057419.pdf : a questão é que quando vc compra o Suporte junto com a Licença de uso vc paga um valor reduzido no Suporte, mas se vc deixar pra contratar o Suporte muito tempo depois da Licença obviamente não terá direito a valor promocional, então o valor vai ser mais alto, normalmente 150% do valor promocional de quem compra junto com Licença. c) obviamente Chamado aos analistas Oracle e solicitação de patches são específicos pro produto que vc licenciou, mas para casos onde vc só queira baixar patches já existentes e/ou documentos técnicos , não é garantido mas via de regra a Oracle *** não *** compartimentaliza o acesso a eles : assim, normalmente se vc comprar Licença para um Produto x mais barato Ainda Assim vc deve ter acesso aos patches/atualizações já criados pela Oracle para o produto RDBMS, bem como aos Documentos Técnicos para todos os produtos, não só o produto para o qual vc comprou Suporte... Eu não tenho 100% de certeza se isso ainda é assim - VERIFIQUE/TESTE antes - mas até há algum tempo era assim, isso era uma opção viável pra esse caso específico onde vc não quer/não precisa abrir Chamados para os analista Oracle atuarem e nem precisa de bugfixes customizados/específicos... 2. sobre Licença : a) vc ** não Licencia ** uma versão, mas um Produto : se vc comprar uma Licença de uso do produto Oracle Enterprise Edition (digamos), vc tem direito de
Re: [oracle_br] Desaster Recovery
Carlos, Acho que fiz a conta errada :-): List of Archived Logs in backup set 25 Thrd Seq Low SCN Low Time Next SCN Next Time --- -- - -- - 1 72 2797947 15-MAR-17 2798016 15-MAR-17 Tenta o recover until scn 2798015. Antigamente, o backup database plus archivelog all não pegava todos os archives necessários para fazer um recover, então eu sempre fazia primeiro um "backup database", depois um "sql 'alter system archive log current'" e um backup archivelog all. Mas acho que esse problema foi resolvido na 11g. O "until sequence" talvez tenha que ser até a sequencia 73 em vez de 72 :-). Atc,Luis Freitas On Wednesday, March 15, 2017 4:21 PM, "carloseduard...@yahoo.com [oracle_br]" wrote: O que deu a entender eh o seguinte: Meus datafiles, após o restore, estão em um SCN 2797971. O meu ultimo archive log disponivel possui o SCN 2798015 (next SCN - 1). E quando executo um recover, ele diz que eu preciso restaurar os meus datafiles de um SCN anterior ao 2797947. Portanto, o ultimo backupset nao seria o ideal para recuperar o database? EU sempre fiz restore/recover inumeras vezes, mas esse cenario especifico estou tendo dificuldades para resolver. Em Quarta-feira, 15 de Março de 2017 16:07, "carloseduard...@yahoo.com" escreveu: Chiappa, respondendo seus questionamentos... EM relação aos SCN/sequence do database, passei as informações necessárias, o estado da sequence antes da realização do backup, a localização dos backup sets dos datafiles, controlfiles e archives, informações do SCN e das sequences dos bakups dos datafiles e dos archives logs. Está tudo listado no cenário passado. Inclusive no restore database, ele mostra que o backup que está sendo restaurado foi o que realizei no exemplo, informando o backup set do dia 15, que eh o comportamento padrao sempre pegar o ultimo backup full como voce mesmo ja sabe. Em relação da deletar backups anteriores, vc vai me desculpar, mas eu descordo de vc nesse ponto. Se por acaso, um backup set mais novo estivesse corrompido, eu nao poderia voltar um backup mais antigo, pelo simples fato de eu ter deletado os backups atenreiores, portanto eu prefiro deixar todo backup dentro da politica de retenção guardado. Luis Freitas: SQL> select file#, status, recover, checkpoint_change# from v$datafile_header; FILE# STATUS REC CHECKPOINT_CHANGE#-- --- --- -- 1 ONLINE 2797971 3 ONLINE 2797971 4 ONLINE 2797971 5 ONLINE 2797971 6 ONLINE 2797971 7 ONLINE 2797971 RMAN> recover database until sequence 72 thread 1; Starting recover at 15-MAR-17allocated channel: ORA_DISK_1channel ORA_DISK_1: SID=12 device type=DISKRMAN-00571: ===RMAN-00569: === ERROR MESSAGE STACK FOLLOWS ===RMAN-00571: ===RMAN-03002: failure of recover command at 03/15/2017 16:06:50RMAN-06556: datafile 1 must be restored from backup older than SCN 2797947 Em Quarta-feira, 15 de Março de 2017 15:00, "carloseduard...@yahoo.com [oracle_br]" escreveu: Pessoal, o backup que fiz, foi um backup HOT, com o database em estado OPEN, ok? O que quis dizer com INSTANCE em SHUTDOWN, eh que na hora do restore/recovery o database estava em shutdown, ate pq foram deletados todos os datafiles do banco e consequentemente a instance estava em shutdown na hora do restore/recovery. Mas que o backup foi realizado com o database aberto, backup HOT. Em Quarta-feira, 15 de Março de 2017 13:12, "jlchia...@yahoo.com.br [oracle_br]" escreveu: " se entendi direito, você fez um backup 'cold' " ==> yep, essa foi a minha primeira pergunta também : logicamente se é COLD e feito com SHUTDOWN normal/immediate, vc tem 100% de certeza que os datafiles TODOS estão sincronizados/compatíveis com o controlfile E com as tabelas internas em termos de SCN - não faz o MENOR dos MENORES sentidos pedir RECOVER de um database que já está íntegro, sim Se não for COLD, eu reforço também a necessidade de vc consultar V$DATAFILE/HEADER/REDO LOGs, sim Também um VALIDATE DATABASE; no RMAN pode ser legal, para estarmos Certos que o backup será possível, um RESTORE PREVIEW antes da coisa real, sim... []s Chiappa #yiv7468412983 #yiv7468412983 -- #yiv7468412983ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7468412983 #yiv7468412983ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7468412983 #yiv7468412983ygrp-mkp #yiv7468412983hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7468412983 #yiv7468412983ygrp-mkp #yiv7468412983ads {margin-bottom:10px;}#yiv7468412983 #yiv7468412983ygrp-mkp .yiv7468412983ad {padding:0 0;}#yiv7468412983 #yiv7468412983ygrp-mkp .yiv7468412983ad p {margin:0;}#yiv746841
Re: [oracle_br] ORA-07445: exception encountered: core dump
Erik, O sistema foi 100% homologado, com uma base de testes que não reflete o volume da sua base de produção, usando uma configuração de teste que também pode não refletir o que você tem ai. Também acho que o suporte dizer que o sistema foi homologado não serve pra nada. Valeria apenas o contrário, ele dizer o está fora, que fugiu do cenário homologado e que precisa ajustar, quais os parâmetros do banco usados para homologação que você não tenha ai por exemplo, ou quais patches foram aplicados em cima da 11.2.0.1 para conseguir completar a homologação. Ou se há algum patch necessário no ERP para o uso com essa versão especifica do banco. Atc,Luis Freitas From: "Ricardo Arnoud ricardo...@gmail.com [oracle_br]" To: "oracle_br@yahoogrupos.com.br" Sent: Wednesday, March 15, 2017 3:25 PM Subject: Re: [oracle_br] ORA-07445: exception encountered: core dump Usar como argumento que o sistema foi homologado para a versão 11.2.0.1 é bengala, primeiramente esse ambiente deveria estar em uma versão mais atual como por exemplo a 11.2.0.4. Para isso, se requer suporte/licenciamento. E amigo, parabéns pois você esbarrou em um bug. 2017-03-15 14:48 GMT-03:00 Erik Castilho escasti...@gmail.com [oracle_br] : Boa tarde, Primeiramente obrigado pelas respostas de todos. O problema foi solucionado, inicialmente setei o parâmetro set_optimizer_enable_extended_ stats=false conforme o colega sugeriu acima, depois rodei a aplicação novamente e deu o erro. Posteriormente verifiquei os parâmetros 'shared_pool_size', 'java_pool_size', 'large_pool_size' e todos estavam com 'Value=0', atribui uns valores para cada um e depois alterei o parâmetro "_optimizer_enable_extended_ stats" para sessão novamente e deu certo. Tecnicamente não entendi a questão dos parâmetros acima, mas deu certo, vou estudar mais para entender melhor essa situação, simular essa situação mais vezes em ambiente de testes para tentar entender. Consultando um outro trace file pude verificar uma query gigantesca e também chamadas para outras procedures que acredito ser dessa aplicação, imaginei será que essa aplicação faz essa consulta desse tamanho? será que não teria como otimizar isso? não estou fugindo da minha responsabilidade com relação a empresa que presto serviço mas a software house simplesmente jogou a 'bomba' pra cima do servidor e/ou da instalação do Oracle, tá certo que foi uma questão de parâmetros, mas será que talvez a 'carga' de consultas, chamadas e objetos utilizada nessa aplicação não ocasionou uma excessiva carga no RDBMS que não suportou e cortava a conexão com a aplicação? Pois a perda de conexão era apenas nessa aplicação pois outras aplicações e módulos do mesmo ERP continuavam funcionando normalmente. Eles me passaram que essa versão 11.0.2.1.0 foi 100% homologada para o sistema, dai eu pergunto, como que foi homologada 100% sendo que esta ocorrendo este erro? fico com essas dúvidas e questionamentos que nunca vão ser respondidos por parte deles, mas na hora de falar que a culpa tá no banco ou no servidor é fácil né Mais uma vez obrigado a todos! Em 15 de março de 2017 13:05, jlchia...@yahoo.com.br [oracle_br] escreveu: Erik, um ponto adicional : como vc está tendo uma parada completamente inesperada de um processo no Oracle, *** não é Incomum *** que coisas que deveriam estar gravadas não o estejam, ou algo assim, se o processo estiver sendo interrompido antes de gravar o necessário, levando á ** CORRUPÇÃO ** ... ENtão, além de tentar um work-around se não puder fazer a análise de correção, eu RECOMENDO que vc (ou o DBA encarregado) faça os procedimentos de HEALTHCHECK e Verificação de Integridade desse banco, o quanto antes []s Chiappa -- -- Thanks, Ricardo Arnoud Porto Alegre - RS http://www.queroaprenderlinux.com.br http://www.peritodigitalonline.com.br #yiv2555710621 #yiv2555710621 -- #yiv2555710621ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv2555710621 #yiv2555710621ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv2555710621 #yiv2555710621ygrp-mkp #yiv2555710621hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv2555710621 #yiv2555710621ygrp-mkp #yiv2555710621ads {margin-bottom:10px;}#yiv2555710621 #yiv2555710621ygrp-mkp .yiv2555710621ad {padding:0 0;}#yiv2555710621 #yiv2555710621ygrp-mkp .yiv2555710621ad p {margin:0;}#yiv2555710621 #yiv2555710621ygrp-mkp .yiv2555710621ad a {color:#ff;text-decoration:none;}#yiv2555710621 #yiv2555710621ygrp-sponsor #yiv2555710621ygrp-lc {font-family:Arial;}#yiv2555710621 #yiv2555710621ygrp-sponsor #yiv2555710621ygrp-lc #yiv2555710621hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv2555710621 #yiv2555710621ygrp-sponsor #yiv2555710621ygrp-lc .yiv2555710621ad {margin-bottom:10px;padding:0 0;}#yiv2555710621 #yiv2555710621actions {font-family:Verdana;font-size:11px;padding:10
Re: [oracle_br] Desaster Recovery
Carlos, Bom dia, a) Se eu mando o "RECOVER DATABASE" o RDBMS nao deveria recuperar até onde seria possível? Sim, mas pelos logs que você mandou, o até onde possível é o scn 2798016, que é onde parou o ultimo archivelog mencionado no backup na sequencia 72. b) Mesmo informando o SCN que o controlfile me diz que eu possuo, o database também nao recupera, por qual motivo isso está acontecendo? O database recuperou até onde encontrou archived logs, usando as informações do controlfile e do fast recovery area. Mas como foi feito o restore do controlfile, o Oracle não assume que este archive log é o ultimo, você precisa especificar até onde vai fazer o recover, você pode tentar: recover database until scn 2798015; (O next do ultimo archivelog -1 )recover database until log sequence 72 thread 1; Ou mesmorecover database until cancel; (Seguido de um cancel, este ultimo antigamente não tinha no RMAN, era preciso rodar no SQLPLUS) E depois deve ser possível abrir o banco, mas ele deve exigir um resetlogs. Da forma como está acredito que você consiga abrir o banco mesmo sem fazer o recover, veja a resposta do "c". c) Estou fazendo algum procedimento errado? Alguém poderia ajudar? Bom, o que tem de errado nesse procedimento é que, se entendi direito, você fez um backup "cold", o que normalmente não temos em uma situação de desastre, pois os backups de produção são usualmente "hot". Acho que você também não viu a ultima sequencia de archive log, que está em um backupset separado, pois está tentando fazer o "recover" até a sequencia 71. A sequencia 71 termina no scn 2797947, sendo que os datafiles no ultimo backup estão já neste scn. Com um backup cold, deve ser possível abrir o banco logo após o "restore database", sem nem ser preciso fazer o "recover". Tendo restaurado o controlfile e os datafiles, você pode confirmar isso abrindo o SQLPLUS com o banco em "mount" e verificando a v$datafile_header, a coluna status vai te indicar se falta algum arquivo, a coluna "recover" indica os datafiles que estão inconsistentes e precisam de mais "recover". Quando todos os datafiles estão com o mesmo numero na "checkpoint_change#" é possível abrir o banco, mesmo que você não tenha aplicado todos os archives que possui. Talvez haja uma forma de ver isso dentro do RMAN, mas eu não conheço. Atc,Luis Freitas From: "angelo angelolis...@gmail.com [oracle_br]" To: oracle_br@yahoogrupos.com.br Sent: Wednesday, March 15, 2017 10:34 AM Subject: Re: [oracle_br] Desaster Recovery Bom dia, As vezes pode virar uma bateção de cabeça, ainda mais se o ambiente não estiver previamente documentado... Principalmente com relação ao DBID do banco. Guarda bem esse numero, porque vc ainda vai precisar dele um dia Passei por uma situação tosca outro dia, em que um tablespace nao era backupeado, na configuração do rman estava excluido de proposito. Mas na hora do restore, em outra maquina não retornava porque havia referencia a ele, na listagem dos datafiles fazia uma referencia ao que não tinha Era uma emergência, precisava fazer uma correção em um sistema que o usuário tinha feito uns lançamentos errados, então era uma copia do banco de produção. E pra completar, as pastas onde estavam os arquivos originais não eram as mesmas no servidor ( era um outro servidor ), ter que sair adaptando com set newname datafile.. E na pressa, até lembrar que existia o comando "recover database skip tablespace fulano,beltrano,... until sequence (ou scn) etc." Pode tentar também com recover database until cancel. Carlos, vou propor um outro desafio para treinar o restore, depois que vc vencer este: => formata a maquina, reinstala o Oracle, zerado e tenta voltar esse backup ai de novo.. Depois de praticar alguma vezes backup e restore, fica parecendo uma receita de bolo, que muda pouco, dependendo da situação. On 15 March 2017 at 03:39, Carlos Eduardo carloseduard...@yahoo.com [oracle_br] wrote: Cenário: Desastre e Recovery, COM BACKUP, SEM CATALOGO, INSTANCE SHUTDOWN.Enterprise Edition 12.1.0.2 Linux 64 SQL> archive log listDatabase log mode Archive ModeAutomatic archival EnabledArchive destination /u01/app/archivelog2Oldest online log sequence 67Next log sequence to archive 70Current log sequence 70 a) PASSO 1 - BACKUPEAR TODOS OS ARQUIVOS DO DATABASE run{alter system archive log current; backup database plus archivelog delete input;} Starting backup at 15-MAR-17using channel ORA_DISK_1channel ORA_DISK_1: starting full datafile backup setchannel ORA_DISK_1: specifying datafile(s) in backup setinput datafile file number=1 name=/u01/app/oracle/oradata/ TERRA1/datafile/o1_mf_system_ dbz6nx14_.dbfinput datafile file number=3 name=/u01/app/oracle/oradata/ TERRA1/datafile/o1_mf_sysaux_ dbz6m573_.dbfinput datafile file number=5 name=/u01/app/oracle/oradata/ TERRA1/datafile/o1_mf_new_ user_dcchkvk9_.dbfinput datafile file number=
Re: [oracle_br] Problema ao realizar Recovery
Carlos, Para ter certeza é preciso confirmar no log do backup, e não tenho nenhum aqui para ver, mas provavelmente esse log sequencia 5 foi gerado no meio do backup full, por um "log switch" durante o backup, mas antes do autobackup do controlfile. Dessa forma ele está registrado no controlfile, mas não está presente no ultimo backup. Para ter todos os logs seria preciso fazer um shutdown do database, startup mount, e rodar um backup dos archivelogs restantes. Qualquer cópia do controlfile feita com o banco aberto vai sempre ter registradas sequencias de log que ainda estão ativas como redo files. Numa situação de desastre você pode recuperar as ultimas transações usando esses arquivos de redo como archivelogs, assumindo que tenha sobrevivido uma cópia deles. Atc, Luis Freitas On Monday, March 6, 2017 10:59 AM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Carlos, se vc tem ** 100% ** de certeza que o comando de RESTORE DATABASE tá restaurando o backup correto (eu particularmente ** tenho uma birra e não confio ** no default do RESTORE sem argumento nenhum, sempre peço um RESTORE DATABASE usando um LABEL específico, e/ou se estou usando controlfile como catálogo depois de restaurar o controlfile manda um list backup e ** REMOVO ** os backups todos que não interessam), que não havia nenhum tipo de standby e/ou de retention setado no RMAN ou coisa assim ** segurando ** a necessidade para o archive que contém essa sequência bem antiga E QUE o controlfile que vc restaurou é o mais recente (E QUE o controlfile apontado pelo spfile/initfile é esse correto, E que ele foi removido certinho do disco), pra mim o que pode estar acontecendo aí é : a) vc ** NÃO APAGOU ** os archives que tinha em disco na área de archive (o que parece ser o caso, já que vc cita "..deletando todos os arquivos do servidor, SPFILE, PFILE, TEMPFILE, CONTROLFILE, UNDO, SYSTEM, TODOS OS DATAFILES e REDO LOGS" - NÃO VI referência a deleção aos archives -, e por bug/comportamento inadequado o RMAN tentou restaurar um desses archives e esse archive ainda referenciava uma sequência antiga ou b) vc ainda tem catalogado nesse RMAN archives muito antigos (ie, vc *** NÃO PEDIU *** um DELETE EXPIRED antes), e por BUG /comportamento inadequado o RMAN ainda está procurando por esses archives a e b são maaais ou menos parecidos com o que é notado no documento 235973.1 do metalink, grosso modo ou c) nada impede que por algum motivo (transação de longa duração, delayed apply, o que for) não tenha havido o checkpoint/aplicação no datafile o redo contido nesse archive antigo, aí a leitura consistente que o RMAN faz voltou, voltou e voltou até esse redo O grande detalhe é que, ** se ** o RMAN por causa de algo nesse estilo (transação longa, ou o que for) precisa de algum redo constante no archive X ** E ** consultando o catálogo ele verificar que X já foi backupeado, salvo instrução contrária mesmo que X ainda esteja em disco ele *** NÃO VAI BACKUPEAR X **, ok ? O conceito é, o BACKUP DATABASE PLUS ARCHIVELOG vai te backupear além dos datafiles os archives todos que sejam necessários *** MAS QUE *** ainda não foram backupeados anteriormente, sim sim sim Vc NÃO PODE pensar no jogo de backup criado pelo database plus archivelog como uma unidade autônoma, pois ele *** CONFIA *** que eventuais archives mais antigos eventualmente necessários que constam como catalogados VÃO SIM estar disponíveis, ok ?? ==> EU particularmente desconfio de a) ou b) , ie, o controlfile erradamente referenciando archives velhos que vc não removeu dele (o que configuraria SIM bug/comportamento inadequado), mas até pode ser que c) seja a sua razão... Já que vc está testando, eu diria para vc REFAZER teu teste com um outro banco de testes Atentando-se à questão de deletar o que estiver expired, ter apenas um backup registrado no controlfile (se controlfile é onde tá teu catálogo) ou então especificar DIRETAMENTE o backup que vc quer restaurar, etc, etc... E PLZ *** peça *** um RESTORE PREVIEW pra ver exatamente o que vai ser necessário pra restaurar ok ? Recomendo também que vc inclua na sua rotina antes do backup o seguinte : sql 'alter system switch logfile'; sql 'alter system archive log current'; []s Chiappa #yiv5119246121 #yiv5119246121 -- #yiv5119246121ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5119246121 #yiv5119246121ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5119246121 #yiv5119246121ygrp-mkp #yiv5119246121hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5119246121 #yiv5119246121ygrp-mkp #yiv5119246121ads {margin-bottom:10px;}#yiv5119246121 #yiv5119246121ygrp-mkp .yiv5119246121ad {padding:0 0;}#yiv5119246121 #yiv5119246121ygrp-mkp .yiv5119246121ad p {margin:0;}#yiv5119246121 #yiv5119246121ygrp-mkp .yiv5119246121ad a {color:#ff;text-decoration:none;}#yiv5119246121 #yiv5119246121ygrp-
Re: [oracle_br] Re: Baguncei o SYS....
Josir, Você pode, em uma cópia do banco, iniciar com "startup upgrade" e tentar compilar os objetos procedurais do SYS que estejam inválidos. Pode tentar fazer o rebuild de indices que estejam unusable, mas normalmente o banco não deixa fazer muita coisa em tabelas e indices do SYS. Não há garantia que isso funcione e pode até piorar a situação, por isso deve fazer isso em uma cópia do banco. Atc,Luis Freitas On Friday, February 17, 2017 5:02 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: "ORA-22303: type "SYS"."GET_DEP_DT1" not found" ==> ok, então não é só os objetos internamente usados pelo DBMS_OUTPUT que vc corrompeu ao fuçar no SYS, tem mais coisa corrupta aí OK, pode deixar de lado as opções não-programadas E sendo ainda maior do que pensávamos o estrago no schema SYS, fica mais improvável a chance de vc usar backup parcial (provavelmente com transport de tablespaces) fica mais distante, também - TESTE, mas parece ser baixa a chance SE esses dados tem Importância que justifique (um cínico diria que por ser administrado nessas condições que vc reporta eles não tem, mas enfim) , pelo jeito vc vai ter que apelar MESMO para modo programado (ie, abrindo cursor e ou gravando o que lê num banco remoto via dblink ou gravando em arquivo-texto via UTL_FILE)... Em outra pergunta vc questiona sobre a possibilidade de exportar apenas as estruturas de dados para depois os preencher programaticamente : se com as opções de não gerar dados o export (exp ou expdp) funcionar sem erros ok, pode ser feito assim Se não, vc vai ter que extrair os DDLs com DBMS_METADATA (** se ** isso estiver funcionando, já que ela Também depende de objetos do schema SYS) ou então fazer um CREATE TABLE nomedatabela as (select * from nomedatabela@dblink where 1=2); só pra trazer as colunas e não os dados []s Chiappa OBS : como eu tinha dito em outra Resposta, ** confirme ** que as tools de query que vc está testando (ie, TOAD, Navigator, Oracle SQL Developer, sql*plus) ** realmente ** não estão nem com TRACE, nem com SERVEROUTPUT nem com nada assim Ativo, em tese elas deveriam deixar vc Consultar as tabelas - se conseguir aí Provavelmente vc será capaz de usar os módulos/possibilidades de geração de dados em arquivo-texto de cada uma... #yiv5999548746 #yiv5999548746 -- #yiv5999548746ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv5999548746 #yiv5999548746ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv5999548746 #yiv5999548746ygrp-mkp #yiv5999548746hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv5999548746 #yiv5999548746ygrp-mkp #yiv5999548746ads {margin-bottom:10px;}#yiv5999548746 #yiv5999548746ygrp-mkp .yiv5999548746ad {padding:0 0;}#yiv5999548746 #yiv5999548746ygrp-mkp .yiv5999548746ad p {margin:0;}#yiv5999548746 #yiv5999548746ygrp-mkp .yiv5999548746ad a {color:#ff;text-decoration:none;}#yiv5999548746 #yiv5999548746ygrp-sponsor #yiv5999548746ygrp-lc {font-family:Arial;}#yiv5999548746 #yiv5999548746ygrp-sponsor #yiv5999548746ygrp-lc #yiv5999548746hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv5999548746 #yiv5999548746ygrp-sponsor #yiv5999548746ygrp-lc .yiv5999548746ad {margin-bottom:10px;padding:0 0;}#yiv5999548746 #yiv5999548746actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv5999548746 #yiv5999548746activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv5999548746 #yiv5999548746activity span {font-weight:700;}#yiv5999548746 #yiv5999548746activity span:first-child {text-transform:uppercase;}#yiv5999548746 #yiv5999548746activity span a {color:#5085b6;text-decoration:none;}#yiv5999548746 #yiv5999548746activity span span {color:#ff7900;}#yiv5999548746 #yiv5999548746activity span .yiv5999548746underline {text-decoration:underline;}#yiv5999548746 .yiv5999548746attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv5999548746 .yiv5999548746attach div a {text-decoration:none;}#yiv5999548746 .yiv5999548746attach img {border:none;padding-right:5px;}#yiv5999548746 .yiv5999548746attach label {display:block;margin-bottom:5px;}#yiv5999548746 .yiv5999548746attach label a {text-decoration:none;}#yiv5999548746 blockquote {margin:0 0 0 4px;}#yiv5999548746 .yiv5999548746bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv5999548746 .yiv5999548746bold a {text-decoration:none;}#yiv5999548746 dd.yiv5999548746last p a {font-family:Verdana;font-weight:700;}#yiv5999548746 dd.yiv5999548746last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv5999548746 dd.yiv5999548746last p span.yiv5999548746yshortcuts {margin-right:0;}#yiv5999548746 div.yiv5999548746attach-table div div a {text-decoration:none;}#yiv5999548746 div.yiv5999548746attach-table {width:400px;}#yiv5999548746 div.yiv5999548746file-title a, #yiv599954874
Re: [oracle_br] Re: Baguncei o SYS....
Josir, Se você tem os "archive logs" até o momento do problema, pode copia-los para o servidor onde está restaurando o banco e continuar aplicando os "archives" até chegar ao momento em rodou o script, para recuperar esses dados do usuário. Atc, Luis Freitas On Friday, February 17, 2017 2:08 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Já que vc tinha um backup ok, esse era o procedimento mesmo : restaurar em outro local/database (comprovando que o backup é restaurável/está íntegro), depois ** dropar ** esse database fuçado e então se preciso (ie, se os dados não podem ficar permanentemente no novo local/database) trazer os dados de volta , sim... Na verdade erros todos nós cometemos (eu mesmo se eu fosse relacionar alguns dos meus maiores neguim ia ficar assustado) : só não acho justo dizer que o banco deu pau Também não vou "brigar" com você, nem condenar : apenas registro que o fato é que seu caso serviu pra Comprovar para outros colegas o que a Oracle Recomenda, ie : TUDO que está no schema SYS é Interno, Particular do database, fique LONGE dele : "SYS and SYSTEM Schemas All Oracle databases include default administrative accounts. Administrative accounts are highly privileged and are intended only for DBAs authorized to perform tasks such as starting and stopping the database, managing memory and storage, creating and managing database users, and so on. The administrative account SYS is automatically created when a database is created. This account can perform all database administrative functions. The SYS schema stores the base tables and views for the data dictionary. These base tables and views are critical for the operation of Oracle Database. Tables in the SYS schema are manipulated only by the database and must never be modified by any user. " ==>. Já sobre o backup RMAN, ** Evidentemente ** eu estava recomendando que vc fizesse um backup físico que NÃO INCLUÍSSE os objetos do SYS, que estão corruptos : é CLARO que se vc restaurar um backup full o restauro vai ficar ** exatamente como estava ** na hora do backup, se alguma coisa estava corrupta continua corrupta em tese - NÃO TEM nenhuma ação "mágica" no restauro de um backup que sozinho saia corrigindo corrupções, ** em especial ** "corrupções" (entre aspas) causadas por ação inadequada do DBA - a partir do momento que o DBA, que tem TODO O PODER dentro de um banco Oracle, sai fazendo caquinha, não tem como o software se "defender" . Entre outras coisas é por isso que a posição de DBA demanda tanta experiência : ele tem *** TODAS *** as Chaves do reino na mão, se ele não seguir os protocolos adequados de Segurança, Performance e Gerenciamento do database, esse database vai estar em maus lençóis... Para isso Provavelmente vc faria um backup com TRANSPORTE de todas as tablespaces que não a SYS, criaria um novo banco vazio (que VAI ter a sua SYS completinha e íntegra) e depois restauraria / incorporaria esse backup, SEM incluir no backup nada do SYS... E eu disse ** avaliar ** porque , Além da questão de não podermos Avaliar se a funcionalidade tá quebrada ou não com essa "corrupção" do SYS, também não dá pra dizer se isso é viável no seu ambiente ou não - transport de tablespace TEM algumas restrições []s Chiappa OBS : eu não tinha comentado mas só lembrando pro resto do pessoal que ler a thread : no RDBMS Oracle nós temos *** DIVERSAS *** possibilidades para fazer o banco de dados voltar no tempo a um estado/datahora anterior - entre outras, o Flashback Database Assim, uma Possibilidade a se investigar num caso em que a "corrupção" foi causada por erro operacional (E portanto sabemos Exatamente quando/a que horas foi feita a inhaca) seria se fazer o banco de dados voltar pra um ponto no tempo imediatamente anterior Não tinha citado isso porque opções do tipo Não São habilitadas por default (vai se saber se vc a tem disponível ou não) E também porque vc já tinha indicado que o erro foi em manipulação do SYS , e já que SYS ** também ** é usado pra controlar ao menos em parte essas opções de 'volta no tempo' é indeterminado se isso funcionaria mas fica o Lembrete para outras ocasiões/necessidades #yiv4170035014 #yiv4170035014 -- #yiv4170035014ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv4170035014 #yiv4170035014ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv4170035014 #yiv4170035014ygrp-mkp #yiv4170035014hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv4170035014 #yiv4170035014ygrp-mkp #yiv4170035014ads {margin-bottom:10px;}#yiv4170035014 #yiv4170035014ygrp-mkp .yiv4170035014ad {padding:0 0;}#yiv4170035014 #yiv4170035014ygrp-mkp .yiv4170035014ad p {margin:0;}#yiv4170035014 #yiv4170035014ygrp-mkp .yiv4170035014ad a {color:#ff;text-decoration:none;}#yiv4170035014 #yiv4170035014ygrp-sponsor #yiv4170035014ygrp-lc {font-family:Arial;}#yiv4170035014 #yiv4
Re: [oracle_br] Re: Fechando e abrindo cursor
Chiappa, Earlier releases of Oracle Database default to manual undo management mode. Entendo que a frase se refere ao "Oracle Database" como um todo, e não só ao parâmetro. Mas sinceramente não me lembro mais como isso ficava ao rodar o DBCA da 10g, quanto mais da 9i... E não tenho um DBCA dessas versões velhas aqui para testar, Agora, tenho certeza que ambas suportam sim o Automatic Undo Management, e que houve uma mudança no comportamento do parametro na 11g, mas isso não costuma causar problemas, sendo apenas um detalhe para ver no upgrade. Atc,Luis Freitas On Thursday, February 9, 2017 6:32 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: A sua interpretação tá errada, talvez o Inglês não tenha deixado Claro pra vc : o que está sendo dito é que o *** PARÂMETRO ***, a CONFIG de UNDO_MANAGEMENT em versões anteriores Não era AUTO, mas em *** LUGAR NENHUM ** ele diz que vc está Proibido de colocar como AUTO, isso só não é o Padrão...Se vc olhar a Documentação Oficial do 9iR2 (online em https://docs.oracle.com/cd/B10501_01/server.920/a96521/undo.htm) vc vai ver Exatamente Isso , ie, que o parâmetro UNDO_MANAGEMENT ** TEM ** que ser ativado diretamente pelo dba (não é default) MAS existe SIM no 9iR2, sim sim sim Foi EXATAMENTE o que eu disse... Sobre o seu outro ponto, sim : eu ABSOLUTAMENTE NÃO CONCORDO, não ENTENDO que que um assunto total e completamente ** TÉCNICO ** como é a configuração e Otimização de um banco de dados esteja sujeito a "políticas" da Empresa (isso não faz o Menor Sentido) mas concordo que vc até pode achar alguma situação Esdrúxula do tipo A tua Obrigação como técnico é fazer a Exigência técnica, recomendar o BEST PRACTICE, mas se o cliente não pode/não que a implementar, problema dele... O que vc Não Pode imho é penalizar os outros TODOS clientes que obedeceram à sua Recomendação e estão portanto configurados para a melhor performance e vc não se aproveitar disso por causa de uma ou outra alma penada que não... No máximo vc deixe claro que se por qualquer motivo (alguma política esdrúxula, algum gerente idiota, o que for) o Cliente não usar a Configuração ótima exigida e recomendada aí vcs vão aplicar algum work-around mas SEM COMPROMISSO ALGUM É o que eu faria... []s Chiappa #yiv0594376926 #yiv0594376926 -- #yiv0594376926ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv0594376926 #yiv0594376926ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv0594376926 #yiv0594376926ygrp-mkp #yiv0594376926hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv0594376926 #yiv0594376926ygrp-mkp #yiv0594376926ads {margin-bottom:10px;}#yiv0594376926 #yiv0594376926ygrp-mkp .yiv0594376926ad {padding:0 0;}#yiv0594376926 #yiv0594376926ygrp-mkp .yiv0594376926ad p {margin:0;}#yiv0594376926 #yiv0594376926ygrp-mkp .yiv0594376926ad a {color:#ff;text-decoration:none;}#yiv0594376926 #yiv0594376926ygrp-sponsor #yiv0594376926ygrp-lc {font-family:Arial;}#yiv0594376926 #yiv0594376926ygrp-sponsor #yiv0594376926ygrp-lc #yiv0594376926hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv0594376926 #yiv0594376926ygrp-sponsor #yiv0594376926ygrp-lc .yiv0594376926ad {margin-bottom:10px;padding:0 0;}#yiv0594376926 #yiv0594376926actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv0594376926 #yiv0594376926activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv0594376926 #yiv0594376926activity span {font-weight:700;}#yiv0594376926 #yiv0594376926activity span:first-child {text-transform:uppercase;}#yiv0594376926 #yiv0594376926activity span a {color:#5085b6;text-decoration:none;}#yiv0594376926 #yiv0594376926activity span span {color:#ff7900;}#yiv0594376926 #yiv0594376926activity span .yiv0594376926underline {text-decoration:underline;}#yiv0594376926 .yiv0594376926attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv0594376926 .yiv0594376926attach div a {text-decoration:none;}#yiv0594376926 .yiv0594376926attach img {border:none;padding-right:5px;}#yiv0594376926 .yiv0594376926attach label {display:block;margin-bottom:5px;}#yiv0594376926 .yiv0594376926attach label a {text-decoration:none;}#yiv0594376926 blockquote {margin:0 0 0 4px;}#yiv0594376926 .yiv0594376926bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv0594376926 .yiv0594376926bold a {text-decoration:none;}#yiv0594376926 dd.yiv0594376926last p a {font-family:Verdana;font-weight:700;}#yiv0594376926 dd.yiv0594376926last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv0594376926 dd.yiv0594376926last p span.yiv0594376926yshortcuts {margin-right:0;}#yiv0594376926 div.yiv0594376926attach-table div div a {text-decoration:none;}#yiv0594376926 div.yiv0594376926attach-table {width:400px;}#yiv0594376926 div.yiv0594376926file-title a, #yiv0594376926 div.yiv0594376926
Re: [oracle_br] Re: Fechando e abrindo cursor
Roberto, Entendo que o que está dizendo ai é que na versão 9i e 10g o dbca não ativa o automatic undo por padrão, sendo necessário fazer isso após a criação do banco de dados. E ele está indicando que nesse manual de upgrade tem um procedimento para se fazer isso. E está alertando também que na 11g se não configurar os parâmetros o comportamento é diferente do que acontecia na 9i e 10g. Mas tá bem confuso o texto, tanto ai, como no tal manual de upgrade que ele indica, rs. Não é necessário fazer o upgrade, tanto a 9i como 10g tem o recurso de automatic undo management, e a maior parte dos DBAs que conheço que trabalhavam com essas versões já ligava isso logo após a criação do banco de dados, pois esse erro do "Snapshot too old" era bem chato, acontecia nas piores horas. O que aparece por ai são bancos que foram atualizados de versões antigas, como 8i, 8.0 ou mais velhas, e o DBA não habilitou o "automatic undo management" depois do upgrade, ou não migrou os tablespaces para "local extent management", ou não recriou a TEMP como "temporary tablespace", entre outras surpresas... Atc,Luis Freitas On Thursday, February 9, 2017 3:16 PM, "Roberto Warstat ro.wars...@gmail.com [oracle_br]" wrote: Retomando o assunto, sim, esse script é como se fosse a aplicação de um PATCH. O nosso problema é que dizemos para os clientes como eles devem proceder, mas eles fazem do jeito deles e quando algo dá errado, nós é que temos que dar um jeito. Estamos analisando de recomendar para os clientes que eles ativem o gerenciamento automático de UNDO - não podemos exigir, pois cada cliente tem a sua política e alguns são subordinados à matriz lá fora, sendo que eles não tem poder de decisão.Foi dito aqui que desde a versão 9i existe o gerencimento automático de UNDO, mas lendo o Guia de Administração do 11.1 (https://docs.oracle.com/cd/B28359_01/server.111/b28310/undo002.htm#ADMIN10180) consta o seguinte, Earlier releases of Oracle Database default to manual undo management mode. To change to automatic undo management, you must first create an undo tablespace and then change the UNDO_MANAGEMENT initialization parameter to AUTO. If your Oracle Database is release 9i or later and you want to change to automatic undo management, see Oracle Database Upgrade Guide for instructions. Pelo que entendo, se estiver em uma versão 9i ou 10g é necessário fazer o upgrade para o 11g.Seria isso mesmo ou a minha interpretação foi errada? []´sRoberto Em 7 de fevereiro de 2017 08:28, jlchia...@yahoo.com.br [oracle_br] escreveu: Sim, certamente se vc está fazendo a leitura com COMMIT parcial (o melhor seria COMMIT por *** TEMPO **, ie, COMMIT a cada X minutos cfrme https://asktom.oracle.com/pls/ asktom/f?p=100:11:0P11_ QUESTION_ID:4951966319022 mas enfim) sim, vc diminui Enormemente a chance de UNDO necessário para consistência do SELCT não estar mais presente, não faz sentido vc além disso fechar e reabrir Cursor EVIDENTEMENTE, como eu disse e a esta altura está mais que claro, vc está 'comprando' essa menor chance de ORA-1555 a um ALTO CUSTO para a performance (vide o mesmo link que indiquei) mas tá... Uma Recomendação que eu faria é que vc tenha um DBA *** experiente ** , que tenha usado até o 9i, te ajudando nessa tarefa E que imponha uma mínima Exigência de tamanho de UNDO pros seus clientes, E também de configuração : desde o 9i (9iR2 iirc) já existe ** sim ** a possibilidade de UNDO automático, de UNDO_RETENTION... Eu ** acho ** que da mesma maneira que outras softhouses exigem X Gbs de RAM , Y Gbs livres em disco, etc, pra usarem seus sistemas, vcs deveriam Pensar nisso também... []s Chiappa OBS : é importante FRISAR que vc só obtém ORA-1555 ** se ** há Outras Transações concorrendo/usando UNDO - pelo que entendi esse script é tipo aplicação de um PATCH (ie, algo EVENTUAL e não-frequente), então nada impede que vcs Exijam dos clientes que eles rodem isso no horário de MENOR concorrência (talvez à noite, tipo), de modo a ter AINDA MAIS UMA camada de segurança contra ORA-1555 #yiv6349233608 #yiv6349233608 -- #yiv6349233608ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv6349233608 #yiv6349233608ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv6349233608 #yiv6349233608ygrp-mkp #yiv6349233608hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv6349233608 #yiv6349233608ygrp-mkp #yiv6349233608ads {margin-bottom:10px;}#yiv6349233608 #yiv6349233608ygrp-mkp .yiv6349233608ad {padding:0 0;}#yiv6349233608 #yiv6349233608ygrp-mkp .yiv6349233608ad p {margin:0;}#yiv6349233608 #yiv6349233608ygrp-mkp .yiv6349233608ad a {color:#ff;text-decoration:none;}#yiv6349233608 #yiv6349233608ygrp-sponsor #yiv6349233608ygrp-lc {font-family:Arial;}#yiv6349233608 #yiv6349233608ygrp-sponsor #yiv6349233608ygrp-lc #yiv6349233608hd {margin:10px 0px;font-weight:700;font-size:78%;line-he
Re: [oracle_br] Re: Fechando e abrindo cursor
Roberto, Sem entrar no mérito se isso é adequado ou não, fechar e abrir o cursor novamente deve causar dois efeitos: - A "query" quando for executada novamente deve passar a enxergar registros "comitados" por outras sessões nesse intervalo de tempo. - Será gerado um novo "snapshot" da query, evitando um eventual erro de "Snapshot too old", o que faria sentido se o processo demorar muitas horas, houver muita alteração no banco durante este período, mesmo que em outras sessões, e a base tiver uma área de undo pequena que não comporte isso. Com o "automatic undo management" esse erro de "snapshot too old" se tornou uma coisa bem incomum, se for esse segundo caso talvez faça mais sentido remover isso do processo mesmo. Atc,Luis Freitas On Monday, February 6, 2017 10:05 AM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Oi : não, não existe o *** menor sentido *** em se fazer isso : até existiria algum sentindo em ** comitar ** a cada x registros - isso ** não é ** recomendado para a performance nem para a integridade de dados, cfrme https://asktom.oracle.com/pls/asktom/f?p=100:11:0P11_QUESTION_ID:4951966319022 entre outras muitas refs, mas de repente a pessoa tem que se virar com uma área de undo microscópica, ou coisa assim, então tem que liberar rapidamente, digamos, então até entendo embora Não Aprove Agora, fechar cursor a cada x registros nunca ouvi falar, não imagino DE JEITO NENHUM o que é que o programador quis alcançar com isso Pra mim mais do que não haver real necessidade NÃO VEJO é nenhum Sentido em se fazer isso, a não ser que haja alguma demanda doida por parte da ferramenta de desenvolvimento, tipo : o PL/SQL é executado por alguma tool/linguagem de desenvolvimento particular aonde os registros lidos/processados no cursor vão para um cache em memória, que é limitado, e onde a única maneira de 'liberar' a área consumida é fechar o cursor, digamos Coisa de louco mas às vezes a gente vê umas combinações bem estranhas por aí Agora : se esse script é executado por uma tool cliente Oracle (tipo sqlplus) , nesse caso então isso de fechar cursor a cada x registros só tá servindo pra te causar LENTIDÃO : por mais que (devido ao CACHE de cursores, que vc Certamente deve estar usando) ao reabrir um cursor recém-executado não haja reparsing e retrabalho, vc executar SEJA O QUE FOR sem real necessidade é trabalho Inútil , o que só pode causar lentidão e overhead - minúsculos mas tão lá TALVEZ o que o doidão que programou isso queria era processar só algumas linhas do cursor a cada vez, aí ao invés de usar ROWNUM na query para extrair só o número de linhas que queria ele se saiu com essa É levantar EXATAMENTE com o dono dos dados qual o objetivo da rotina PL/SQL em questão, se for processar todas as linhas JOGA FORA essa lógica louca, e se for processar X linhas a cada varredura do cursor em cada execução da rotina, substitua essa lógica doida por ROWNUM []s Chiappa OBS : óbvio, quando vc diz Manutenção entendo que está revendo o script PL/SQL objetivando entre outras coisas Confiabilidade e performance, então nem preciso dizer que as Boas Práticas de programação (ie, SQL direto sem LOOP de preferência e quando não der ARRAY PROCESSING provavelmente em BULK, COMMIT só no final lógico da transação COM uma área de undo apropriadamente tunada, atenção completa aos recursos built-in do SQL como MERGE para se fazer UPSERT ao invés de CURSOR LOOP, etc, etc) vão ser Fundamentais aí - espero que vc as conheça e as aplique da maneira Adequada #yiv4880834431 #yiv4880834431 -- #yiv4880834431ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv4880834431 #yiv4880834431ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv4880834431 #yiv4880834431ygrp-mkp #yiv4880834431hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv4880834431 #yiv4880834431ygrp-mkp #yiv4880834431ads {margin-bottom:10px;}#yiv4880834431 #yiv4880834431ygrp-mkp .yiv4880834431ad {padding:0 0;}#yiv4880834431 #yiv4880834431ygrp-mkp .yiv4880834431ad p {margin:0;}#yiv4880834431 #yiv4880834431ygrp-mkp .yiv4880834431ad a {color:#ff;text-decoration:none;}#yiv4880834431 #yiv4880834431ygrp-sponsor #yiv4880834431ygrp-lc {font-family:Arial;}#yiv4880834431 #yiv4880834431ygrp-sponsor #yiv4880834431ygrp-lc #yiv4880834431hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv4880834431 #yiv4880834431ygrp-sponsor #yiv4880834431ygrp-lc .yiv4880834431ad {margin-bottom:10px;padding:0 0;}#yiv4880834431 #yiv4880834431actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv4880834431 #yiv4880834431activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv4880834431 #yiv4880834431activity span {font-weight:700;}#yiv4880834431 #yiv4880834431activity span:first-child {text-transform:uppercase;}#yiv4880834431 #yiv4880834431act
Re: [oracle_br] Migração EMC VX 5300 -> EMC Xtreme IO - Sector Size recomendado?
Ola Eduardo, boa tarde, Olhei o whitepaper e algumas notas que ele referencia e o assunto parece complicado. O 4k não parece ser "melhor", mas ira evitar problemas de desalinhamento, pois o storage internamente vai usar setores de 4k de qualquer forma. Como o banco usa escrita de 8k por padrão, se não houver problemas no alinhamento dos blocos, não deve haver diferença de performance. Isso assumindo que você está usando o padrão de 8k no tamanho do bloco. Há uma exceção para o redo, para o qual o paper apresenta um workaround para forçar o uso de escrita em blocos de 4k, em vez do padrão de 512 bytes. Mesmo não usando esse workaround acho que só apareceria uma diferença perceptível em ambientes OLTP com muita concorrência e uma grande quantidade de "commits", algo como dezenas a centenas de "commits" por segundo. Você não passou nenhum detalhe do ambiente. Não falou que tipo de servidores está usando, se tem Linux, Windows ou UNIX. ASM ou filesystem. Como pretende fazer a migração entre os dois storages. Ou se o storage tem que atender versões antigas do banco de dados, como 10g, 9i ou 11g r1, que por consequência podem estar rodando em S/O mais antigo ou de-suportado, e portanto poderia ter problemas com os setores de 4k? Aviso que nunca trabalhei com storage "full flash", os ambientes em que trabalhei até agora utilizavam no máximo storage híbrido, com o gerenciamento das unidades flash de forma transparente, internamente ao storage. Achei estranha essa história de aplicar um "patch" para alterar o valor do "sector size", essa deve ser uma configuração do storage e não um "patch". Atc,Luis Freitas On Friday, November 25, 2016 4:25 PM, "Eduardo Dornelles eod.edua...@gmail.com [oracle_br]" wrote: Boa tarde pessoal. Gostaria de tirar uma dúvida em relação ao sector size recomendado pro Oracle. Vamos migrar nosso ambiente, de uma EMC VX 5300 pra uma EMC Xtreme IO. Eu sou Junior em Oracle, mas tenho parceiro especialista que é Platinum, essa empresa questiona se o sector size deve permanece em 512 bytes na storage nova, como já é na antiga, ou se queremos aplicar algum patch pra alterar o valor. O parceiro de banco espera que o fornecedor da storage indique o é mais performático conforme recomendação do fabricante. O parceiro autorizado da EMC recomenda usar 4K, que é uma das grandes vantagens do equipamento que é flash array, mas na própria documentação que esse parceiro passou como referência, parece que não é recomendado usar os 4k quando a storage for utilizada para bancos Oracle. Na falta de conhecimento mais avançado, gostaria da opinião dos senhores, e se tiveram algum case parecido. Segue link da documentação, atentar para a página 20: http://brazil.emc.com/collateral/white-papers/h13497-oracle-best-practices-xtremio-wp.pdf Desde já, muito obrigado pela atenção.Abraço. Atenciosamente, Eduardo Dornelles Departamento de Tecnologia da Informação Fone (51) 3284.1546 Rua dos Andradas, 846 Bairro Centro, Porto Alegre/RS Cep 90020-006 www.afpergs.com.br #yiv3838480468 #yiv3838480468 -- #yiv3838480468ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3838480468 #yiv3838480468ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3838480468 #yiv3838480468ygrp-mkp #yiv3838480468hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3838480468 #yiv3838480468ygrp-mkp #yiv3838480468ads {margin-bottom:10px;}#yiv3838480468 #yiv3838480468ygrp-mkp .yiv3838480468ad {padding:0 0;}#yiv3838480468 #yiv3838480468ygrp-mkp .yiv3838480468ad p {margin:0;}#yiv3838480468 #yiv3838480468ygrp-mkp .yiv3838480468ad a {color:#ff;text-decoration:none;}#yiv3838480468 #yiv3838480468ygrp-sponsor #yiv3838480468ygrp-lc {font-family:Arial;}#yiv3838480468 #yiv3838480468ygrp-sponsor #yiv3838480468ygrp-lc #yiv3838480468hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3838480468 #yiv3838480468ygrp-sponsor #yiv3838480468ygrp-lc .yiv3838480468ad {margin-bottom:10px;padding:0 0;}#yiv3838480468 #yiv3838480468actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv3838480468 #yiv3838480468activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv3838480468 #yiv3838480468activity span {font-weight:700;}#yiv3838480468 #yiv3838480468activity span:first-child {text-transform:uppercase;}#yiv3838480468 #yiv3838480468activity span a {color:#5085b6;text-decoration:none;}#yiv3838480468 #yiv3838480468activity span span {color:#ff7900;}#yiv3838480468 #yiv3838480468activity span .yiv3838480468underline {text-decoration:underline;}#yiv3838480468 .yiv3838480468attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv3838480468 .yiv3838480468attach div a {text-decoration:none;}#yiv3838480468 .yiv3838480468attach img {border:none;padding-right:5px;}#yiv3838480468 .yiv3838480468attach label {disp
Re: [oracle_br] Re: Dúvida sobre suporte nível 3
Carlos, Não se deve confundir o suporte Oracle vendido por parceiro Oracle, que está revendendo licenças e suporte da Oracle com serviços de valor adicionado, como migração de bases instalação e implementação de produtos, com o serviço que a Rimini oferece. Há diversas empresas parceiras que estão autorizadas pela Oracle a revender produtos e contratos de suporte Oracle no Brasil, inclusive auxiliando em obter descontos para revisão e upgrade de licenças. A Rimini ao contrário não está revendendo o suporte Oracle. Esta empresa já sofreu processos da Oracle devido ao download não autorizado de patches e documentos do suporte Oracle. A partir do momento que o contrato de suporte da Oracle é encerrado o cliente final não pode mais aplicar nenhum patch adicional, mesmo os que já existiam durante a vigência do contrato de suporte. http://www.zdnet.com/article/oracle-wins-more-damages-injunction-vs-rimini-street/ Atc,Luis Freitas On Tuesday, November 22, 2016 4:17 PM, "carlosaama...@yahoo.com.br [oracle_br]" wrote: Olá a todos, boa tarde ! Impressionante, 15 anos "sem atualização" ??? Violação 'Inocente'.. E a quantidade de empresas gigantes na carteira? Realmente, o mundo é dos espertos... Olha, tenha uma boa idéia e fique rico Não importando como, violação 'inocente' ?? Nossa... Na primeira vez que contratei o suporte Oracle, foi através de terceiro, incluia uma consultoria para migração Oracle, foram inúmeras dicas (Select´s, criação de usuários, criação de Roles, Instalação, etc..) ... Mesmo 'intermediando', não houve nenhum problema com a Oracle. Após uns 3 anos, o contrato foi renovado diretamente com a Oracle e acredito que ainda é assim até hoje... Bom, com a crise atual, a moda irá pegar, agora se esta 'violação inocente' cair, muita gente cai junto... Um abraço, Carlos Rimini Street Amplia Investimentos na América Latina para Atender à Crescente Demanda pelo Suporte Independente da Rimini Street | EXAME.com - Negócios, economia, tecnologia e carreira || |||| Rimini Street Amplia Investimentos na América L... Publicado por Este conteúdo de divulgação comercial é fornecido pela empresa Dino e não é de responsabilidade de EXAME.com C...|| | Visualizar em exame.abril.com.br |Visualização pelo Yahoo| || #yiv6272749897 #yiv6272749897 -- #yiv6272749897ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv6272749897 #yiv6272749897ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv6272749897 #yiv6272749897ygrp-mkp #yiv6272749897hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv6272749897 #yiv6272749897ygrp-mkp #yiv6272749897ads {margin-bottom:10px;}#yiv6272749897 #yiv6272749897ygrp-mkp .yiv6272749897ad {padding:0 0;}#yiv6272749897 #yiv6272749897ygrp-mkp .yiv6272749897ad p {margin:0;}#yiv6272749897 #yiv6272749897ygrp-mkp .yiv6272749897ad a {color:#ff;text-decoration:none;}#yiv6272749897 #yiv6272749897ygrp-sponsor #yiv6272749897ygrp-lc {font-family:Arial;}#yiv6272749897 #yiv6272749897ygrp-sponsor #yiv6272749897ygrp-lc #yiv6272749897hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv6272749897 #yiv6272749897ygrp-sponsor #yiv6272749897ygrp-lc .yiv6272749897ad {margin-bottom:10px;padding:0 0;}#yiv6272749897 #yiv6272749897actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv6272749897 #yiv6272749897activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv6272749897 #yiv6272749897activity span {font-weight:700;}#yiv6272749897 #yiv6272749897activity span:first-child {text-transform:uppercase;}#yiv6272749897 #yiv6272749897activity span a {color:#5085b6;text-decoration:none;}#yiv6272749897 #yiv6272749897activity span span {color:#ff7900;}#yiv6272749897 #yiv6272749897activity span .yiv6272749897underline {text-decoration:underline;}#yiv6272749897 .yiv6272749897attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv6272749897 .yiv6272749897attach div a {text-decoration:none;}#yiv6272749897 .yiv6272749897attach img {border:none;padding-right:5px;}#yiv6272749897 .yiv6272749897attach label {display:block;margin-bottom:5px;}#yiv6272749897 .yiv6272749897attach label a {text-decoration:none;}#yiv6272749897 blockquote {margin:0 0 0 4px;}#yiv6272749897 .yiv6272749897bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv6272749897 .yiv6272749897bold a {text-decoration:none;}#yiv6272749897 dd.yiv6272749897last p a {font-family:Verdana;font-weight:700;}#yiv6272749897 dd.yiv6272749897last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv6272749897 dd.yiv6272749897last p span.yiv6272749897yshortcuts {margin-right:0;}#yiv6272749897 div.yiv6272749897attach-table div div a {text-decoration:none;}#yiv6272749897 div.yiv6272749897attach-table
Re: [oracle_br] Re: Shutdown abort
Rafael, Quase sempre trabalho em produção com bases de sistemas críticos, que funcionam 24/7 e em que não são feitos backups "cold". A base está rodando há meses, as vezes mais de um ano sem ter sido feito um "shutdown". Então sempre executo o "shutdown immediate", para que seja feito o "rollback" das transações em andamento e complete o "checkpoint", antes de começar qualquer atividade que seja, que demandou a parada do banco. Se o processo "travar" ou demorar muito, faço o "shutdown abort", e depois subo o banco novamente, e um "shutdown immediate". Se houver algum problema sério, vou saber no inicio da manutenção, e já avisar ou acionar as pessoas necessárias de que há problemas e não é possível prosseguir, caso seja necessário restaurar um backup, fazer um "block recover", ou coisa parecida. Atc,Luis Freitas On Thursday, October 27, 2016 8:25 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Vamos por partes aí, colega : primeiro, no meu mundo, só existem *** DOIS *** tipos de backup, o backup HOT (quando o banco NÃO É parado e está em modo archive) e um backup COLD ** consistente **, normalmente aplicado em bancos NÂO_ARCHIVE, caso esse em que o banco deve ser parado e portanto eu PRECISO *** ter 100% de certeza que FOI FEITO checkpoint nos datafiles, que o log buffer ** FOI ** flusheado direitinho pro logfile No primeiro caso NÂO PRECISO usar shutdown de tipo nenhum e no segundo *** NÃO DEVO *** fazer com ABORT pois o ABORT ** não ** garante checkpoint, flush de log, consistência de SCN, não garante coisa NENHUMA Tá claro ??? Então para backup eu não faço NUNCA um shutdown abort se puder evitar,OU no máximo (se o IMMEDIATE tá hanged, algo que ás vezes acontece) aí sim mando como último recurso um abort, depois em seguida limpo segmentos de memória, área temp e mato eventuais processos zumbis, e EM SEGUIDA starto o banco para que ele faça a recuperação eventualmente necessária e só então o SHUTDOWN IMMEDIATE... A outra Outra situação não-emergencial aonde vc pode ter que fazer um SHUTDOWN de banco seria para ações administrativas (por exemplo, algum patch que exija isso, digamos) , e nessa situação eu TAMBÉM evito usar como padrão o ABORT e se for obrigado a usar ele eu subo, recupero e baixo normalmente : isso não só Garantir que o banco esteja íntegro antes do procedimento administrativo (sempre uma medida de segurança ok - pode me chamar de paranóico mas sou gato escaldado, não tenho medo de água fria á toa), ** MAS ** tambérm para evitar possíveis bugs Historicamente bugs e/ou situações imprevistas causados por shutdown abort NÂO SÃO RARAS, e não é só com STANMDBY não : por exemplo, http://laurentschneider.com/wordpress/2011/07/the-reasons-why-i-always-avoid-to-shutdown-abort.html mostra um (pela data deve ser do tempo do 10g ou começo do 11g) mas ** Não É Único **, nem de longe : googla por ORACLE SHUTDOWN ABORT que vc facilmente acha um punhadinho mais deles E aí vem o caso : se apareceu UMA vez que seja, o que impede de aparecer outra ? Hmmm, eu é que Não Vou Arriscar meu pescoço querido, não... Moi ?? Nem a pau, juvenal... []s Chiappa #yiv9171488999 #yiv9171488999 -- #yiv9171488999ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9171488999 #yiv9171488999ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9171488999 #yiv9171488999ygrp-mkp #yiv9171488999hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9171488999 #yiv9171488999ygrp-mkp #yiv9171488999ads {margin-bottom:10px;}#yiv9171488999 #yiv9171488999ygrp-mkp .yiv9171488999ad {padding:0 0;}#yiv9171488999 #yiv9171488999ygrp-mkp .yiv9171488999ad p {margin:0;}#yiv9171488999 #yiv9171488999ygrp-mkp .yiv9171488999ad a {color:#ff;text-decoration:none;}#yiv9171488999 #yiv9171488999ygrp-sponsor #yiv9171488999ygrp-lc {font-family:Arial;}#yiv9171488999 #yiv9171488999ygrp-sponsor #yiv9171488999ygrp-lc #yiv9171488999hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9171488999 #yiv9171488999ygrp-sponsor #yiv9171488999ygrp-lc .yiv9171488999ad {margin-bottom:10px;padding:0 0;}#yiv9171488999 #yiv9171488999actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9171488999 #yiv9171488999activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9171488999 #yiv9171488999activity span {font-weight:700;}#yiv9171488999 #yiv9171488999activity span:first-child {text-transform:uppercase;}#yiv9171488999 #yiv9171488999activity span a {color:#5085b6;text-decoration:none;}#yiv9171488999 #yiv9171488999activity span span {color:#ff7900;}#yiv9171488999 #yiv9171488999activity span .yiv9171488999underline {text-decoration:underline;}#yiv9171488999 .yiv9171488999attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv9171488999 .yiv9171488999attach div a {text-decoration:non
Re: [oracle_br] Re: utl_file I/O
Ricardo, Você não disse qual objeto está sendo bloqueado? A tabela, a package ou o arquivo gerado? Quando você le os CLOB's, está armazenado eles em uma variável global da package? Os objetos LOB quando lidos de tabelas, são um localizador para os dados na tabela, e isso pode causar um bloqueio na linha correspondente da tabela, se for usado o "FOR UPDATE", ou se for feita alguma alteração no CLOB dentro da package. Se você colocar um exemplo da package, ficaria mais fácil tentar entender o que está acontecendo. Mas você pode tentar mover quaisquer variáveis que armazenam o clob para o escopo local da procedure/function, se forem globais, e colocar um commit no fim da procedure caso haja alguma alteração no CLOB, ou mesmo um "SELECT FOR UPDATE". Atc,Luis #yiv9948625987 #yiv9948625987 -- #yiv9948625987ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv9948625987 #yiv9948625987ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv9948625987 #yiv9948625987ygrp-mkp #yiv9948625987hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv9948625987 #yiv9948625987ygrp-mkp #yiv9948625987ads {margin-bottom:10px;}#yiv9948625987 #yiv9948625987ygrp-mkp .yiv9948625987ad {padding:0 0;}#yiv9948625987 #yiv9948625987ygrp-mkp .yiv9948625987ad p {margin:0;}#yiv9948625987 #yiv9948625987ygrp-mkp .yiv9948625987ad a {color:#ff;text-decoration:none;}#yiv9948625987 #yiv9948625987ygrp-sponsor #yiv9948625987ygrp-lc {font-family:Arial;}#yiv9948625987 #yiv9948625987ygrp-sponsor #yiv9948625987ygrp-lc #yiv9948625987hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv9948625987 #yiv9948625987ygrp-sponsor #yiv9948625987ygrp-lc .yiv9948625987ad {margin-bottom:10px;padding:0 0;}#yiv9948625987 #yiv9948625987actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv9948625987 #yiv9948625987activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv9948625987 #yiv9948625987activity span {font-weight:700;}#yiv9948625987 #yiv9948625987activity span:first-child {text-transform:uppercase;}#yiv9948625987 #yiv9948625987activity span a {color:#5085b6;text-decoration:none;}#yiv9948625987 #yiv9948625987activity span span {color:#ff7900;}#yiv9948625987 #yiv9948625987activity span .yiv9948625987underline {text-decoration:underline;}#yiv9948625987 .yiv9948625987attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv9948625987 .yiv9948625987attach div a {text-decoration:none;}#yiv9948625987 .yiv9948625987attach img {border:none;padding-right:5px;}#yiv9948625987 .yiv9948625987attach label {display:block;margin-bottom:5px;}#yiv9948625987 .yiv9948625987attach label a {text-decoration:none;}#yiv9948625987 blockquote {margin:0 0 0 4px;}#yiv9948625987 .yiv9948625987bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv9948625987 .yiv9948625987bold a {text-decoration:none;}#yiv9948625987 dd.yiv9948625987last p a {font-family:Verdana;font-weight:700;}#yiv9948625987 dd.yiv9948625987last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv9948625987 dd.yiv9948625987last p span.yiv9948625987yshortcuts {margin-right:0;}#yiv9948625987 div.yiv9948625987attach-table div div a {text-decoration:none;}#yiv9948625987 div.yiv9948625987attach-table {width:400px;}#yiv9948625987 div.yiv9948625987file-title a, #yiv9948625987 div.yiv9948625987file-title a:active, #yiv9948625987 div.yiv9948625987file-title a:hover, #yiv9948625987 div.yiv9948625987file-title a:visited {text-decoration:none;}#yiv9948625987 div.yiv9948625987photo-title a, #yiv9948625987 div.yiv9948625987photo-title a:active, #yiv9948625987 div.yiv9948625987photo-title a:hover, #yiv9948625987 div.yiv9948625987photo-title a:visited {text-decoration:none;}#yiv9948625987 div#yiv9948625987ygrp-mlmsg #yiv9948625987ygrp-msg p a span.yiv9948625987yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv9948625987 .yiv9948625987green {color:#628c2a;}#yiv9948625987 .yiv9948625987MsoNormal {margin:0 0 0 0;}#yiv9948625987 o {font-size:0;}#yiv9948625987 #yiv9948625987photos div {float:left;width:72px;}#yiv9948625987 #yiv9948625987photos div div {border:1px solid #66;min-height:62px;overflow:hidden;width:62px;}#yiv9948625987 #yiv9948625987photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv9948625987 #yiv9948625987reco-category {font-size:77%;}#yiv9948625987 #yiv9948625987reco-desc {font-size:77%;}#yiv9948625987 .yiv9948625987replbq {margin:4px;}#yiv9948625987 #yiv9948625987ygrp-actbar div a:first-child {margin-right:2px;padding-right:5px;}#yiv9948625987 #yiv9948625987ygrp-mlmsg {font-size:13px;font-family:Arial, helvetica, clean, sans-serif;}#yiv9948625987 #yiv9948625987ygrp-mlmsg table {font-size:inherit;font:100%;}#yiv9948625987 #yiv9948625987ygrp-mlmsg select, #yiv99486259
Re: [oracle_br] DBSNMP obrigatorio?
Dadim, Acho que você está confundindo DBSNMP com SYSMAN. No EM 12c (ou 11g...), o esquema SYSMAN fica no repositorio do EM, mas o DBSNMP é parte do catalogo dos respectivos bancos de dados. Então se você tem dois EM 12c, o que acontece é que você tem dois esquemas SYSMAN, um em cada base repositorio do EM, mas nos "targets", tem só um DBSNMP mesmo. É comum ter essa situação quando se usa o EM com o Exadata, pois o servidor do "Platinum" tem um EM, mas que é exclusivo para o suporte da Oracle, então o cliente tem que instalar um segundo EM separado se quiser usar. Atc,Luis Freitas On Thursday, February 4, 2016 8:56 AM, "dadim...@yahoo.com.br [oracle_br]" wrote: Suponhamos que minha empresa tem um contrato com outra, que usa o EM12c para monitorar 1 determinado target (produção, super-crítico, 24x7, etc).Agora suponhamos que minha empresa comprou o EM12c e quer monitorar o mesmo target (inclusive banco de dados 24x7, supercrítico).É possível monitorar um banco com outro usuário, que não o DBSNMP? Ou o EM12c é amarrado neste usuário ?Obrigado pelas respostas! #yiv7328513939 #yiv7328513939 -- #yiv7328513939ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7328513939 #yiv7328513939ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7328513939 #yiv7328513939ygrp-mkp #yiv7328513939hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7328513939 #yiv7328513939ygrp-mkp #yiv7328513939ads {margin-bottom:10px;}#yiv7328513939 #yiv7328513939ygrp-mkp .yiv7328513939ad {padding:0 0;}#yiv7328513939 #yiv7328513939ygrp-mkp .yiv7328513939ad p {margin:0;}#yiv7328513939 #yiv7328513939ygrp-mkp .yiv7328513939ad a {color:#ff;text-decoration:none;}#yiv7328513939 #yiv7328513939ygrp-sponsor #yiv7328513939ygrp-lc {font-family:Arial;}#yiv7328513939 #yiv7328513939ygrp-sponsor #yiv7328513939ygrp-lc #yiv7328513939hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv7328513939 #yiv7328513939ygrp-sponsor #yiv7328513939ygrp-lc .yiv7328513939ad {margin-bottom:10px;padding:0 0;}#yiv7328513939 #yiv7328513939actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv7328513939 #yiv7328513939activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv7328513939 #yiv7328513939activity span {font-weight:700;}#yiv7328513939 #yiv7328513939activity span:first-child {text-transform:uppercase;}#yiv7328513939 #yiv7328513939activity span a {color:#5085b6;text-decoration:none;}#yiv7328513939 #yiv7328513939activity span span {color:#ff7900;}#yiv7328513939 #yiv7328513939activity span .yiv7328513939underline {text-decoration:underline;}#yiv7328513939 .yiv7328513939attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv7328513939 .yiv7328513939attach div a {text-decoration:none;}#yiv7328513939 .yiv7328513939attach img {border:none;padding-right:5px;}#yiv7328513939 .yiv7328513939attach label {display:block;margin-bottom:5px;}#yiv7328513939 .yiv7328513939attach label a {text-decoration:none;}#yiv7328513939 blockquote {margin:0 0 0 4px;}#yiv7328513939 .yiv7328513939bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv7328513939 .yiv7328513939bold a {text-decoration:none;}#yiv7328513939 dd.yiv7328513939last p a {font-family:Verdana;font-weight:700;}#yiv7328513939 dd.yiv7328513939last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv7328513939 dd.yiv7328513939last p span.yiv7328513939yshortcuts {margin-right:0;}#yiv7328513939 div.yiv7328513939attach-table div div a {text-decoration:none;}#yiv7328513939 div.yiv7328513939attach-table {width:400px;}#yiv7328513939 div.yiv7328513939file-title a, #yiv7328513939 div.yiv7328513939file-title a:active, #yiv7328513939 div.yiv7328513939file-title a:hover, #yiv7328513939 div.yiv7328513939file-title a:visited {text-decoration:none;}#yiv7328513939 div.yiv7328513939photo-title a, #yiv7328513939 div.yiv7328513939photo-title a:active, #yiv7328513939 div.yiv7328513939photo-title a:hover, #yiv7328513939 div.yiv7328513939photo-title a:visited {text-decoration:none;}#yiv7328513939 div#yiv7328513939ygrp-mlmsg #yiv7328513939ygrp-msg p a span.yiv7328513939yshortcuts {font-family:Verdana;font-size:10px;font-weight:normal;}#yiv7328513939 .yiv7328513939green {color:#628c2a;}#yiv7328513939 .yiv7328513939MsoNormal {margin:0 0 0 0;}#yiv7328513939 o {font-size:0;}#yiv7328513939 #yiv7328513939photos div {float:left;width:72px;}#yiv7328513939 #yiv7328513939photos div div {border:1px solid #66;height:62px;overflow:hidden;width:62px;}#yiv7328513939 #yiv7328513939photos div label {color:#66;font-size:10px;overflow:hidden;text-align:center;white-space:nowrap;width:64px;}#yiv7328513939 #yiv7328513939reco-category {font-size:77%;}#yiv7328513939 #yiv7328513939reco-desc {font-size:77%;}#yiv7328513939 .yiv7328513939replbq {margin:4px;}#yiv7328513939 #yiv7328513939ygrp-
Re: [oracle_br] Re: Delete de Milhões de linhas
Alessandro, Por que você não está usando um "FORALL" no loop? Da forma como está, a operação de delete ainda vai deletar uma linha por vez. Tente algo como o bloco abaixo. Não testei então pode ter erros de sintaxe. Parece a mesma coisa, mas para o banco de dados é muito diferente. Se você remove uma linha de cada vez, ele irá atualizar o bloco e todos os indices para aquela linha, e de novo para a próxima linha, asssim por diante. Mas se roda o comando em "bulk" ele deve atualizar e fazer a manutenção dos indices em uma operação unica. Depois você experimenta aumentar esse 1 para ver se tem ganho. Outra coisa, convém desabilitar constraints de foreign key, se houverem. O ideal seria desativar os indices (alter index ... unusable) e fazer um rebuild deles depois, mas como o sistema está no ar, pode não ser viável. declare cursor c1 is SELECT ROWID FROM OWNER.tableA where cod_xxx in(select cod_xxx from OWNER.tableB aa join OWNER.tableC ar on(aa.cod_xxx = ar.cod_xxx) where trunc(COLUNM_DATA) < (select sysdate - TO_YMINTERVAL('01-00') from dual)); type rows_del is table of rowid index by binary_integer; dell rows_del; row_commit pls_integer := 1;rowcount pls_integer := 0; begin open c1;loop fetch c1 BULK COLLECT INTO dell limit row_commit; exit when c1%NOTFOUND; forall indx IN 1 .. dell.COUNT loop delete from OWNER.tableA where rowid = dell(indx); commit;end loop; close c1; end;/" Atc,Luis On Thursday, July 16, 2015 6:26 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Nope, Angelo : ao alterar a cláusula de logging para NOLOGGING a ** única ** Operação de DML capaz de não gerar redo log é o INSERT /*+ APPEND */ (cláusula de logging da tabela só serve pra issoessa só serve para isso, right ?), e pelo que entendi isso o Alexssandro já tentou e não atendeu... Alexssandro, seguinte : primeiro respondendo a sua pergunta original, o ponto é que o PL/SQL (e o SQL, também, em grande medida) foi programado para trabalhar em LOTES, ie : lê uma porção de linhas para a memória, processa-as, depois lê para a MESMA porção de memória antes usada o próximo punhado de linhas, processa, assim por diante É POR ISSO, INCLUSIVE, que vc pode fazer SELECT * FROM tabeladeumbilhãodelinhas SEM receber um erro de falta de memória mesmo num servidor modesto, okdoc ??? https://asktom.oracle.com/pls/apex/f?p=100:11:0P11_QUESTION_ID:5918938803188 detalha isso, muito embora seja um conceito Básico, certo ?? Muito bem : por causa dessa premissa, o PL/SQL tem Limites na memória que pode alocar, ele é programado pensando em LIMITAR o uso de RAM, até também para que o RDBMS em si tenha mais RAM disponível, ele é Prioridade - a parte maior da memória RAM é sempre assim reservada para o RDBMS fazer seus muitos e múltiplos processos E poder criar seus caches... A sua resposta então é CLARA, se vc colocar vários milhares como o LIMIT numa cláusula de BULK COLLECT, o array resultante vai ser tão grande que MUITO PROVAVELMENTE vai estourar os limites do PL/SQL, independente de quanta RAM livre vc tem... Respondido ?? Aí seguem meus comments sobre a sua situação : em PRIMEIRO LUGAR, absolutamente Não Tem Como vc fazer uma manipulação de largo volume de dados, como é essa que vc pretende, SEM IMPACTO NO AMBIENTE, ok ?? Se, como vc citou para outro colega, essa é a sua meta, DESISTA Já, não vai rolar... O que Pode ser feito é escolher um caminho de menos impacto, mas que VAI haver Impacto, isso é Líquido e certo Adicionalmente, vc quer Máxima performance/eficiência na manipulação : sorry, mas a única maneira de vc obter isso é direcionando TODOS, ou QUASE TODOS (ou ao menos a Esmagadora maioria dos recursos do RDBMS) para essa manipulação, sim ??? Não tem mágica, se vc quer que uma tarefa longa demore menos, dê MAIS RECURSOS do ambiente para essa tarefa... Isso se faz PRINCIPALMENTE evitando Concorrência, para que os recursos fiquem livres/disponíveis pra tarefa longa, sim ??? Portanto, se vc quer ter Máxima Eficiência/Performance, vc VAI TER QUE TER ** ALGUM ** DOWNTIME para os usuários, impedindo-os de gastar recursos do banco para que vc os possa usar pra tarefa longa, sim sim ??? Vc até pode agendar essa tarefa longa de manipulação de dados pra um fim de semana ou uma noite, para tentar interferir o menos possível, mas que VAI ter alguma intereferência/indisponibilidade (num horário pré-agendado, que seja) isso vai... ==> Com esses esclarecimentos acima, aí podemos discutir métodos Primeiro Ponto, vc REALMENTE TESTOU a chance de se fazer a Remoção dos dados sem DML, sem delete, ie : INSERT /*+ APPEND */ INTO tabeladecópia (SELECT * FROM tabelaoriginal WHERE filtrodosdadosaanter); COMMIT; TRUNCATE TABLE tabelaoriginal; INSERT /*+ APPEND */ INTO tabelaoriginal (SELECT * FROM tabeladecopia); ??? De modo geral, essa seria a opção mais Eficiente... Só mesmo CASO ela seja inviável e/ou não d
Re: [oracle_br] Re: Replicação usando EMC Recoverpoint
Evandro, Trabalhei algumas vezes com essa solução, e realmente será um crash recover, com alguma perda de dados. Se a replicação for sincrona em teoria você deve conseguir recuperar todas as transações comitadas, contanto que não haja erros durante o crash recover. Como recebeu esse erro entendo que de alguma forma a replicação do disco de datafile foi quebrada depois da replicação de um controlfile. Os controlfiles sempre tem o SCN mais atual. Você colocou todos os discos do banco de dados em um mesmo grupo de replicação? (Consistency Group) Atc,Luis On Thursday, June 25, 2015 11:54 AM, "Evandro Giachetto evandrogiache...@gmail.com [oracle_br]" wrote: Obrigado mais uma vez Chiappa por sua explicação. Eu tenho uma nova chance de colocar isso pra funcionar e tentarei fazer da forma correta agora :) Vou gerar uma nova cópia do controlfile e ver se consigo restaurar o banco a partir desse novo controlfile. Mesmo tendo que acessar o servidor antigo neste momento. Eu pensei em configurar um backup do controlfile de tempos em tempos direto no FRA (ou usar o snapshot controlfile [???] não sei se é possível restaurar com o snapshot). Esse backup sempre vai ter um scn mais antigo e talvez eu possa abrir o banco aplicando os archives que já estão no FRA. De qualquer forma. A cópia entre discos é feita com os discos no servidor secundário ainda desmontados. Ou seja, eles são "desapresentados" do SO e reapresentados quando a transferência está completa a partir do console do EMC. Então, ninguém está tocando nos discos eqto a transferência é feita. Eu achei intrigante ele não abrir, já que imaginei que, com a cópia dos arquivos, mesmo que sem o último checkpoing aplicado o banco abriria numa boa. Evandro Giachetto Oracle DBA evandrogiache...@gmail.com Em 25 de junho de 2015 11:45, jlchia...@yahoo.com.br [oracle_br] escreveu: Opa, blz ? Então, eu não trabalhei com essa daí ainda, mas farei a Observação geral e genérica que faço ** SEMPRE ** aqui no Fórum quando se fala de replicação por storage (veja as muitas msgs mais antigas sobre isso) que vai ser usada com banco-origem ONLINE/ATIVO : a primeira coisa que vc TEM que receber (do Suporte, da Documentação, enfim, de alguma fonte CONFIÁVEL sobre a solução de replicação de blocos de disco) é que ela ** EFETIVAMENTE BLOQUEIA ** o acesso aos blocos TODOS nquanto a cópia/transferência está rolando, ok ?? O que esse pessoalzinho muitas vezes esquece é o RDBMS Oracle ** nunca ** grava imediatamente a informação alterada em disco de forma imediata (SEMPRE é em background, e de forma "preguiçosa", e que pode iniciar a Qualquer Momento em Qualquer Bloco do disco) E ** tranquilamente ** (ainda que NÃO estejam havendo Transações!!) alguns arquivos (especialmente CONTROLFILEs!) podem estar sendo gravados... Em cima disso, imagine que a solução de replicação leu o bloco x, e por azar nesse instante em que o está replicando o RDBMS cisma de querer gravar e grava coisa nesse bloco... Ou ainda, imagine que (ainda durante a cópia de blocos) o RDBMS atualizou o SCN num datafile MAs não atualizou ainda no controlfile, ou vice-versa : SCN inapropriado é o Mínimo que se pode esperar se vc quiser subir uma cópia nesses condições REPITO, Alguém Tem que te Garantir que esse tipo de coisa não ocorre, que a Solução efetivamente BLOQUEIA acesso ao Storage no instante em que a Replicação está rolando... SE vc realmente quer ter failover instantâneo, a solução de replicação do STorage TEM que te garantir esse tipo de Integridade... Aí chegamos no ponto da CONFIGURAÇÃO eventualmente necessária : por exemplo, já vo Soluções que (justamente por não bloquear/garantir que ninguém tá atualizando algo enquanto rola a transferência )exigiam que vc tivesse no "servidor-réplica" um BACKUP do Controlfile numa posição mais antiga e daí, quando esse servidor for "assumir" como Produção, vc TINHA que antes pedir o restore desse controlfile mais antigo e APLICAR os archives daí em diante, o que Logicamente não era instantâneo... []s Chiappa #yiv7587700257 #yiv7587700257 -- #yiv7587700257ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv7587700257 #yiv7587700257ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv7587700257 #yiv7587700257ygrp-mkp #yiv7587700257hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv7587700257 #yiv7587700257ygrp-mkp #yiv7587700257ads {margin-bottom:10px;}#yiv7587700257 #yiv7587700257ygrp-mkp .yiv7587700257ad {padding:0 0;}#yiv7587700257 #yiv7587700257ygrp-mkp .yiv7587700257ad p {margin:0;}#yiv7587700257 #yiv7587700257ygrp-mkp .yiv7587700257ad a {color:#ff;text-decoration:none;}#yiv7587700257 #yiv7587700257ygrp-sponsor #yiv7587700257ygrp-lc {font-family:Arial;}#yiv7587700257 #yiv7587700257ygrp-sponsor #yiv7587700257ygrp-lc #yiv7587700257hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#
Re: [oracle_br] Re: Forms 9 X Forms 11 (URGENTE)
Alessandro, Verifique o parametro FORMS_MMAP, se estiver configurado com 0 no ambiente Forms 11, tente remover o parâmetro ou setar para 1. Esse parâmetro desativa o acesso aos arquivos do Forms usando mapeamento de memória, o que pode causar essa mudança de comportamento que você está vendo. No windows quando o arquivo é mapeado em memória, não deve ser possível sobrescrever. Onde configura esse parâmetro na versão 11g, isso não sei :-). Antigamente era no default.env. Atc,Luis On Friday, May 22, 2015 12:46 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Então : a não ser que vc esteja num ambiente especial (exemplo, vc está Customizando os Forms de um ambiente Oracle EBS), afaik o Forms em si (seja 9i, 10g ou 11g) ** não tem ** um método de controle de acesso seja para os fontes (arquivos .FMB) que ficam na sua máquina desenv seja para os "executáveis", os .FMX que ficam no webserver... Assim, se no ambiente com Forms 9i o arquivo .FMX que está Aberto pelo webserver vc não consegue fazer o upload da sua máquina mas no ambiente Forms 11g vc consegue, COM CERTEZA isso é alguma diferença devido ao modo de lock/acesso/controle de arquivos do Sistema Operacional e/ou da versão de webserver usada em cada ambiente... O Forms em si, repito, afaik não toca APITO NENHUM em controle/lock/acessos de arquivos por parte do Forms Runtime - no máximo vc pode especificar CACHEs de arquivos .FMX no webserver e coisas assim, mas afaik não tem como vc indicar que vc Exige que os arquivos .FMX em uso pelo webserevr sejam lockados, não...Neste momento eu estou sem acesso a um ambiente Forms 11g em Windows, então não tenho como testar isso, mas até onde sei a situação é MESMO essa que descrevi acima, yes ?? Sendo isso mesmo, confirmado que realmente não existindo nenhum "ajuste", nenhuma "propriedade" do Forms e/ou do webserver que "bloqueie" um .FMX em uso, imagino que vc vá precisar de alguma camada de software adicional, nem que seja customizada por vc, no sentido de vc programar uma trigger When-new_Form-Instance, talvez... Vamos aguardar as respostas de resto do pessoal me confirmando ou contradizendo e sugerindo / reportando o que usam no ambiente deles... []s Chiappa #yiv8740306332 #yiv8740306332 -- #yiv8740306332ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv8740306332 #yiv8740306332ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv8740306332 #yiv8740306332ygrp-mkp #yiv8740306332hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv8740306332 #yiv8740306332ygrp-mkp #yiv8740306332ads {margin-bottom:10px;}#yiv8740306332 #yiv8740306332ygrp-mkp .yiv8740306332ad {padding:0 0;}#yiv8740306332 #yiv8740306332ygrp-mkp .yiv8740306332ad p {margin:0;}#yiv8740306332 #yiv8740306332ygrp-mkp .yiv8740306332ad a {color:#ff;text-decoration:none;}#yiv8740306332 #yiv8740306332ygrp-sponsor #yiv8740306332ygrp-lc {font-family:Arial;}#yiv8740306332 #yiv8740306332ygrp-sponsor #yiv8740306332ygrp-lc #yiv8740306332hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv8740306332 #yiv8740306332ygrp-sponsor #yiv8740306332ygrp-lc .yiv8740306332ad {margin-bottom:10px;padding:0 0;}#yiv8740306332 #yiv8740306332actions {font-family:Verdana;font-size:11px;padding:10px 0;}#yiv8740306332 #yiv8740306332activity {background-color:#e0ecee;float:left;font-family:Verdana;font-size:10px;padding:10px;}#yiv8740306332 #yiv8740306332activity span {font-weight:700;}#yiv8740306332 #yiv8740306332activity span:first-child {text-transform:uppercase;}#yiv8740306332 #yiv8740306332activity span a {color:#5085b6;text-decoration:none;}#yiv8740306332 #yiv8740306332activity span span {color:#ff7900;}#yiv8740306332 #yiv8740306332activity span .yiv8740306332underline {text-decoration:underline;}#yiv8740306332 .yiv8740306332attach {clear:both;display:table;font-family:Arial;font-size:12px;padding:10px 0;width:400px;}#yiv8740306332 .yiv8740306332attach div a {text-decoration:none;}#yiv8740306332 .yiv8740306332attach img {border:none;padding-right:5px;}#yiv8740306332 .yiv8740306332attach label {display:block;margin-bottom:5px;}#yiv8740306332 .yiv8740306332attach label a {text-decoration:none;}#yiv8740306332 blockquote {margin:0 0 0 4px;}#yiv8740306332 .yiv8740306332bold {font-family:Arial;font-size:13px;font-weight:700;}#yiv8740306332 .yiv8740306332bold a {text-decoration:none;}#yiv8740306332 dd.yiv8740306332last p a {font-family:Verdana;font-weight:700;}#yiv8740306332 dd.yiv8740306332last p span {margin-right:10px;font-family:Verdana;font-weight:700;}#yiv8740306332 dd.yiv8740306332last p span.yiv8740306332yshortcuts {margin-right:0;}#yiv8740306332 div.yiv8740306332attach-table div div a {text-decoration:none;}#yiv8740306332 div.yiv8740306332attach-table {width:400px;}#yiv8740306332 div.yiv8740306332file-title a, #yiv8740306332 div.yiv8740306332file-title a:active, #yiv8740306332 div.yiv8740306332fi
Re: [oracle_br] Re: Create Index - Longo tempo
Juliano, Alem desses pontos que o Chiappa levantou, veja se a coluna que é referenciada nessa FK, tem um índice. A coluna que é referenciada, que normalmente deve estar em outra tabela, não a coluna em que está sendo criada a FK. Se não tiver, é grande a chance que isso esteja causando problemas. Você pode confirmar isso tirando a criação de FK do comando e rodando ela em separado, depois da criação do índice. Caso haja índice verifique seu estado na DBA_INDEXES. Se não tiver, você precisa ver com o fornecedor pois fica inviável criar essa FK sem índice, pois isso causa locks na tabela referenciada inteira a cada alteração na tabela "filha". O LONG é ruim, mas não deveria ser ruim a ponto de causar essa demora de alguns anos. LONG também não é suportado mais na 11g, e fora algumas aplicações baseadas em Oracle Forms, Powerbuilder e algumas outras ferramentas de desenvolvimento em versões antigas não se usa mais esse tipo de dado. Atc,Luis Freitas On Friday, March 13, 2015 12:10 PM, "jlchia...@yahoo.com.br [oracle_br]" wrote: Tudo jóia ? Vamos começar pela sua dúvida, que eu entendo ser Conceitual : para vc poder entender o que acontece no RDBMS Oracle, saiba que fisicamente os dados ficam armazenados em blocos nos discos, esses blocos são agrupados em pedaços contínuos (chamados de EXTENTs) , e o conjunto de extents é logicamente agrupado no SEGMENTO - podemos ter vários tipos de segmentos, como segmentos temporários, segmentos de índices, segmentos de dados, segmentos de LOBs, etc... Quando o RDBMS precisa ler os dados todos da tabela toda (para criar um índice, ou para atender a uma consulta aonde a filtragem não é feita por uma coluna indexada, ou coisas assim), o que ele faz é consultar as views e tabelas internas (visíveis para nós através das views de sistema como DBA_EXTENTs, DBA_OBJECTS, DBA_SEGMENTS, etc) para descobrir qual o segmento físico relacionado com a tabela desejada, quais extents compõem esse segmento, e vai pedir pro SO ler esses extents um a um, fazendo I/Os multibloco de acordo com o tamanho de cada extent E, se config do database e o Sistema Operacional e o hardware permitirem, essas leituras serão feitas em modo asíncrono e em modo direto, bypassando os caches do sistema operacional, que são inúteis nesse caso pois sabemos que queremos ler Toda a informação Isso posto, a sua resposta : não é "toda a tabela" que é lida, mas sim "todo o segmento" que corresponde a ela : no caso de LONGs e LONG RAW, isso certamente deve estar, sim, como vc supunha, influenciando DIRETAMENTE o teu cenário, pois (vide a Documentação Oracle) nós NÃO TEMOS um segmento que contém apenas os dados long/long raw, eles OBRIGATORIAMENTE vão estar "misturados" no segmento de dados junto com o resto das colunas... Isso é uma característica FÍSICA e INESCAPÁVEL, e foi por isso (entre muitas outras issues) que há muitos anos a Oracle DESUPORTOU os LONGs e introduziu os LOBs (CLOB e BLOB), os quais (eles sim) são fisicamente armazenados em LOB SEGMENTs, *** SEPARADOS *** do DATA SEGMENT de uma tabela : com isso não tem o que fazer, já que Qualquer bloco de qualquer extent do data segment pode ou não conter dados das outras coluna OU do LONG RAW, é verdade que o RDBMS vai ter que ler TODOS eles, o data segment INTEIRINHO Isso não vai ser eficiente, já que com certeza muitos desses blocos vão conter só informações de LONGs (tipicamente esses caras consomem mais de um bloco para cada registro) mas como, por Definição de arquitetura, LONGs ficam misturados com dados escalares, vc não tem como evitar esse I/O potencialmente inútil Veja que vc TEM comandos/opções para CONVERTER os seus LONGs em LOBs, mas antes de sequer pensar em fazer isso, vc NECESSARIAMENTE tem que obter Aprovação do fornecedor da Aplicação, que vai dizer se a aplicação dele Funciona/Aceita LOBs ou não... Isso te leva DIRETAMENTE a necessidade de atuar com o fornecedor, aí por mais que "... o modelo e a aplicação são de responsabilidade de outra empresa/fornecedor..." , com a qual nunca teve contato, vc VAI TER que levantar isso , alguém aí deve ter esse contato... Obtido isso, vc VAI TER QUE : a. notificar a Empresa que os LONGs NÂO SÃO MAIS Suportados/Recomendados pela Oracle - consulta o metalink que vc acha farto material a respeito b. por causa do acima, vc precisa de Confirmação se a Aplicação suporta LOBs, se não suportar essa alteração deverá ser Demandada ==> Nós sabemos muito bem que em 99,999% dos casos depois que vendeu a Aplicação a Empresa fornecedora não está nem aí para os Clientes dela, são Enormes as chances do teu contato com eles ser totalmente infrutífero, mas faz parte da tua Obrigação enquanto responsável pelo banco de dados mostrar (INCLUSIVE pros teus Superiores) que vc CONHECE o problema, que ele é EXTERNO ao database E QUE demandou uma solução do culpado Se vc não obtiver a Solução, ao menos vc tem como Demonst
Re: [oracle_br] Duvida sobre licenças Oracle
Dalton, A Oracle cobra 25% do valor da licença para cada ano de suporte. Para reativar essa licença eles devem cobrar o preço de 5 anos de suporte (2010 a 2015), então a principio não valeria a pena, ficando mais barato comprar uma licença nova. Agora, se for parte de uma negociação de venda, pode ser que você consiga um desconto grande nesta reativação, já vi descontos de até 50% ou mais no preço de lista para compra de licença, principalmente no fechamento do ano fiscal da Oracle, que acontece em setembro, visto que a empresa é americana, e os vendedores tem que fechar cotas. Já vi também a Oracle dar praticamente de graça a reativação, mas isso em clientes grandes, as vezes como parte de negociação de licença "unlimited". Há interesse da Oracle em reativar para voltar a cobrar o suporte anual. Para testes você pode também comprar licenças por usuário, que poderiam ficar bem mais baratas que a licença por CPU, então pode ser que não valha a pena mesmo reativar, mesmo que saia de graça. Tem que incluir nessa conta o custo que você vai ter para pagar com o suporte depois do primeiro ano. Em ambas as opções, renovado o suporte você pode usar qualquer versão do Oracle, acredito que mesmo as que já não são mais suportadas. O pessoal da lista pode me corrigir ai se estiver enganado. Alem do Oracle Personal Edition, você pode ver também se o Oracle XE (express) atende a sua necessidade, atualmente ele tem limitação de 11Gb de dados e 1Gb de tamanho na SGA, e tem restrição em funcionalidades e versões em que está disponível, mas não custa nada. Atc,Luis On Monday, March 16, 2015 1:42 PM, "angelo angelolis...@gmail.com [oracle_br]" wrote: Dalton, Se o intuito for fazer testes, estudar, não precisa de licença... é livre, desde q nao entre em produção. A não ser que vc queira a ultima versão, atualizada, com todos os patches, etc.. ai sim, precisaria licenciar... e licenciar só pra poder programar e testar, concordo que fica caro Alias, lembrei de uma coisa agora, vc poderia comprar uma licença do Oracle Personal Edition e usa-la pra desenvolvimento, testes.. e atualizar, veja: http://docs.oracle.com/cd/B28359_01/license.111/b28287/editions.htm#DBLIC110 Oracle Database Personal Edition Oracle Database Personal Edition supports single-user development and deployment environments that require full compatibility with Oracle Database Standard Edition One, Oracle Database Standard Edition, and Oracle Database Enterprise Edition. Personal Edition includes all of the components that are included with Enterprise Edition, as well as all of the options that are available with Enterprise Edition, with the exception of the Oracle Real Application Clusters option, which cannot be used with Personal Edition. Personal Edition is available on Windows platforms only. The Management Packs are not included in Personal Edition. 2015-03-16 12:55 GMT-03:00 Dalton Oliveira dalton_olive...@hotmail.com [oracle_br] : Angelo, Queremos utilizar essa licença apenas para testes. Atenciosamente,Dalton Pereira Oliveira To: oracle_br@yahoogrupos.com.br From: oracle_br@yahoogrupos.com.br Date: Mon, 16 Mar 2015 11:40:37 -0300 Subject: Re: [oracle_br] Duvida sobre licenças Oracle A pergunta que eu faria em cima da sua pergunta seria: Quanto custa a sua empresa ficar parada em caso extremo de uma falha no banco de dados e não poder obter suporte ou fazer alguma atualizacao rapidamente por conta de suporte não pago ? 2015-03-16 9:46 GMT-03:00 Dalton Oliveira dalton_olive...@hotmail.com [oracle_br] : Bom dia PessoALL!!! A empresa que trabalho tem uma licença Oracle SEO perpetua que foi adquirida em 2007, mas o suporte só foi pago até 2009. Obs.: Só fiquei sabendo dessa licença após o processo de revisão de licenças feito pela Oracle. Duvidas: 1 - Vale a pena reativar o suporte dessa licença SEO?2 - Qual a releases posso utilizar? 9i, 10g, 11g, 12c? Obrigado, Dalton #yiv3658589407 #yiv3658589407 -- #yiv3658589407ygrp-mkp {border:1px solid #d8d8d8;font-family:Arial;margin:10px 0;padding:0 10px;}#yiv3658589407 #yiv3658589407ygrp-mkp hr {border:1px solid #d8d8d8;}#yiv3658589407 #yiv3658589407ygrp-mkp #yiv3658589407hd {color:#628c2a;font-size:85%;font-weight:700;line-height:122%;margin:10px 0;}#yiv3658589407 #yiv3658589407ygrp-mkp #yiv3658589407ads {margin-bottom:10px;}#yiv3658589407 #yiv3658589407ygrp-mkp .yiv3658589407ad {padding:0 0;}#yiv3658589407 #yiv3658589407ygrp-mkp .yiv3658589407ad p {margin:0;}#yiv3658589407 #yiv3658589407ygrp-mkp .yiv3658589407ad a {color:#ff;text-decoration:none;}#yiv3658589407 #yiv3658589407ygrp-sponsor #yiv3658589407ygrp-lc {font-family:Arial;}#yiv3658589407 #yiv3658589407ygrp-sponsor #yiv3658589407ygrp-lc #yiv3658589407hd {margin:10px 0px;font-weight:700;font-size:78%;line-height:122%;}#yiv3658589407 #yiv3658589407ygrp-sponsor #yiv3658589407ygrp-lc .yiv3658589407ad {margin-b