<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	
	xmlns:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	>

<channel>
	<title>Monitoring &#8211; Blog DBA Dutra</title>
	<atom:link href="https://www.dbadutra.com/tag/monitoring/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbadutra.com</link>
	<description></description>
	<lastBuildDate>Mon, 17 Jun 2019 13:23:36 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.6.2</generator>
<site xmlns="com-wordpress:feed-additions:1">170494511</site>	<item>
		<title>Monitoring Data Guard operation / Monitorando a operação do Data Guard</title>
		<link>https://www.dbadutra.com/2019/06/monitoring-data-guard-operation/</link>
					<comments>https://www.dbadutra.com/2019/06/monitoring-data-guard-operation/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Sun, 09 Jun 2019 10:40:41 +0000</pubDate>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Data Guard]]></category>
		<category><![CDATA[Monitoring]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=5586</guid>

					<description><![CDATA[Como vimos no último artigo sobre a instalação do DataGuard no Oracle 19C, veremos agora como monitorar o Data Guard. &#8211; Este script deve ser executado no modo de espera de um site em espera física do Data Guard set echo off set feedback off column timecol new_value tstamp column spool_extension new_value suffix select to_char(sysdate,’Mondd_hhmi’) [&#8230;]]]></description>
										<content:encoded><![CDATA[
<figure class="wp-block-image is-resized"><img decoding="async" src="https://www.dbadutra.com/wp-content/uploads/2018/01/brazil_pt-150x150.jpg" alt="" class="wp-image-5129" width="47" height="47"/></figure>



<p><strong>Como vimos no último artigo sobre a instalação do
DataGuard no Oracle 19C, veremos agora como monitorar o Data Guard.</strong></p>



<p><strong>&#8211; Este script deve ser executado no modo de espera de
um site em espera física do Data Guard</strong></p>



<pre class="wp-block-preformatted">set echo off<br>
set feedback off<br>
column timecol new_value tstamp<br>
column spool_extension new_value suffix<br>
select to_char(sysdate,’Mondd_hhmi’) timecol from sys.dual;<br>
column output new_value dbname<br>
select value || ‘_’ output from v$parameter where name = ‘db_name’;</pre>



<p><strong>— Saída dos resultados para este arquivo</strong></p>



<pre class="wp-block-preformatted">spool dg_Standby_diag_&amp;&amp;dbname&amp;&amp;tstamp<br>
set lines 132<br>
set pagesize 500<br>
set numformat 999999999999999<br>
set trim on<br>
set trims on</pre>



<p><strong>— Obter a data atual</strong></p>



<pre class="wp-block-preformatted">set feedback on<br>
select systimestamp from dual;</pre>



<pre class="wp-block-preformatted">— Standby Site Details<br>
set heading off<br>
set feedback off<br>
select ‘Standby Site Details’ from dual;<br>
select ‘********************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">col db_unique_name format a15<br>
col flashb_on format a10</pre>



<pre class="wp-block-preformatted">select
DB_UNIQUE_NAME,DATABASE_ROLE DB_ROLE,FORCE_LOGGING F_LOG,FLASHBACK_ON
FLASHB_ON,LOG_MODE,OPEN_MODE,<br>
GUARD_STATUS GUARD,PROTECTION_MODE PROT_MODE<br>
from v$database;</pre>



<p><strong>— SCN atual &#8211; este valor nos sites principal e em
espera, em que o tempo real se aplica, deve ser praticamente o mesmo</strong></p>



<pre class="wp-block-preformatted">select
DB_UNIQUE_NAME,SWITCHOVER_STATUS,CURRENT_SCN from v$database;</pre>



<p><strong>— Informações sobre
encarnação</strong></p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Incarnation Destination Configuration’ from dual;<br>
select ‘*************************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">select INCARNATION# INC#,
RESETLOGS_CHANGE# RS_CHANGE#, RESETLOGS_TIME, PRIOR_RESETLOGS_CHANGE#
PRIOR_RS_CHANGE#, STATUS,FLASHBACK_DATABASE_ALLOWED FB_OK from
v$database_incarnation;</pre>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Archive Destination Configuration’ from dual;<br>
select ‘*********************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<p><strong><br>
— Atual Archive Destination</strong></p>



<pre class="wp-block-preformatted">column host_name format a30
tru<br>
column version format a10 tru<br>
select INSTANCE_NAME,HOST_NAME,VERSION,ARCHIVER from v$instance;</pre>



<pre class="wp-block-preformatted">column destination format a35
wrap<br>
column process format a7<br>
column archiver format a8<br>
column dest_id format 99999999</pre>



<pre class="wp-block-preformatted">select
DEST_ID,DESTINATION,STATUS,TARGET,ARCHIVER,PROCESS,REGISTER,TRANSMIT_MODE<br>
from v$archive_dest<br>
where DESTINATION IS NOT NULL;</pre>



<pre class="wp-block-preformatted">column name format a22<br>
column value format a100<br>
select NAME,VALUE from v$parameter where NAME like ‘log_archive_dest%’ and
upper(VALUE) like ‘SERVICE%’;</pre>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Archive Destination Errors’ from dual;<br>
select ‘**************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">column error format a55 tru<br>
select DEST_ID,STATUS,ERROR from v$archive_dest<br>
where DESTINATION IS NOT NULL;</pre>



<pre class="wp-block-preformatted">column message format a80<br>
select MESSAGE, TIMESTAMP<br>
from v$dataguard_status<br>
where SEVERITY in (‘Error’,’Fatal’)<br>
order by TIMESTAMP;</pre>



<p><strong>Configuração do Redo Log</strong></p>



<p><strong>&#8211; O tamanho dos redo logs do Standby e deve
corresponder exatamente ao tamanho dos redo logs on-line</strong></p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Redo Log Configuration’ from dual;<br>
select ‘*********************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">select GROUP#
STANDBY_GROUP#,THREAD#,SEQUENCE#,BYTES,USED,ARCHIVED,STATUS from v$standby_log
order by GROUP#,THREAD#;</pre>



<pre class="wp-block-preformatted">select GROUP#
ONLINE_GROUP#,THREAD#,SEQUENCE#,BYTES,ARCHIVED,STATUS from v$log order by
GROUP#,THREAD#;</pre>



<p><strong>— Parâmetros do Data Guard.</strong></p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Related Parameters’ from dual;<br>
select ‘*****************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">column name format a30<br>
column value format a100<br>
select NAME,VALUE from v$parameter where NAME IN (‘db_unique_name’,’cluster_database’,’dg_broker_start’,’dg_broker_config_file1′,’dg_broker_config_file2′,’fal_client’,’fal_server’,’log_archive_config’,’log_archive_trace’,’log_archive_max_processes’,’archive_lag_target’,’remote_login_password_file’,’redo_transport_user’)
order by name;</pre>



<p><strong>— Managed Recovery
State</strong></p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Apply Status’ from dual;<br>
select ‘***********************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">select systimestamp from
dual;</pre>



<pre class="wp-block-preformatted">column client_pid format a10<br>
select
PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>
from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</pre>



<pre class="wp-block-preformatted">host sleep 10</pre>



<pre class="wp-block-preformatted">select systimestamp from
dual;</pre>



<pre class="wp-block-preformatted">select
PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>
from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</pre>



<pre class="wp-block-preformatted">host sleep 10</pre>



<pre class="wp-block-preformatted">select systimestamp from
dual;</pre>



<pre class="wp-block-preformatted">select
PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>
from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</pre>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Apply Lag’ from dual;<br>
select ‘********************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">column name format a12<br>
column lag_time format a20<br>
column datum_time format a20<br>
column time_computed format a20<br>
SELECT NAME, VALUE LAG_TIME, DATUM_TIME, TIME_COMPUTED<br>
from V$DATAGUARD_STATS where name like ‘apply lag’;</pre>



<p><strong>— Se houver um atraso, remova o comentário para o
select abaixo</strong></p>



<p>— SELECT * FROM
V$STANDBY_EVENT_HISTOGRAM WHERE NAME = ‘apply lag’ AND COUNT &gt; 0;<strong></strong></p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Gap Problems’ from dual;<br>
select ‘***********************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<p>select * from v$archive_gap;</p>



<pre class="wp-block-preformatted">set heading off<br>
set feedback off<br>
select ‘Data Guard Errors in the Last Hour’ from dual;<br>
select ‘**********************************’ from dual;<br>
set heading on<br>
set feedback on</pre>



<pre class="wp-block-preformatted">select
TIMESTAMP,SEVERITY,ERROR_CODE,MESSAGE from v$dataguard_status where timestamp
&gt; systimestamp-1/24;<br>
spool off</pre>



<p></p>



<p></p>



<p></p>



<figure class="wp-block-image is-resized"><img decoding="async" src="https://www.dbadutra.com/wp-content/uploads/2018/01/us_flag-150x150.jpeg" alt="" class="wp-image-5130" width="70" height="70"/></figure>



<h5 class="wp-block-heading">As we saw in the last article on installing DataGuard in Oracle 19C, we will now see how to monitor Data Guard.</h5>



<p></p>



<h4 class="wp-block-heading">— This script is to be run on the Standby of a Data Guard Physical Standby Site</h4>



<p><code>set echo off<br>set feedback off<br>column timecol new_value tstamp<br>column spool_extension new_value suffix<br>select to_char(sysdate,’Mondd_hhmi’) timecol from sys.dual;<br>column output new_value dbname<br>select value || ‘_’ output from v$parameter where name = ‘db_name’;</code></p>



<h4 class="wp-block-heading">— Output the results to this file</h4>



<p><code>spool dg_Standby_diag_&amp;&amp;dbname&amp;&amp;tstamp<br>set lines 132<br>set pagesize 500<br>set numformat 999999999999999<br>set trim on<br>set trims on</code></p>



<h4 class="wp-block-heading">— Get the current Date</h4>



<p><code>set feedback on<br>select systimestamp from dual;</code></p>



<p><code>— Standby Site Details<br>set heading off<br>set feedback off<br>select ‘Standby Site Details’ from dual;<br>select ‘********************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>col db_unique_name format a15<br>col flashb_on format a10</code></p>



<p><code>select DB_UNIQUE_NAME,DATABASE_ROLE DB_ROLE,FORCE_LOGGING F_LOG,FLASHBACK_ON FLASHB_ON,LOG_MODE,OPEN_MODE,<br>GUARD_STATUS GUARD,PROTECTION_MODE PROT_MODE<br>from v$database;</code></p>



<h4 class="wp-block-heading">— Current SCN – this value on the primary and standby sites where real time apply is in place should be nearly the same</h4>



<p><code>select DB_UNIQUE_NAME,SWITCHOVER_STATUS,CURRENT_SCN from v$database;</code></p>



<h4 class="wp-block-heading">— Incarnation Information</h4>



<p><code>set heading off<br>set feedback off<br>select ‘Incarnation Destination Configuration’ from dual;<br>select ‘*************************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>select INCARNATION# INC#, RESETLOGS_CHANGE# RS_CHANGE#, RESETLOGS_TIME, PRIOR_RESETLOGS_CHANGE# PRIOR_RS_CHANGE#, STATUS,FLASHBACK_DATABASE_ALLOWED FB_OK from v$database_incarnation;</code></p>



<p><code>set heading off<br>set feedback off<br>select ‘Archive Destination Configuration’ from dual;<br>select ‘*********************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<h4 class="wp-block-heading"><br>— Current Archive Locations</h4>



<p><code>column host_name format a30 tru<br>column version format a10 tru<br>select INSTANCE_NAME,HOST_NAME,VERSION,ARCHIVER from v$instance;</code></p>



<p><code>column destination format a35 wrap<br>column process format a7<br>column archiver format a8<br>column dest_id format 99999999</code></p>



<p><code>select DEST_ID,DESTINATION,STATUS,TARGET,ARCHIVER,PROCESS,REGISTER,TRANSMIT_MODE<br>from v$archive_dest<br>where DESTINATION IS NOT NULL;</code></p>



<p><code>column name format a22<br>column value format a100<br>select NAME,VALUE from v$parameter where NAME like ‘log_archive_dest%’ and upper(VALUE) like ‘SERVICE%’;</code></p>



<p><code>set heading off<br>set feedback off<br>select ‘Archive Destination Errors’ from dual;<br>select ‘**************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>column error format a55 tru<br>select DEST_ID,STATUS,ERROR from v$archive_dest<br>where DESTINATION IS NOT NULL;</code></p>



<p><code>column message format a80<br>select MESSAGE, TIMESTAMP<br>from v$dataguard_status<br>where SEVERITY in (‘Error’,’Fatal’)<br>order by TIMESTAMP;</code></p>



<h4 class="wp-block-heading">— Redo Log configuration<br>— The size of the standby redo logs must match exactly the size on the online redo logs</h4>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Redo Log Configuration’ from dual;<br>select ‘*********************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>select GROUP# STANDBY_GROUP#,THREAD#,SEQUENCE#,BYTES,USED,ARCHIVED,STATUS from v$standby_log order by GROUP#,THREAD#;</code></p>



<p><code>select GROUP# ONLINE_GROUP#,THREAD#,SEQUENCE#,BYTES,ARCHIVED,STATUS from v$log order by GROUP#,THREAD#;</code></p>



<h4 class="wp-block-heading">— Data Guard Parameters<br></h4>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Related Parameters’ from dual;<br>select ‘*****************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>column name format a30<br>column value format a100<br>select NAME,VALUE from v$parameter where NAME IN (‘db_unique_name’,’cluster_database’,’dg_broker_start’,’dg_broker_config_file1′,’dg_broker_config_file2′,’fal_client’,’fal_server’,’log_archive_config’,’log_archive_trace’,’log_archive_max_processes’,’archive_lag_target’,’remote_login_password_file’,’redo_transport_user’) order by name;</code></p>



<h4 class="wp-block-heading">— Managed Recovery State</h4>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Apply Status’ from dual;<br>select ‘***********************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>select systimestamp from dual;</code></p>



<p><code>column client_pid format a10<br>select PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</code></p>



<p><code>host sleep 10</code></p>



<p><code>select systimestamp from dual;</code></p>



<p><code>select PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</code></p>



<p><code>host sleep 10</code></p>



<p><code>select systimestamp from dual;</code></p>



<p><code>select PROCESS,STATUS,CLIENT_PROCESS,CLIENT_PID,THREAD#,SEQUENCE#,BLOCK#,ACTIVE_AGENTS,KNOWN_AGENTS<br>from v$managed_standby order by CLIENT_PROCESS,THREAD#,SEQUENCE#;</code></p>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Apply Lag’ from dual;<br>select ‘********************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>column name format a12<br>column lag_time format a20<br>column datum_time format a20<br>column time_computed format a20<br>SELECT NAME, VALUE LAG_TIME, DATUM_TIME, TIME_COMPUTED<br>from V$DATAGUARD_STATS where name like ‘apply lag’;</code></p>



<h4 class="wp-block-heading">— If there is a lag remove the comment for the select below</h4>



<p><code>— SELECT * FROM V$STANDBY_EVENT_HISTOGRAM WHERE NAME = ‘apply lag’ AND COUNT &gt; 0;</code></p>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Gap Problems’ from dual;<br>select ‘***********************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>select * from v$archive_gap;</code></p>



<p><code>set heading off<br>set feedback off<br>select ‘Data Guard Errors in the Last Hour’ from dual;<br>select ‘**********************************’ from dual;<br>set heading on<br>set feedback on</code></p>



<p><code>select TIMESTAMP,SEVERITY,ERROR_CODE,MESSAGE from v$dataguard_status where timestamp &gt; systimestamp-1/24;<br>spool off</code></p>



<h5 class="wp-block-heading">Hope this helps. See you !!!</h5>



<h5 class="wp-block-heading">André&nbsp; Ontalba&nbsp; –&nbsp;<a href="http://www.dbadutra.com/">www.dbadutra.com</a></h5>



<p>&nbsp;<strong>Disclaimer:</strong>&nbsp;“The postings on this site are my own and don’t necessarily represent may actual employer positions, strategies or opinions. The information here was edited to be useful for general purpose, specific data and identifications was removed to allow reach generic audience and to be useful.”</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2019/06/monitoring-data-guard-operation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">5586</post-id>	</item>
	</channel>
</rss>
