{"id":31,"date":"2016-06-11T00:46:00","date_gmt":"2016-06-11T00:46:00","guid":{"rendered":"http:\/\/168.138.249.13\/?p=31"},"modified":"2020-08-06T03:31:45","modified_gmt":"2020-08-06T03:31:45","slug":"verificando-a-consistencia-de-um-arquivo-de-backup-do-rman","status":"publish","type":"post","link":"https:\/\/adrianotanaka.com.br\/index.php\/2016\/06\/11\/verificando-a-consistencia-de-um-arquivo-de-backup-do-rman\/","title":{"rendered":"Verificando a consist\u00eancia de um arquivo de backup do RMAN"},"content":{"rendered":"\n<p>Hoje me deparei com um problema grav\u00edssimo, um backup do Oracle n\u00e3o estava restaurando e o seguinte erro estava sendo exibido:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>channel c1: ORA-19870: error while restoring backup piece \/media\/bkp\/INC0\n\nORA-19599: block number 793607 is corrupt in backup piece \/media\/bkp\/INC0\n<\/code><\/pre>\n\n\n\n<p>Para verificar se o backup est\u00e1 ou n\u00e3o integro, podemos usar dois utilit\u00e1rios, um chamado dbv(DBVERIFY) que foi feito pela Oracle e pode ser usado para verificar arquivos de backup e tamb\u00e9m datafiles e o outro um bem difundido que \u00e9 o md5sum.<\/p>\n\n\n\n<p>O dbv possui os seguintes par\u00e2metros:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Parametro<\/th><th>Descri\u00e7\u00e3o<\/th><\/tr><\/thead><tbody><tr><td><strong>FILE<\/strong><\/td><td>O nome do arquivo a ser verificado<\/td><\/tr><tr><td><strong>START<\/strong><\/td><td>O bloco Oracle onde a verifica\u00e7\u00e3o deve come\u00e7ar<\/td><\/tr><tr><td><strong>END<\/strong><\/td><td>O bloco Oracle onde a verifica\u00e7\u00e3o deve terminar<\/td><\/tr><tr><td><strong>BLOCKSIZE<\/strong><\/td><td>Deve ser especificado apenas se o erro DBV-00103 for apresentado<\/td><\/tr><tr><td><strong>LOGFILE<\/strong><\/td><td>Arquivo de log da opera\u00e7\u00e3o<\/td><\/tr><tr><td><strong>FEEDBACK<\/strong><\/td><td>Mostra com um . (ponto) o progresso<\/td><\/tr><tr><td><strong>HELP<\/strong><\/td><td>Exibe a ajuda<\/td><\/tr><tr><td><strong>PARFILE<\/strong><\/td><td>Um arquivo que cont\u00e9m par\u00e2metros de configura\u00e7\u00e3o<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Em uma verifica\u00e7\u00e3o simples, vamos usar apenas o seguinte comando:<\/p>\n\n\n\n<p><code>dbv file=INC1_xxxx_<\/code><\/p>\n\n\n\n<p>A sa\u00edda do comando \u00e9 bem simples:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DBVERIFY - Verification complete\n\nTotal Pages Examined         : 20946\nTotal Pages Processed (Data) : 0\nTotal Pages Failing   (Data) : 0\nTotal Pages Processed (Index): 0\nTotal Pages Failing   (Index): 0\nTotal Pages Processed (Other): 1\nTotal Pages Processed (Seg)  : 0\nTotal Pages Failing   (Seg)  : 0\nTotal Pages Empty            : 0\nTotal Pages Marked Corrupt   : 20945\nTotal Pages Influx           : 0\nTotal Pages Encrypted        : 0\nHighest block SCN            : 2078742100 (2121.2078742100)\n<\/code><\/pre>\n\n\n\n<p>Como pode ser visto, o arquivo verificado possu\u00ed 20946 \u201cpages\u201d e dessas 20945 est\u00e3o corrompidas. Nesse caso o arquivo pode ter sido corrompido durante a copia e como verificamos isso?<\/p>\n\n\n\n<h1 class=\"wp-block-heading\" id=\"usando-o-md5sum\">Usando o md5sum<\/h1>\n\n\n\n<p>O md5sum \u00e9 um utilit\u00e1rio presente em distribui\u00e7\u00f5es linux diversas e tem o mesmo comportamento, seja ela CentOs, Oracle Linux, Ubuntu, etc.<\/p>\n\n\n\n<p>Devemos primeiro verificar o md5 gerado no ambiente de produ\u00e7\u00e3o:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;oracle@producao]$ md5sum INC1_xxxxx\n84123cf312343d8159adcc21912357cc  INC1_xxxxx\n<\/code><\/pre>\n\n\n\n<p>E depois o gerado na maquina de teste:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;oracle@teste]$ md5sum INC1_xxxxx\n92124jf312344v8159adcc33912147xx  INC1_xxxxx\n<\/code><\/pre>\n\n\n\n<p>Como podemos ver, o arquivo esta com md5 diferentes, ou seja, apesar do tamanho e nome ser o mesmo, o arquivo \u00e9 diferente.<\/p>\n\n\n\n<p>Nesses caso, recomendo que uma nova c\u00f3pia seja feita e os md5 validados antes de emitir o restore.<\/p>\n\n\n\n<p>Fontes:&nbsp;<a href=\"https:\/\/docs.oracle.com\/cd\/B10501_01\/server.920\/a96652\/ch13.htm\">Oracle DBV<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Hoje me deparei com um problema grav\u00edssimo, um backup do Oracle n\u00e3o estava restaurando e o seguinte erro estava sendo exibido: Para verificar se o backup est\u00e1 ou n\u00e3o integro, podemos usar dois utilit\u00e1rios, um chamado dbv(DBVERIFY) que foi feito pela Oracle e pode ser usado para verificar arquivos de backup e tamb\u00e9m datafiles e [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"material-hide-sections":[],"footnotes":""},"categories":[6,1],"tags":[5,4,3],"class_list":["post-31","post","type-post","status-publish","format-standard","hentry","category-oracle","category-uncategorized","tag-banco-de-dados","tag-database","tag-oracle"],"_links":{"self":[{"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/posts\/31","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/comments?post=31"}],"version-history":[{"count":1,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/posts\/31\/revisions"}],"predecessor-version":[{"id":32,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/posts\/31\/revisions\/32"}],"wp:attachment":[{"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/media?parent=31"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/categories?post=31"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/adrianotanaka.com.br\/index.php\/wp-json\/wp\/v2\/tags?post=31"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}