<?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>Blog DBA Dutra</title>
	<atom:link href="https://www.dbadutra.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.dbadutra.com</link>
	<description></description>
	<lastBuildDate>Mon, 12 Aug 2024 23:43:34 +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>ACE Alumni &#8211; Fim de um ciclo</title>
		<link>https://www.dbadutra.com/2024/08/ace-alumni-fim-de-um-ciclo/</link>
					<comments>https://www.dbadutra.com/2024/08/ace-alumni-fim-de-um-ciclo/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Mon, 12 Aug 2024 23:43:30 +0000</pubDate>
				<category><![CDATA[Sem categoria]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6261</guid>

					<description><![CDATA[Olá a todos, Como muitos ainda não devem saber, entrei para a Oracle como Strategic Customer Service Manager e me tornei um ACE Alumni. O Programa Oracle ACE é destinado a Clientes e Parceiros, não a funcionários. Fiquei no programa por 6 anos e vou continuar dando suporte ao programa, agora do lado da Oracle. [&#8230;]]]></description>
										<content:encoded><![CDATA[
<h3 class="wp-block-heading"></h3>



<p>Olá a todos, <br><br>Como muitos ainda não devem saber, entrei para a Oracle como Strategic Customer Service Manager e me tornei um ACE Alumni. <br><br>O Programa Oracle ACE é destinado a Clientes e Parceiros, não a funcionários. <br><br>Fiquei no programa por 6 anos e vou continuar dando suporte ao programa, agora do lado da Oracle. <br><br>Sou muito grato pelo programa, especialmente para <a href="https://www.linkedin.com/in/jnicholson2?miniProfileUrn=urn%3Ali%3Afs_miniProfile%3AACoAAAHNY1ABkkx5lJMxbLwAg-ENR7QnuXmAKbM">Jennifer Nicholson</a>, <a href="https://www.linkedin.com/in/oanapaduraru?miniProfileUrn=urn%3Ali%3Afs_miniProfile%3AACoAAAQwD08BEcmASLWkvrAHxR1iRxC_JT7VxxY">Oana-Aurelia Bonu</a> e <a href="https://www.linkedin.com/in/cassandra-call?miniProfileUrn=urn%3Ali%3Afs_miniProfile%3AACoAABPjf3kBDB4jy2hd0OLervXWXap2D6tLoks">Cassandra Call</a>, que o administra com paixão e me apoia todos esses anos.<br><br></p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/08/image.png"><img fetchpriority="high" decoding="async" width="320" height="316" src="https://www.dbadutra.com/wp-content/uploads/2024/08/image.png" alt="" class="wp-image-6262" srcset="https://www.dbadutra.com/wp-content/uploads/2024/08/image.png 320w, https://www.dbadutra.com/wp-content/uploads/2024/08/image-300x296.png 300w" sizes="(max-width: 320px) 100vw, 320px" /></a></figure></div>


<p>Continuarei escrevendo blogs e ajudando dentro do possível a comunidade como sempre foi desde 2010.<br><br>Obrigado a todos pelo carinho e respeito que sempre a comunidade e o programa teve comigo. <br><br>Até logo <br>Andre Ontalba<br></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/08/ace-alumni-fim-de-um-ciclo/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6261</post-id>	</item>
		<item>
		<title>Network Path Analyzer &#8211; OCI</title>
		<link>https://www.dbadutra.com/2024/02/network-path-analyzer-oci/</link>
					<comments>https://www.dbadutra.com/2024/02/network-path-analyzer-oci/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Wed, 14 Feb 2024 23:44:39 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Network]]></category>
		<category><![CDATA[OCI]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6251</guid>

					<description><![CDATA[Today, I will explain a little about this tool that helps us identify communication problems regarding networks in OCI. What is Network Path Analyzer? Network Path Analyzer is a network reachability analysis tool based on real-time network configuration. Its primary data input is the network routing and security configuration in a customer tenancy, augmented with [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Today, I will explain a little about this tool that helps us identify communication problems regarding networks in OCI.</p>



<p><strong>What is Network Path Analyzer?</strong></p>



<p>Network Path Analyzer is a network reachability analysis tool based on real-time network configuration. Its primary data input is the network routing and security configuration in a customer tenancy, augmented with key network runtime state data, such as the status of a load balancer backend set or the state of a FastConnect virtual circuit.</p>



<p>Network Path Analyzer answers the following questions that are essential for the cloud network operations team to obtain an accurate and deep understanding of endpoint reachability in their cloud networks:</p>



<ul class="wp-block-list">
<li>If they can’t, why? What is missing?</li>



<li>If they can, how? Over which routing paths, using which security policies?</li>
</ul>



<p>Finding the answers to these questions in a complex network can be labor-intensive and time-consuming. It involves analyzing the virtual network topologies, carefully walking through multiple route tables, and scrutinizing different network security groups (NSGs) or security lists along the multi-hop network paths. If done manually, it can be error-prone.</p>



<p>Network Path Analyzer is a great network troubleshooting tool. Additionally, since it&nbsp;doesn’t use or need any traffic along the network paths because it operates solely on the configuration and runtime state data, it is also an effective tool for proactive configuration validation.</p>



<p><strong>Benefits of Network Path Analyzer</strong></p>



<p>Armed with Network Path Analyzer, you can realize the following benefits:</p>



<ul class="wp-block-list">
<li>Troubleshoot reachability issues caused by misconfiguration much faster, significantly reducing the Mean Time to Resolution (MTTR) for this type of outage</li>



<li>Proactively verify and validate the network routing and security policy configuration for your reachability intents before even starting to send application traffic.</li>



<li>A tool to perform on-demand validation of the logical network paths to match your intent</li>
</ul>



<p><strong>How to use Network Path Analyzer</strong></p>



<p>Network Path Analyzer is directly available under Networking on the Oracle Cloud Console. You only need to create a path analysis and run it. An API is available to programmatically create, manage, and run your path analyses.</p>



<p>When creating a path analysis, specify the source and destination endpoints, the network protocol, and the source and the destination ports. For endpoints, you can select an IP address or an OCI resource. The viable OCI resource options include an IP address from a VCN subnet, a compute instance virtual network interface card (VNIC), an application load balancer, or a network load balancer.</p>



<p>In my simulation, I am checking bi-directional communication between 2 compute instances.</p>



<p>Select the &#8220;Network Path Analyzer&#8221; option in the Network Command Center</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-9.png"><img decoding="async" width="975" height="311" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-9.png" alt="" class="wp-image-6252" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-9.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-9-300x96.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-9-768x245.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Click &#8220;Create Path Analysis&#8221;</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-10.png"><img decoding="async" width="975" height="399" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-10.png" alt="" class="wp-image-6253" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-10.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-10-300x123.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-10-768x314.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Now fill in the Source and Destination information.</p>



<p>In my case I am testing communication between 2 compute instances (VM) via port 22 (SSH).</p>



<figure class="wp-block-image size-full is-resized"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-11.png"><img loading="lazy" decoding="async" width="837" height="331" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-11.png" alt="" class="wp-image-6254" style="width:840px;height:auto" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-11.png 837w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-11-300x119.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-11-768x304.png 768w" sizes="(max-width: 837px) 100vw, 837px" /></a></figure>



<p>After filling in the information, perform the analysis.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-12.png"><img loading="lazy" decoding="async" width="855" height="378" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-12.png" alt="" class="wp-image-6255" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-12.png 855w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-12-300x133.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-12-768x340.png 768w" sizes="(max-width: 855px) 100vw, 855px" /></a></figure>



<p></p>



<p>After a few minutes, a communication report will be displayed where you can identify if it is working or if there is some type of problem.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-13.png"><img loading="lazy" decoding="async" width="975" height="401" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-13.png" alt="" class="wp-image-6256" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-13.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-13-300x123.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-13-768x316.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-14.png"><img loading="lazy" decoding="async" width="975" height="432" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-14.png" alt="" class="wp-image-6257" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-14.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-14-300x133.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-14-768x340.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Network Path Analyzer can assist with your troubleshooting process for the following reachability-related scenarios:</p>



<ul class="wp-block-list">
<li>Virtual machines (VMs) in your multi-VCN applications can’t communicate with each other. You want to check the configured path.</li>



<li>Your frontend web server in a multitier application can’t reach the load balancer VIP of the application tier.</li>



<li>Your load balancer can’t reach some of the backends.</li>



<li>An on-premises endpoint in your hybrid cloud application can’t reach an OCI instance.</li>



<li>Your on-premises site can’t access a cloud application hosted by your Oracle instances.</li>
</ul>



<p>Network Path Analyzer is a tool to assist in troubleshooting reachability issues by quickly identifying misconfiguration and reducing the MTTR caused by configuration issues. It’s also an effective tool for customers to proactively verify their network configuration against their reachability intents so that they can proactively catch and correct misconfiguration and reduce outages.</p>



<p>I hope this article can help you</p>



<p>See you in the next article.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/02/network-path-analyzer-oci/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6251</post-id>	</item>
		<item>
		<title>Object Storage &#8211; Cross Region Replication</title>
		<link>https://www.dbadutra.com/2024/02/object-storage-cross-region-replication/</link>
					<comments>https://www.dbadutra.com/2024/02/object-storage-cross-region-replication/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Fri, 09 Feb 2024 20:39:57 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Object Storage]]></category>
		<category><![CDATA[Replication]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6238</guid>

					<description><![CDATA[The Object Storage&#160;is an internet-scale, high-performance storage platform that offers reliable and cost-efficient data durability. The Object Storage service can store an unlimited amount of unstructured data of any content type, including analytic data and rich content, like images and videos. Object Storage is a regional cloud service. Buckets are logical containers created in a [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p><strong>The Object Storage</strong>&nbsp;is an internet-scale, high-performance storage platform that offers reliable and cost-efficient data durability. The Object Storage service can store an unlimited amount of unstructured data of any content type, including analytic data and rich content, like images and videos.</p>



<p>Object Storage is a regional cloud service. Buckets are logical containers created in a tenancy inside a region in which customer data is stored as objects.</p>



<p>You can store a copy of all objects from one bucket in another bucket located inside a different region for redundancy. This copy can help you recover from a disaster that could affect an entire cloud region. Cross-region object replication provides protection from a regional outage.</p>



<p></p>



<p><strong>Configure the IAM policies</strong></p>



<ol class="wp-block-list">
<li>Log in to the OCI console and click&nbsp;<strong>Identity</strong>, and then click&nbsp;<strong>Policies</strong>.</li>



<li>Create a new policy and add the following statements:</li>
</ol>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-2.png"><img loading="lazy" decoding="async" width="975" height="301" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-2.png" alt="" class="wp-image-6240" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-2.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-2-300x93.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-2-768x237.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<pre class="wp-block-preformatted">Allow group 'OracleIdentityCloudService'/'OCI_Administrators' to manage buckets in tenancy	
Allow group 'OracleIdentityCloudService'/'OCI_Administrators' to manage objects in tenancy	
Allow service objectstorage-us-ashburn-1 to manage object-family in tenancy	
Allow service objectstorage-us-chicago-1 to manage object-family in tenancy</pre>



<p></p>



<p><strong>Configure Object Storage cross-region replication</strong></p>



<ol class="wp-block-list">
<li>Go to the source bucket and click&nbsp;<strong>Create Policy</strong>&nbsp;as shown in the following image.</li>
</ol>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-3.png"><img loading="lazy" decoding="async" width="975" height="426" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-3.png" alt="" class="wp-image-6241" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-3.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-3-300x131.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-3-768x336.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p><strong>Note</strong>: The destination bucket “Replication_Blog” has to be created in the destination region us-chicago before setting up replication. Setup replication policy on source bucket by selecting the destination region and bucket to replicate to and then click&nbsp;<strong>Create</strong>.</p>



<p>Select the <strong>Destination Region</strong> and <strong>Destination Bucket</strong> for replicating objects and click <strong>Create</strong>.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-4.png"><img loading="lazy" decoding="async" width="975" height="463" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-4.png" alt="" class="wp-image-6242" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-4.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-4-300x142.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-4-768x365.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<p>In the <strong>Bucket Information</strong> tab, the <strong>Replication</strong> field displays <strong>Enabled</strong> for the source bucket in <strong>US East (Ashburn)</strong> region.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-5.png"><img loading="lazy" decoding="async" width="975" height="397" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-5.png" alt="" class="wp-image-6243" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-5.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-5-300x122.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-5-768x313.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>In the <strong>US Midwest (Chicago)</strong> region, go to the <strong>Bucket Information</strong> tab and verify if the <strong>Replication</strong> is <strong>Enabled</strong> on the destination bucket as well :</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-6.png"><img loading="lazy" decoding="async" width="975" height="426" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-6.png" alt="" class="wp-image-6244" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-6.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-6-300x131.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-6-768x336.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Navigate to the destination region and bucket and confirm that the objects uploaded to the source bucket have been replicated in the destination bucket in US Midwest (Chicago) region. </p>



<figure class="wp-block-image size-full is-resized"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-7.png"><img loading="lazy" decoding="async" width="975" height="346" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-7.png" alt="" class="wp-image-6245" style="width:840px;height:auto" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-7.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-7-300x106.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-7-768x273.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image-8.png"><img loading="lazy" decoding="async" width="975" height="403" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image-8.png" alt="" class="wp-image-6246" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image-8.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-8-300x124.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-8-768x317.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>I hope this article can help you</p>



<p>See you in the next article.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/02/object-storage-cross-region-replication/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6238</post-id>	</item>
		<item>
		<title>Oracle Globally Distributed Database &#8211; Overview</title>
		<link>https://www.dbadutra.com/2024/02/oracle-globally-distributed-database/</link>
					<comments>https://www.dbadutra.com/2024/02/oracle-globally-distributed-database/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Tue, 06 Feb 2024 21:01:15 +0000</pubDate>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Oracle Globally Distributed Database]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6232</guid>

					<description><![CDATA[Today, I will start a series of blogs about Oracle&#8217;s Globally Distributed Database, in the first article, we will give a brief overview of Oracle&#8217;s Globally Distributed Database. What is a Globally Distributed Database A globally distributed database is a method of partitioning data to distribute the computational and storage workload, which helps achieve hyperscale [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Today, I will start a series of blogs about Oracle&#8217;s Globally Distributed Database, in the first article, we will give a brief overview of Oracle&#8217;s Globally Distributed Database.</p>



<p><strong>What is a Globally Distributed Database</strong></p>



<p>A globally distributed database is a method of partitioning data to distribute the computational and storage workload, which helps achieve hyperscale computing.</p>



<p>Companies often achieve hyperscale computing using database sharding, in which they distribute segments of a data set—a shard—across lots of databases on many different computers.</p>



<p>Sharding uses a&nbsp;shared-nothing&nbsp;architecture in which shards share no hardware or software. All the shards together make up a single logical database, called a&nbsp;sharded database.</p>



<p>From the application&#8217;s perspective, a sharded database looks like a single database: the number of shards and data distribution across those shards are completely transparent to database applications. From the perspective of a database administrator, a shared database consists of multiple databases that can be managed collectively.</p>


<div class="wp-block-image">
<figure class="aligncenter size-full is-resized"><a href="https://www.dbadutra.com/wp-content/uploads/2024/02/image.png"><img loading="lazy" decoding="async" width="626" height="293" src="https://www.dbadutra.com/wp-content/uploads/2024/02/image.png" alt="" class="wp-image-6233" style="width:624px;height:auto" srcset="https://www.dbadutra.com/wp-content/uploads/2024/02/image.png 626w, https://www.dbadutra.com/wp-content/uploads/2024/02/image-300x140.png 300w" sizes="(max-width: 626px) 100vw, 626px" /></a></figure></div>


<p></p>



<p></p>



<h3 class="wp-block-heading">Oracle Globally Distributed Database</h3>



<h3 class="wp-block-heading">&nbsp;</h3>



<p>Oracle Globally Distributed Database disperses segments of a data set across many databases (shards) onto different computers—on-premises or in the cloud. It enables globally distributed, linearly scalable, multimodel databases. It requires no specialized hardware or software. Oracle Globally Distributed Database does all this while rendering the strong consistency, full power of SQL, support for structured and unstructured data, and the Oracle Database ecosystem. It meets data sovereignty requirements and supports applications that require low latency and high availability.</p>



<ul class="wp-block-list">
<li>SQL language used for object creation, strict data consistency, complex joins, ACID transaction properties, distributed transactions, relational data store, security, encryption, robust performance optimizer, backup and recovery, and patching with Oracle Database</li>



<li>Oracle innovations and enterprise-level features, including Advanced Security, Automatic Storage Management (ASM), Advanced Compression, partitioning, high-performance storage engine, SMP scalability, Oracle RAC, Exadata, in-memory columnar, online redefinition, JSON document store, and so on</li>



<li>Sharding-aware Oracle Database tools, such as SQL Developer, Enterprise Manager Cloud Control, Recovery Manager (RMAN), and Data Pump, for sharded database application development and management</li>



<li>Programmatic interfaces, such as Java Database Connectivity (JDBC), Oracle Call Interface (OCI), Universal Connection Pool (UCP), Oracle Data Provider for .NET (ODP.NET), and PL/SQL, including extensions for sharded application development</li>



<li>Extreme availability with Oracle Data Guard and Oracle Active Data Guard. Other replication options include Raft replication, built into&nbsp;Oracle Globally Distributed Database.</li>



<li>Support for multi-model data like relational, text, and JSON</li>



<li>Existing life-cycle management and operational processes can be kept, leveraging in-house and worldwide Oracle database administrator skill sets</li>



<li>Enterprise-level support</li>



<li>Extreme scalability and availability of NoSQL databases</li>
</ul>



<p></p>



<h3 class="wp-block-heading">Benefits of Oracle Globally Distributed Database</h3>



<h3 class="wp-block-heading">&nbsp;</h3>



<p>Oracle Globally Distributed Database&nbsp;provides linear scalability, complete fault isolation, and global data distribution for the most demanding applications.</p>



<p>Key benefits of&nbsp;Oracle Globally Distributed Database&nbsp;include:</p>



<ul class="wp-block-list">
<li><strong>Linear Scalability</strong></li>
</ul>



<p>The&nbsp;Oracle Globally Distributed Database&nbsp;shared–nothing architecture eliminates performance bottlenecks and provides unlimited scalability.&nbsp;Oracle Globally Distributed Database&nbsp;supports scaling up to 1000 shards.</p>



<ul class="wp-block-list">
<li><strong>Extreme Availability and Fault Isolation</strong></li>
</ul>



<p>Single points of failure are eliminated because shards do not share resources such as software, CPU, memory, or storage devices. The failure or slow-down of one shard does not affect the performance or availability of other shards.</p>



<p>Oracle MAA best practice solutions, such as Oracle Data Guard and Oracle RAC, protect shards.</p>



<p>An unplanned outage or planned maintenance of a shard impacts only the availability of the data on that shard, so only the users of that small portion of the data are affected, for example, during a failover brownout.</p>



<ul class="wp-block-list">
<li><strong>Geographical Distribution of Data</strong></li>
</ul>



<p>Oracle Globally Distributed Database enables you to deploy a global database, where a single logical database can be distributed over multiple geographies. This makes it possible to satisfy data privacy regulatory requirements (Data Sovereignty) and allows the storage of particular data close to its consumers (Data Proximity).</p>



<p></p>



<h3 class="wp-block-heading">New Features: Oracle Globally Distributed Database and 23c</h3>



<ul class="wp-block-list">
<li>Raft Replication</li>



<li>Directory-Based Sharding</li>



<li>Synchronous Duplicated Tables</li>



<li>Fine-Grained Refresh Rate Control For Duplicated Tables</li>



<li>Sharded Database Coordinated Backup and Restore Enhancements</li>



<li>Automatic Data Move on Sharding Key Update</li>



<li>Move Data Chunks Between Shardspaces</li>



<li>Global Partitioned Index Support on Subpartitions</li>



<li>PL/SQL Function Cross-Shard Query Support</li>



<li>Pre-Deployment Network Validation</li>



<li>New Partition Set Operations for Composite Sharding</li>



<li>Parallel Cross-Shard DML Support</li>



<li>Oracle Data Pump Adds Support for Sharding Metadata</li>



<li>Automatic Parallel Direct Path Load Using SQL*Loader</li>
</ul>



<p>The Oracle Globally Distributed Database is set to revolutionize the world of distributed database operations.</p>



<p>I hope you first enjoyed this great resource we have at OCI.</p>



<p>In the next articles, we will provide more technical details about the product Oracle Globally Distributed Autonomous Database and also go into details of the new features with Oracle 23c.</p>



<p>See you in the next article.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/02/oracle-globally-distributed-database/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6232</post-id>	</item>
		<item>
		<title>Database Security Assessment Tool (DBSAT 3.0)</title>
		<link>https://www.dbadutra.com/2024/01/database-security-assessment-tool-dbsat-3-0/</link>
					<comments>https://www.dbadutra.com/2024/01/database-security-assessment-tool-dbsat-3-0/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Fri, 26 Jan 2024 21:12:07 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Database]]></category>
		<category><![CDATA[DBSAT]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6219</guid>

					<description><![CDATA[The Oracle Database Security Assessment Tool (DBSAT), currently in version 3.1.0 (January 2024), is a command-line tool focused on detecting potential security vulnerabilities. Its greatest scope occurs within the database but it also inspects operating system and network components (listener) in search of failures. The tool provides insight into the current status of users, roles, [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p></p>



<p>The Oracle Database Security Assessment Tool (DBSAT), currently in version 3.1.0 (January 2024), is a command-line tool focused on detecting potential security vulnerabilities. Its greatest scope occurs within the database but it also inspects operating system and network components (listener) in search of failures.</p>



<p>The tool provides insight into the current status of users, roles, permissions, and security control policies to promote successful approaches to mitigating potential security risks.</p>



<p><strong>What&#8217;s new in DBSAT 3.0 ?</strong></p>



<p>New checks added in DBSAT 3.0 include the newly introduced Oracle Database 23c&nbsp;<a href="https://docs.oracle.com/en/database/oracle/oracle-database/23/dbseg/using-sql-firewall.html#GUID-B268CC0A-4FE5-4A50-9C20-FABC99B5C4AD" target="_blank" rel="noreferrer noopener">SQL Firewall</a>, auditing-related issues, sensitive data and transparent sensitive data protection, and a wealth of other checks necessary for any security-conscious organization. Remarks and recommendations are updated to make them clearer and actionable.</p>



<p>Desupport notices list&nbsp;database&nbsp;features and parameters that are reaching or&nbsp;have&nbsp;reached their end-of-life so you can take proactive measures to phase out their usage. DBSAT Discoverer also added support for India&#8217;s permanent account number (PAN) and the unique identification (Aadhaar) number.</p>



<p>From its beginning, DBSAT offered a distillation of decades of security experience, checking configuration issues that might introduce unnecessary risk. Until now, DBSAT clearly identified checks that were related to security frameworks like the DISA STIGs, Center for Internet Security (CIS) benchmarks, or data privacy regulations like GDPR. However, no checks clearly indicated that they were Oracle best practices. DBSAT 3.0 fixes that issue: Findings that are Oracle best practices are now clearly identified.</p>



<p><strong>When is DBSAT not enough?</strong></p>



<p>DBSAT is a simple standalone tool that helps assess the security configuration of a single Oracle Database. What if you want to automate assessments across your fleet, track deviations from approved baselines, get alerts, keep history, and compare all in one interface? Use Oracle Data Safe or Oracle Audit Vault and Database Firewall to go the extra mile in assessments.</p>



<p>The DBSAT is made up of two components:</p>



<p></p>



<p><strong>DBSAT Collector</strong>: Responsible for executing SQL queries and operating system commands that collect the data to be evaluated. The data is stored in a file that is later used by DBSAT Reporter in the analysis phase.</p>



<p><strong>DBSAT Reporter</strong>: Responsible for analyzing the collected data and generating reports of findings and recommendations in files of multiple formats such as HTML, Excel and Text.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-44.png"><img loading="lazy" decoding="async" width="637" height="352" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-44.png" alt="" class="wp-image-6220" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-44.png 637w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-44-300x166.png 300w" sizes="(max-width: 637px) 100vw, 637px" /></a></figure>



<p>Reference: <a href="https://docs.oracle.com/en/database/oracle/security-assessment-tool/3.0.0/satug/index.html#GUID-999F5696-F368-4E54-86DB-DEFC593B2042">https://docs.oracle.com/en/database/oracle/security-assessment-tool/3.0.0/satug/index.html#GUID-999F5696-F368-4E54-86DB-DEFC593B2042</a></p>



<p></p>



<p>The main benefits of using DBSAT are:</p>



<ul class="wp-block-list">
<li>Quick identification of database security configuration errors;</li>



<li>Recommendations based on best security practices;</li>



<li>Reduction of the amplitude of an attack and exposure to risk.</li>
</ul>



<p>DBSTAT works on Oracle database 11.2.0.4 and later versions including multitenant and cloud environments. The supported platforms are:</p>



<p>Oracle DBSAT runs on:</p>



<ul class="wp-block-list">
<li>Solaris x64 and Solaris SPARC64</li>



<li>Linux x86-64 and Linux 64-bit Arm</li>



<li>Windows x64</li>



<li>HP-UX IA (64-bit)</li>



<li>IBM AIX (64-bit) and Linux on zSeries (64-bit)</li>
</ul>



<p>Its use is very simple and consists of downloading the MOS file (My Oracle Support &#8211; Doc ID 2138254.1), unzipping it, and running the script to collect and report security vulnerabilities. DBSAT is a lightweight utility that does not hamper system performance while running.</p>



<p>Running DBSAT Collector:</p>



<p>For DBSTAT to collect all the data and perform a complete validation, it must be executed from the database server, as some operating system commands are executed to collect data that cannot be obtained from the database. DBSTAT must also be run with an operating system user that has read permission on ORACLE_HOME files and directories for data to be collected and processed properly.</p>



<p>Collections in the database are carried out mainly on data dictionary views, so the user that will be provided in the connection string to the database must have sufficient permissions to select data from these views.</p>



<p>Collector Prerequisites</p>



<p>To gather all necessary data, run the Oracle DBSAT Collector on the database server. The collector uses operating system commands to gather process and file system information that the database alone cannot provide. Besides, the Oracle DBSAT Collector must be run as an OS user with read permissions on files and directories under&nbsp;ORACLE_HOME&nbsp;using SQL*Plus (through Oracle Database or Instant Client) to collect and process file system data using OS commands.</p>



<p>The Oracle DBSAT Collector collects most of its data by querying database views. It must connect to the database as a user with sufficient privileges to select from these views. Grant the DBSAT user the following privileges:</p>



<ul class="wp-block-list">
<li>CREATE SESSION</li>



<li>READ&nbsp;or&nbsp;SELECT&nbsp;on&nbsp;SYS.REGISTRY$HISTORY</li>



<li>Role&nbsp;SELECT_CATALOG_ROLE</li>



<li>Role&nbsp;DV_SECANALYST&nbsp;(if Database Vault is enabled or if Database Vault Operations Control is enabled)</li>



<li>Role&nbsp;AUDIT_VIEWER&nbsp;(12c&nbsp;and later)</li>



<li>Role&nbsp;CAPTURE_ADMIN&nbsp;(12c&nbsp;and later)</li>



<li>READ&nbsp;or&nbsp;SELECT&nbsp;on&nbsp;SYS.DBA_USERS_WITH_DEFPWD</li>



<li>READ&nbsp;on&nbsp;SYS.DBA_AUDIT_MGMT_CONFIG_PARAMS</li>



<li>READ&nbsp;on&nbsp;SYS.DBA_CREDENTIALS</li>



<li>EXECUTE&nbsp;on&nbsp;SYS.DBMS_SQL</li>
</ul>



<p>Syntax for running the DBSAT Collector:</p>



<pre class="wp-block-preformatted">$ dbsat collect &lt;database_connect_string&gt; &lt;output_file&gt;</pre>



<pre class="wp-block-preformatted">[oracle@oracle-db-lab dbsat]$  ./dbsat collect "c##test1/test#123" /home/oracle/dbsat/collect/output_ORCL

Database Security Assessment Tool version 3.1 (Jan 2024)

This tool is intended to assist you in securing your Oracle database
system. You are solely responsible for your system and the effect and
results of the execution of this tool (including, without limitation,
any damage or data loss). Further, the output generated by this tool may
include potentially sensitive system configuration data and information
that could be used by a skilled attacker to penetrate your system. You
are solely responsible for ensuring that the output of this tool,
including any generated reports, is handled in accordance with your
company's policies.

Connecting to the target Oracle database...


SQL*Plus: Release 19.0.0.0.0 - Production on Fri Jan 19 23:52:20 2024
Version 19.19.0.0.0

Copyright (c) 1982, 2023, Oracle.  All rights reserved.


Connected to:
Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.19.0.0.0

Setup complete.
SQL queries complete.
OS commands complete.
Disconnected from Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
Version 19.19.0.0.0
DBSAT Collector completed successfully.

Calling /u01/app/oracle/product/19.0.0/dbhome_1/bin/zip to encrypt output_ORCL.json...

Enter password:
Verify password:
  adding: output_ORCL.json (deflated 86%)
zip completed successfully.
[oracle@oracle-db-lab dbsat]
</pre>



<p>By default, the file will be generated and compressed with a password. However, we can omit the need to enter a password by adding the -n parameter in the best collect call. However, considering information security, this is not recommended.</p>



<p>Running DBSAT Reporter:</p>



<p>The prerequisite for DBSAT Reporter is that Python 2.6 or higher is installed on the server where the report will be generated. By default it is already installed in most UNIX environments.</p>



<p>To confirm the existence and version of Python run:</p>



<pre class="wp-block-preformatted">python -V </pre>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-45.png"><img loading="lazy" decoding="async" width="481" height="100" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-45.png" alt="" class="wp-image-6221" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-45.png 481w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-45-300x62.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-45-475x100.png 475w" sizes="(max-width: 481px) 100vw, 481px" /></a></figure>



<p>Syntax for running the DBSAT Report:</p>



<pre class="wp-block-preformatted">dbsat report [-a] [-n] [-x &lt;section&gt;] &lt;input_file&gt;

</pre>



<p>The Reporter supports the following command-line options:</p>



<ul class="wp-block-list">
<li><em>-a</em></li>
</ul>



<p>Runs the reports for all the database accounts.</p>



<ul class="wp-block-list">
<li><em>-n</em></li>
</ul>



<p>Specifies no encryption for output.</p>



<ul class="wp-block-list">
<li><em>-g</em></li>
</ul>



<p>Shows all grants including common grants in a pluggable database.</p>



<ul class="wp-block-list">
<li><em>-x</em></li>
</ul>



<p>Excludes a section from the report.</p>



<p>Valid sections are:</p>



<ul class="wp-block-list">
<li>USER&nbsp;:&nbsp;User Accounts</li>



<li>PRIV&nbsp;:&nbsp;Privileges and Roles</li>



<li>AUTH&nbsp;:&nbsp;Authorization Control</li>



<li>CRYPT&nbsp;:&nbsp;Encryption</li>



<li>ACCESS&nbsp;:Fine-Grained Access Control</li>



<li>AUDIT&nbsp;:&nbsp;Auditing</li>



<li>CONF&nbsp;:&nbsp;Database Configuration</li>



<li>NET&nbsp;:&nbsp;Network Configuration</li>



<li>OS&nbsp;:&nbsp;Operating System</li>
</ul>



<p>To exclude multiple sections use a comma-separated list, for example:</p>



<p>-x USER,PRIV</p>



<p>Or:</p>



<p>-x USER&nbsp;-x PRIV</p>



<p>Omitting this option will include all sections of the report.</p>



<p>The same path name is used to generate the report files produced by the Reporter in HTML, Excel, JSON, and Text formats with the appropriate file extensions.</p>



<p>Run the Reporter.</p>



<p></p>



<pre class="wp-block-preformatted">[oracle@oracle-lab dbsat]$ export JAVA_HOME=/u01/app/oracle/product/21.0.0/dbhome_1/jdk
[oracle@oracle-lab dbsat]$ export PATH=$JAVA_HOME/bin:$PATH
[oracle@oracle-lab dbsat]$ ./dbsat report -n output_ORCL

Database Security Assessment Tool version 3.1 (Jan 2024)

This tool is intended to assist you in securing your Oracle database
system. You are solely responsible for your system and the effect and
results of the execution of this tool (including, without limitation,
any damage or data loss). Further, the output generated by this tool may
include potentially sensitive system configuration data and information
that could be used by a skilled attacker to penetrate your system. You
are solely responsible for ensuring that the output of this tool,
including any generated reports, is handled in accordance with your
company's policies.

DBSAT Reporter ran successfully.

[oracle@oracle-lab dbsat]$

</pre>



<p>DBSAT Reports:</p>



<p>DBSAT produces output in various formats for various audiences and purposes. An HTML report, for example, provides detailed results in an easy-to-navigate format using links while a Spreadsheet report provides a high-level summary of each finding, as well as allowing you to manipulate columns by adding new ones for your purposes and prioritization.</p>



<p>Example of a DBSAT summary in HTML:</p>


<div class="wp-block-image">
<figure class="aligncenter size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-46.png"><img loading="lazy" decoding="async" width="975" height="519" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-46.png" alt="" class="wp-image-6222" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-46.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-46-300x160.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-46-768x409.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure></div>


<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-48.png"><img loading="lazy" decoding="async" width="687" height="407" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-48.png" alt="" class="wp-image-6227" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-48.png 687w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-48-300x178.png 300w" sizes="(max-width: 687px) 100vw, 687px" /></a></figure>



<p>1. Rule title and unique ID:</p>



<p>The ID has two parts: the prefix identifies the report section and the suffix identifies the specific rule.</p>



<p>2. Status:</p>



<p>Status can be used to define the prioritization of indicators, where a high-risk finding requires immediate action while a low-risk finding can be scheduled and adjusted with less priority.</p>



<ul class="wp-block-list">
<li>Pass: No errors or risks identified;</li>



<li>Evaluate: It is necessary to carry out a manual analysis to identify the degree of risk;</li>



<li>Some Risk: Low risk;</li>



<li>Significant Risk: Medium rich;</li>



<li>Severe Risk: High security risk;</li>



<li>Opportunity: Additional opportunities to improve security using additional technologies.</li>
</ul>



<p>3. Summary:</p>



<p>Discovery summary.</p>



<p>4. Details:</p>



<p>Provides detailed information to explain the discovery.</p>



<p>5. Remarks:</p>



<p>Explains the standard used to evaluate the results found. It can also explain recommended actions for remediation if a risk is reported.</p>



<p>6. References:</p>



<p>Lists the discovery based on the CIS Oracle Database Benchmark, DISA STIGs, Oracle Best Practices.</p>



<p></p>



<p>I hope this article helps you.&nbsp;&nbsp;</p>



<p>See you in the next article.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/01/database-security-assessment-tool-dbsat-3-0/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6219</post-id>	</item>
		<item>
		<title>Backup and restore your Oracle Home</title>
		<link>https://www.dbadutra.com/2024/01/backup-and-restore-your-oracle-home/</link>
					<comments>https://www.dbadutra.com/2024/01/backup-and-restore-your-oracle-home/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Fri, 19 Jan 2024 21:47:35 +0000</pubDate>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Backup]]></category>
		<category><![CDATA[Oracle HOme]]></category>
		<category><![CDATA[Restore]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6207</guid>

					<description><![CDATA[&#160;&#160; I did this how-to with the purpose of you using it as a &#8221; best practice&#8221; and having a regular backup of your Oracle Home in case you, or another guy on your team, accidentally remove part of or entire files and folders on it. I will reproduce the steps on Compute instance in [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>&nbsp;&nbsp; I did this how-to with the purpose of you using it as a &#8221; best practice&#8221; and having a regular backup of your Oracle Home in case you, or another guy on your team, accidentally remove part of or entire files and folders on it.</p>



<p>I will reproduce the steps on Compute instance in OCI; I hope that is not your case on a production database server, but nobody knows when shit happens, and you may need this procedure to recover and put your database online after an accident.</p>



<p>   As you can see, my database is up and running in my Oracle 19c home.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-36.png"><img loading="lazy" decoding="async" width="975" height="411" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-36.png" alt="" class="wp-image-6208" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-36.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-36-300x126.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-36-768x324.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>The location of my ORACLE HOME is listed for this database on my file /etc/oratab</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-37.png"><img loading="lazy" decoding="async" width="975" height="553" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-37.png" alt="" class="wp-image-6209" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-37.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-37-300x170.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-37-768x436.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Now, let&#8217;s issue a backup of my oracle home, do this procedure with root user. You can backup OH online, no problem at all on the database side to issue this step.</p>



<pre class="wp-block-preformatted">[oracle@oracle-db-lab dbhome_1]$ tar -cf /home/oracle/dbhome19c_installed.tar .
[oracle@oracle-db-lab dbhome_1]$ ls -ltrh /home/oracle/dbhome19c_installed.tar
-rw-r--r--. 1 oracle oinstall 5.0G Jan 18 22:35 /home/oracle/dbhome19c_installed.tar
[oracle@oracle-db-lab dbhome_1]$</pre>



<p>I will remove all files on my Oracle Home to simulate the corruption or loss of the Oracle Home.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-38.png"><img loading="lazy" decoding="async" width="975" height="501" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-38.png" alt="" class="wp-image-6210" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-38.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-38-300x154.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-38-768x395.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<p>After removing the directory we will validate that it is not working</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-39.png"><img loading="lazy" decoding="async" width="975" height="100" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-39.png" alt="" class="wp-image-6211" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-39.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-39-300x31.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-39-768x79.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Now all utilities were gone!!</p>



<p>As root user again, let&#8217;s restore our backup from Oracle Home to the correct path using these commands below and let&#8217;s check the size of the folder:</p>



<pre class="wp-block-preformatted">[oracle@oracle-db-lab dbhome_1]$ tar -xf /home/oracle/dbhome19c_installed.tar .</pre>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-40.png"><img loading="lazy" decoding="async" width="975" height="147" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-40.png" alt="" class="wp-image-6212" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-40.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-40-300x45.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-40-768x116.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Now all utilities were gone!!</p>



<p>As root user again, let&#8217;s restore our backup from Oracle Home to the correct path using these commands below and let&#8217;s check the size of the folder:</p>



<pre class="wp-block-preformatted">[oracle@oracle-db-lab dbhome_1]$ tar -xf /home/oracle/dbhome19c_installed.tar .</pre>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-41.png"><img loading="lazy" decoding="async" width="975" height="147" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-41.png" alt="" class="wp-image-6213" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-41.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-41-300x45.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-41-768x116.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>As you can see, it is the same size as the original one, 5 GB, which is good for us. To guarantee that everything is good, I will do a relink on Oracle binaries before I try to open my database again.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-42.png"><img loading="lazy" decoding="async" width="975" height="87" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-42.png" alt="" class="wp-image-6214" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-42.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-42-300x27.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-42-768x69.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>There are no errors on the relink file, so it means that we successfully restored our original Oracle home, and now we can start our database again.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-43.png"><img loading="lazy" decoding="async" width="975" height="516" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-43.png" alt="" class="wp-image-6215" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-43.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-43-300x159.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-43-768x406.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>I hope this article helps you restore the situation I described initially. I recommend you include a backup of your Oracle Home in your backup schedules. Otherwise, you will need to reinstall Oracle again and maybe patch all the patches you applied to your Oracle Home before the crash.  </p>



<p>See you in the next article.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/01/backup-and-restore-your-oracle-home/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6207</post-id>	</item>
		<item>
		<title>Sending email using OCI Email Delivery service</title>
		<link>https://www.dbadutra.com/2024/01/sending-email-using-oci-email-delivery-service/</link>
					<comments>https://www.dbadutra.com/2024/01/sending-email-using-oci-email-delivery-service/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Wed, 10 Jan 2024 18:55:07 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Email Delivery]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6184</guid>

					<description><![CDATA[Today, we will configure the email delivery service to send emails using Always Free resources. First, you need access to an OCI environment. When you have an environment, ensure your user has been assigned to a group with permission to manage the&#160;email-family&#160;resources. It would be best if you had a DNS domain to publish your [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Today, we will configure the email delivery service to send emails using Always Free resources.</p>



<p>First, you need access to an OCI environment. When you have an environment, ensure your user has been assigned to a group with permission to manage the&nbsp;email-family&nbsp;resources.</p>



<p>It would be best if you had a DNS domain to publish your domain keys identified mail (DKIM) and sender policy framework (SPF) records.<br><br><strong>1.</strong> <strong>Generate SMTP credentials</strong></p>



<p>SMTP credentials are necessary to send email through Email Delivery. &nbsp;Remember that each user is limited to a maximum of two SMTP credentials.</p>



<p>Log into the Oracle Cloud Console and navigate to <strong>Identity >> Domains >> OracleIdentityCloudService domain >> Users</strong>.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-16.png"><img loading="lazy" decoding="async" width="712" height="691" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-16.png" alt="" class="wp-image-6185" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-16.png 712w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-16-300x291.png 300w" sizes="(max-width: 712px) 100vw, 712px" /></a></figure>



<p>Click on SMTP Credentials and click on Generate credentials.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-17.png"><img loading="lazy" decoding="async" width="474" height="638" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-17.png" alt="" class="wp-image-6186" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-17.png 474w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-17-223x300.png 223w" sizes="(max-width: 474px) 100vw, 474px" /></a></figure>



<p>Fill out the description and Click on “Generate Credentials.”</p>



<p>Copy the username and password. You can’t retrieve the password after closing the dialog box for security reasons.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-18.png"><img loading="lazy" decoding="async" width="850" height="364" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-18.png" alt="" class="wp-image-6187" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-18.png 850w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-18-300x128.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-18-768x329.png 768w" sizes="(max-width: 850px) 100vw, 850px" /></a></figure>



<p><strong>2.</strong> <strong>Create your email domain.</strong></p>



<p>An email domain lets you set up essential authentication measures for sending emails. Under Developer Services, select Application Integration and Email Delivery.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-19.png"><img loading="lazy" decoding="async" width="975" height="264" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-19.png" alt="" class="wp-image-6188" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-19.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-19-300x81.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-19-768x208.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Click <strong>Email Domains</strong> and create a domain. If setting up DKIM and SPF, choose a DNS domain that you own or control and plan to use for the sending email address.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-20.png"><img loading="lazy" decoding="async" width="975" height="645" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-20.png" alt="" class="wp-image-6189" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-20.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-20-300x198.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-20-768x508.png 768w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-20-90x60.png 90w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-20-180x120.png 180w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-20-95x64.png 95w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Click on “Create Email Domain.”</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-21.png"><img loading="lazy" decoding="async" width="975" height="294" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-21.png" alt="" class="wp-image-6190" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-21.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-21-300x90.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-21-768x232.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p><strong>3.</strong> <strong>Set up DKIM</strong></p>



<p>DKIM is an email authentication technique that allows the receiver to verify the owner of an email domain. It gives the email a digital signature and a header field containing all the signature and key-fetching data. So, implementing DKIM improves email deliverability and can protect your domain against malicious emails sent on behalf of your domain.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-22.png"><img loading="lazy" decoding="async" width="975" height="240" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-22.png" alt="" class="wp-image-6191" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-22.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-22-300x74.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-22-768x189.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Click on “Add DKIM”</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-23.png"><img loading="lazy" decoding="async" width="975" height="619" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-23.png" alt="" class="wp-image-6192" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-23.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-300x190.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-768x488.png 768w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-190x122.png 190w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-120x76.png 120w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-265x168.png 265w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-284x180.png 284w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-274x173.png 274w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-23-220x140.png 220w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Fill out the DKIM Selector after clicking on Generate DKIM Record and click on “Create DKIM.”</p>



<p>We now need to configure our DNS domain. Go to your zone and create the CNAME record with the value it gives you.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-24.png"><img loading="lazy" decoding="async" width="975" height="33" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-24.png" alt="" class="wp-image-6193" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-24.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-24-300x10.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-24-768x26.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>If done correctly, your DKIM signing status changes to Active. Depending on the update type, updates to your DNS records can take up to 24 hours to propagate globally.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-25.png"><img loading="lazy" decoding="async" width="908" height="242" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-25.png" alt="" class="wp-image-6194" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-25.png 908w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-25-300x80.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-25-768x205.png 768w" sizes="(max-width: 908px) 100vw, 908px" /></a></figure>



<p>After DNS propagation, active DKIM will appear.</p>



<p><strong>Tip: Rotate your DKIM keys at least every six months. This reduces the risk of active keys being compromised, either by attackers cracking or stealing them.</strong></p>



<p><strong>4.</strong> <strong>Create an approved sender</strong></p>



<p>You need an approved sender for all “From” addresses sending mail through OCI. Otherwise, mail is rejected. Every sender&#8217;s email address must be registered to use it for Email Delivery.</p>



<p>Important note the following details about approved senders:</p>



<ul class="wp-block-list">
<li>An approved sender is associated with a compartment and only exists in the region where it was configured. If you create an approved sender in the US West (Phoenix) region, you can’t send email through the US East (Ashburn) region with that sender.</li>



<li>Using multiple addresses in the email “From:” header is discouraged because it increases the possibility that your mail is placed in a spam folder or discarded.</li>



<li>Approved senders are unique to tenancies. The service returns a 409 Conflict error if you create a duplicate sender.</li>
</ul>



<p>Under DKIM, you can see Approved Senders. Create one.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-26.png"><img loading="lazy" decoding="async" width="975" height="333" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-26.png" alt="" class="wp-image-6195" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-26.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-26-300x102.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-26-768x262.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Click on “Create Approved Sender”</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-27.png"><img loading="lazy" decoding="async" width="975" height="347" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-27.png" alt="" class="wp-image-6196" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-27.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-27-300x107.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-27-768x273.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Fill out the email address that you will use as the Approved sender. After that, click on “Create Approved Sender.”</p>



<p><strong>5. Configure SPF on your approved sender domain</strong></p>



<p>The SPF allows you to state which email servers are permitted to send email on behalf of your domain. Email receivers use SPF to detect email spoofing. &nbsp;Without SPF, a spam or phishing email can be spoofed to appear to be from a legitimate domain.</p>



<p>Navigate to your approved sender. Under the three-dot menu, select <strong>View SPF</strong>.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-28.png"><img loading="lazy" decoding="async" width="975" height="341" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-28.png" alt="" class="wp-image-6197" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-28.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-28-300x105.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-28-768x269.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-29.png"><img loading="lazy" decoding="async" width="975" height="434" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-29.png" alt="" class="wp-image-6198" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-29.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-29-300x134.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-29-768x342.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Choose your sending location and create a DNS TXT record with the corresponding value. I’m using All commercial regions.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-30.png"><img loading="lazy" decoding="async" width="975" height="183" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-30.png" alt="" class="wp-image-6199" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-30.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-30-300x56.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-30-768x144.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>It can take some time, but your domain now shows DKIM Signing and SPF working.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-31.png"><img loading="lazy" decoding="async" width="975" height="218" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-31.png" alt="" class="wp-image-6200" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-31.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-31-300x67.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-31-768x172.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<p><strong>6. Configure the SMTP connection</strong></p>



<p>Navigate to Configuration to access SMTP sending information to configure the connection in your system.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-32.png"><img loading="lazy" decoding="async" width="975" height="182" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-32.png" alt="" class="wp-image-6201" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-32.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-32-300x56.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-32-768x143.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>The following information is displayed:</p>



<ul class="wp-block-list">
<li>Public endpoint: The public endpoint used to send email to this region</li>



<li>SMTP ports: The SMTP ports used to accept email. Email Delivery supports TLS on port 25 or 587 (recommended).</li>



<li>Security: Indicates if TLS is being used. Customers must encrypt email while in transit to Email Delivery.</li>
</ul>



<p><strong>7. Send mail</strong></p>



<p>Now that our email domain is set up and secured, we can begin sending mail! You can use your own SMTP library or product, such as Postfix. I’m using Postfix to integrate with Email Delivery.<br><br></p>



<p><strong>Install Postfix</strong></p>



<p> Run the command: yum install postfix -y</p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# yum install postfix -y
Last metadata expiration check: 2:30:40 ago on Tue 09 Jan 2024 08:31:43 PM GMT.
Package postfix-2:3.5.8-7.el8.aarch64 is already installed.
Dependencies resolved.
Nothing to do.
Complete!
[root@vm-blog ~]#
</pre>



<p><strong>Start Postfix and make it running upon reboot.</strong></p>



<p>Run the command:  service postfix start</p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# service postfix start
Redirecting to /bin/systemctl start postfix.service
[root@vm-blog ~]#


chkconfig postfix on

[root@vm-blog ~]# chkconfig postfix on
Note: Forwarding request to 'systemctl enable postfix.service'.
[root@vm-blog ~]#
</pre>



<p><strong>Edit the main.cf and add the endpoint in the end of the file</strong></p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# vi /etc/postfix/main.cf

### SMTP - RELAY
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
relayhost = smtp.email.us-ashburn-1.oci.oraclecloud.com:587
</pre>



<p><strong>Create the sasl_passwd file in the same directory of main.cf.</strong></p>



<pre class="wp-block-preformatted">vi /etc/postfix/sasl_passwd

</pre>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-33.png"><img loading="lazy" decoding="async" width="975" height="42" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-33.png" alt="" class="wp-image-6202" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-33.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-33-300x13.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-33-768x33.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>The file contains this format:</p>



<pre class="wp-block-preformatted">smtp.email.us-ashburn-1.oci.oraclecloud.com:587 user:password*
</pre>



<p><strong>*The user and password will be the SMTP credentials been generated in the first step.</strong></p>



<p><strong>Change the owner and permission of the sasl_passwd</strong></p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# chown root:root /etc/postfix/sasl_passwd
[root@vm-blog ~]# chmod 600 /etc/postfix/sasl_passwd
</pre>



<p><strong>Generate the password hash and reload the postfix</strong></p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# postmap hash:/etc/postfix/sasl_passwd
[root@vm-blog ~]# postfix reload
postfix/postfix-script: refreshing the Postfix mail system
[root@vm-blog ~]#
</pre>



<p><strong>Send the test email.&nbsp; This require installing mailx package to validate.</strong></p>



<p>Run the command:  yum install mailx -y</p>



<pre class="wp-block-preformatted">[root@vm-blog ~]# yum install mailx -y
Last metadata expiration check: 2:49:02 ago on Tue 09 Jan 2024 08:31:43 PM GMT.
Dependencies resolved.
======================================================================================================================================================================================================
 Package                                   Architecture                                Version                                            Repository                                             Size
======================================================================================================================================================================================================
Installing:
 mailx                                     aarch64                                     12.5-29.el8                                        ol8_baseos_latest                                     246 k

Transaction Summary
======================================================================================================================================================================================================
Install  1 Package

Total download size: 246 k
Installed size: 493 k
Downloading Packages:
mailx-12.5-29.el8.aarch64.rpm                                                                                                                                         6.0 MB/s | 246 kB     00:00
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                 5.6 MB/s | 246 kB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                                              1/1
  Installing       : mailx-12.5-29.el8.aarch64                                                                                                                                                    1/1
  Running scriptlet: mailx-12.5-29.el8.aarch64                                                                                                                                                    1/1
  Verifying        : mailx-12.5-29.el8.aarch64                                                                                                                                                    1/1

Installed:
  mailx-12.5-29.el8.aarch64

Complete!
[root@vm-blog ~]#
</pre>



<p>Now, send the email to validate.</p>



<p>Run this command:</p>



<pre class="wp-block-preformatted">echo "This a test message from DBADUTRA BLOG" | mail -s "Validation DKIM, SPF, Email Delivery - OCI" -r &lt;approved sender email address> &lt;recipient email address></pre>



<p>Validate that you received the email</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-34.png"><img loading="lazy" decoding="async" width="975" height="229" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-34.png" alt="" class="wp-image-6203" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-34.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-34-300x70.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-34-768x180.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Check on Dashboard</p>



<p>Remember the first 3.100 emails sent are free. After this, you pay $0.085 per 1000 emails Sent.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-35.png"><img loading="lazy" decoding="async" width="975" height="394" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-35.png" alt="" class="wp-image-6204" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-35.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-35-300x121.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-35-768x310.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>I hope this article can help you; it is a reliable, robust, low-cost solution for high-volume email sending. Remember that all the resources used for this article are always free.</p>



<p>See you in the next article.</p>



<p></p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/01/sending-email-using-oci-email-delivery-service/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6184</post-id>	</item>
		<item>
		<title>Fazendo Backup do seu sistema usando Object Storage (OCI).</title>
		<link>https://www.dbadutra.com/2024/01/fazendo-backup-do-seu-sistema-usando-object-storage-oci/</link>
					<comments>https://www.dbadutra.com/2024/01/fazendo-backup-do-seu-sistema-usando-object-storage-oci/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Tue, 02 Jan 2024 18:22:08 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Backup]]></category>
		<category><![CDATA[Object Storage]]></category>
		<category><![CDATA[OCI]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6163</guid>

					<description><![CDATA[Hoje iremos implementar um sistema de backup usando Object Storage, que pode ser usado para diversos propositos. No meu caso como migrei meu blog para OCI, estou utilizando este recurso para fazer backup do banco de dados, site e do painel de administração. Começamos criando uma compute instance no OCI em uma sub-rede Virtual Cloud [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Hoje iremos implementar um sistema de backup usando Object Storage, que pode ser usado para diversos propositos. No meu caso como migrei meu blog para OCI, estou utilizando este recurso para fazer backup do banco de dados, site e do painel de administração.</p>



<p>Começamos criando uma compute instance no OCI em uma sub-rede Virtual Cloud Network (VCN) onde temos acesso SSH, seja via Internet Gateway ou um canal privado. Esta VCN deve ter um Gateway de Serviço que permitirá acesso privado à Oracle Services Network para fins de acesso ao Object Storage. Estou usando o Oracle Linux 8 em ARM de baixo custo para minha implantação. Você pode alterar o formato dependendo das necessidades desejadas.</p>



<p>Ja fiz um artigo sobre isso “<a href="https://www.dbadutra.com/2019/05/creating-a-compute-instance-on-oracle-oci/">Criando um Compute Instance</a>”</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image.png"><img loading="lazy" decoding="async" width="975" height="89" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image.png" alt="" class="wp-image-6164" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-300x27.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-768x70.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Crie o bucket que vamos usar para armazenar nossos dados. Deve ser do tipo Armazenamento padrão. Certifique-se de que esteja definido como privado, a menos que você queira armazenar também os dados de outras pessoas.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-1.png"><img loading="lazy" decoding="async" width="975" height="307" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-1.png" alt="" class="wp-image-6165" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-1.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-1-300x94.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-1-768x242.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-2.png"><img loading="lazy" decoding="async" width="975" height="633" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-2.png" alt="" class="wp-image-6166" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-2.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-2-300x195.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-2-768x499.png 768w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-2-190x122.png 190w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Precismos usar Grupos Dinâmicos para atribuir à nossa instância um Instance Principal e, em seguida, escrever políticas para permitir que ela funcione com nosso novo bucket.</p>



<p>Criando um Dynamic Group</p>



<p>Criamos um grupo dinâmico para vincular políticas à nossa instância. Neste exemplo, estamos usando apenas uma instância, portanto identificamos essa instância pelo OCID.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-3.png"><img loading="lazy" decoding="async" width="975" height="308" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-3.png" alt="" class="wp-image-6167" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-3.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-3-300x95.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-3-768x243.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full is-resized"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-4.png"><img loading="lazy" decoding="async" width="975" height="558" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-4.png" alt="" class="wp-image-6168" style="width:840px;height:auto" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-4.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-4-300x172.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-4-768x440.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>A seguir, vamos vincular nosso Dynamic Group a um conjunto de permissões usando uma Política.</p>



<p>Criando uma Politica para acesso ao Object Storage.</p>



<p>É aqui que atribuímos permissões aos membros do Dynamic Group que acabamos de criar. Criaremos uma política com uma instrução que permite que a instância que executa o backup interaja com o bucket específico que queremos montar.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-5.png"><img loading="lazy" decoding="async" width="975" height="555" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-5.png" alt="" class="wp-image-6169" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-5.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-5-300x171.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-5-768x437.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-6.png"><img loading="lazy" decoding="async" width="975" height="271" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-6.png" alt="" class="wp-image-6170" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-6.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-6-300x83.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-6-768x213.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Temos tudo setado para que possamos fazer a instalação no Linux e configurar a ferramenta rclone para que possamos ter acesso ao Object Storage.</p>



<p>Instalando pacotes e arquivo de configuração.</p>



<p>Faremos SSH em nossa instância usando o usuário opc com acesso sudo. A partir daí, instalaremos o rclone e o fuse:</p>



<pre class="wp-block-preformatted">[opc@vm-blog var]$ sudo yum-config-manager --enable ol8_developer &amp;&amp; sudo yum install -y rclone fuse fuse3
Oracle Linux 8 Development Packages (aarch64)                                                                                                                         134 MB/s | 108 MB     00:00
Last metadata expiration check: 0:00:31 ago on Wed 13 Dec 2023 09:18:37 PM GMT.
Package fuse3-3.3.0-17.0.1.el8.aarch64 is already installed.
Dependencies resolved.
======================================================================================================================================================================================================
 Package                                   Architecture                               Version                                              Repository                                            Size
======================================================================================================================================================================================================
Installing:
 fuse                                      aarch64                                    2.9.7-17.0.1.el8                                     ol8_baseos_latest                                     81 k
 rclone                                    aarch64                                    1.65.0-1.0.1.el8                                     ol8_developer                                         19 M

Transaction Summary
======================================================================================================================================================================================================
Install  2 Packages

Total download size: 19 M
Installed size: 76 M
Downloading Packages:
(1/2): fuse-2.9.7-17.0.1.el8.aarch64.rpm                                                                                                                              2.3 MB/s |  81 kB     00:00
(2/2): rclone-1.65.0-1.0.1.el8.aarch64.rpm                                                                                                                             95 MB/s |  19 MB     00:00
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                  94 MB/s |  19 MB     00:00
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                                                                                                              1/1
  Installing       : rclone-1.65.0-1.0.1.el8.aarch64                                                                                                                                              1/2
  Installing       : fuse-2.9.7-17.0.1.el8.aarch64                                                                                                                                                2/2
  Running scriptlet: fuse-2.9.7-17.0.1.el8.aarch64                                                                                                                                                2/2
  Verifying        : fuse-2.9.7-17.0.1.el8.aarch64                                                                                                                                                1/2
  Verifying        : rclone-1.65.0-1.0.1.el8.aarch64                                                                                                                                              2/2

Installed:
  fuse-2.9.7-17.0.1.el8.aarch64                                                                    rclone-1.65.0-1.0.1.el8.aarch64

Complete!
[opc@vm-blog var]$
</pre>



<p>A seguir, criaremos um link simbolico para o diretorio <em>/usr/bin </em>directory:</p>



<pre class="wp-block-preformatted">[opc@vm-blog var]$ sudo ln -s /usr/bin/rclone /sbin/mount.rclone
[opc@vm-blog var]$
</pre>



<p>Crie um diretório para rclone em /etc/rclone e use o editor de sua preferência para criar um /etc/rclone/rclone.conf</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-7.png"><img loading="lazy" decoding="async" width="975" height="134" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-7.png" alt="" class="wp-image-6171" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-7.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-7-300x41.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-7-768x106.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<p>Teste da instalação</p>



<p>A execução dos seguintes comandos montará o sistema de arquivos remoto (Object Storage):</p>



<pre class="wp-block-preformatted">sudo mkdir -p /backup</pre>



<p>Depois que nosso local de montagem for criado:</p>



<pre class="wp-block-preformatted">[root@vm-blog rclone]# sudo rclone mount \
>     backup:blog_backup /backup\
>     --allow-other \
>     --cache-dir /tmp/rclone/cache \
>     --config /etc/rclone/rclone.conf \
>     --dir-perms 0770 \
>     --file-perms 0660 \
>     --log-file /var/log/rclone.log \
>     --log-level ERROR \
>     --tpslimit 50  \
>     --umask 0117 \
>     --vfs-cache-mode writes \
>     --vfs-fast-fingerprint &amp;
[1] 73993

</pre>



<p>A seguir, vamos montar o storage editando nosso /etc/fstab (ponto de monagem deve ser um diretório existente):</p>



<pre class="wp-block-preformatted">
backup:blog_backup /backup rclone rw,umask=0117,nofail,_netdev,args2env,config=/etc/rclone/rclone.conf,uid=1000,gid=1000,file_perms=0760,dir_perms=0770,allow_other,vfs_cache_mode=writes,cache_dir=/tmp/rclone/cache 0 0
</pre>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-8.png"><img loading="lazy" decoding="async" width="975" height="318" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-8.png" alt="" class="wp-image-6172" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-8.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-8-300x98.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-8-768x250.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Depois que seu fstab for editado:</p>



<pre class="wp-block-preformatted">[root@vm-blog /]# sudo mount -av
/                        : ignored
/boot                    : already mounted
/boot/efi                : already mounted
/var/oled                : already mounted
/dev/shm                 : already mounted
none                     : ignored
/backup                  : already mounted
[root@vm-blog /]#
</pre>



<p>Para este teste configurei o diretório de backup padrão para banco de dados e servidor Web no Object Storage.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-9.png"><img loading="lazy" decoding="async" width="975" height="76" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-9.png" alt="" class="wp-image-6173" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-9.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-9-300x23.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-9-768x60.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p></p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-10.png"><img loading="lazy" decoding="async" width="975" height="620" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-10.png" alt="" class="wp-image-6174" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-10.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-300x191.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-768x488.png 768w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-190x122.png 190w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-120x76.png 120w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-265x168.png 265w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-284x180.png 284w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-274x173.png 274w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-10-220x140.png 220w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-11.png"><img loading="lazy" decoding="async" width="975" height="679" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-11.png" alt="" class="wp-image-6175" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-11.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-11-300x209.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-11-768x535.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Podemos ver aqui que os backups foram gerados no /backup.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-12.png"><img loading="lazy" decoding="async" width="975" height="384" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-12.png" alt="" class="wp-image-6176" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-12.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-12-300x118.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-12-768x302.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Aqui podemos confirmar que os objetos estão no bucket e sincronizados com o arquivos que foram gerados no servidor pelo backup.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-13.png"><img loading="lazy" decoding="async" width="975" height="402" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-13.png" alt="" class="wp-image-6177" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-13.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-13-300x124.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-13-768x317.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-14.png"><img loading="lazy" decoding="async" width="975" height="389" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-14.png" alt="" class="wp-image-6178" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-14.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-14-300x120.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-14-768x306.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2024/01/image-15.png"><img loading="lazy" decoding="async" width="975" height="408" src="https://www.dbadutra.com/wp-content/uploads/2024/01/image-15.png" alt="" class="wp-image-6179" srcset="https://www.dbadutra.com/wp-content/uploads/2024/01/image-15.png 975w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-15-300x126.png 300w, https://www.dbadutra.com/wp-content/uploads/2024/01/image-15-768x321.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Espero que este artigo possa te auxiliar em uma solução simples e sincronizada para seus backups, lembrando que todos os recursos utilizados para este artigos são <a href="https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm">Always Free</a>. </p>



<p></p>



<p>Te vejo em um próximo artigo.<br></p>



<p>Até a próxima.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2024/01/fazendo-backup-do-seu-sistema-usando-object-storage-oci/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6163</post-id>	</item>
		<item>
		<title>Refresh database from Data Guard</title>
		<link>https://www.dbadutra.com/2023/12/refresh-database-from-data-guard/</link>
					<comments>https://www.dbadutra.com/2023/12/refresh-database-from-data-guard/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Wed, 13 Dec 2023 20:17:28 +0000</pubDate>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[Dataguard]]></category>
		<category><![CDATA[Refresh]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6150</guid>

					<description><![CDATA[My client asked me for help. He needs to update the DEV environment every month The current process (using export-import) takes a few days. To reduce the time, an alternative approach was implemented The new procedure should considerably reduce the refresh time considerably to a few hours. 1         Pre-Requirements 2         Preparation Standby preparation Check if [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>My client asked me for help. He needs to update the DEV environment every month</p>



<p>The current process (using export-import) takes a few days.</p>



<p>To reduce the time, an alternative approach was implemented</p>



<ul class="wp-block-list">
<li>Replicate constantly all production changes to a standby database.&nbsp;&nbsp; This is achieved using Data Guard</li>



<li>For the refresh<ul><li>Stop synchronization</li></ul><ul><li>Drop old DEV databases</li></ul><ul><li>Create new DEV databases by cloning from the standby database</li></ul>
<ul class="wp-block-list">
<li>Restart synchronization</li>
</ul>
</li>
</ul>



<p>The new procedure should considerably reduce the refresh time considerably to a few hours.</p>



<h4 class="wp-block-heading"><a>1         Pre-Requirements</a></h4>



<ul class="wp-block-list">
<li>Oracle version and Patch Level on Primary and Secondary should be same.</li>



<li>Db_unique_name on standby and primary database should be different in order to used in DG_CONFIG setting of the LOG_ARCHIVE_CONFIG parameter.</li>
</ul>



<h4 class="wp-block-heading"><a>2         Preparation</a></h4>



<p></p>



<h4 class="wp-block-heading"><a><strong>Standby preparation</strong></a></h4>



<p>Check if standby is in sync with primary</p>



<pre class="wp-block-preformatted">****** To check archivelog apply lag

SELECT al.thrd "Thread", almax "Last Seq Received", lhmax "Last Seq Applied" FROM
(select thread# thrd, MAX(sequence#) almax FROM v$archived_log WHERE resetlogs_change#=(SELECT resetlogs_change#
FROM v$database) GROUP BY thread#) al, (SELECT thread# thrd, MAX(sequence#) lhmax FROM v$log_history
WHERE resetlogs_change#=(SELECT resetlogs_change# FROM v$database) GROUP BY thread#) lh WHERE al.thrd = lh.thrd;

</pre>



<p>Convert standby in snapshot standby</p>



<pre class="wp-block-preformatted">

shutdown immediate
startup mount
alter database convert to snapshot standby;
alter database open;

<a><strong> </strong></a></pre>



<p><a><strong>Create DB links between Standby and DEV</strong></a></p>



<pre class="wp-block-preformatted">---- Standby

alter pluggable database ALL open read only;
CREATE USER c##r_clone identified by Oracle23 CONTAINER=ALL;
GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE, SYSOPER, RESOURCE, CREATE ANY TABLE, UNLIMITED TABLESPACE TO  c##r_clone CONTAINER=ALL;
GRANT DBA to c##r_clone;

CREATE DATABASE LINK refresh_link CONNECT TO c##r_clone identified by Oracle23 using 'DUTSD'; 

----- Dev Database

CREATE DATABASE LINK refresh_link CONNECT TO c##r_clone identified by Oracle23 using 'DUTSST';

alter pluggable database ALL open read only;
CREATE USER c##r_clone identified by Oracle23 CONTAINER=ALL;
GRANT CREATE SESSION, CREATE PLUGGABLE DATABASE, SYSOPER, RESOURCE, CREATE ANY TABLE, UNLIMITED TABLESPACE TO  c##r_clone CONTAINER=ALL;
GRANT DBA to c##r_clone;

</pre>



<p><a><strong>Cleanup old PDB&#8217;s in DUTSD</strong></a></p>



<pre class="wp-block-preformatted">####### DROP OLD PDB - DUTSD
Show pdbs; 

ALTER PLUGGABLE DATABASE &lt;PDBNAME> CLOSE;
DROP PLUGGABLE DATABASE &lt;PDBNAME> INCLUDING DATAFILES;
</pre>



<h4 class="wp-block-heading"><a>3   Clone PDBs</a></h4>



<p>The files of standby were created using OMF convention.&nbsp;&nbsp; For this reason the database files need to be converted from</p>



<p>+DATA01/DUTSD/&lt;GUID&gt;/DATAFILE/&lt;file&gt;.&lt;id&gt;&nbsp; to</p>



<p>+DATA01/DUTSST/DATAFILE/&lt;file&gt;.dbf&#8217;</p>



<p><a><strong>Clone DUTSD</strong></a></p>



<pre class="wp-block-preformatted">CREATE PLUGGABLE DATABASE DUTSD FROM DUTSD@refresh_link storage unlimited tempfile reuse 
file_name_convert=('+DATA01/DUTSD/CCA899613E3D0713E0531114C30A2022/DATAFILE/duts01.474.1147957609','+DATA01/DUTSST/DATAFILE/duts01.dbf',
'+DATA01/DUTSD/CCA899613E3D0713E0531114C30A2022/DATAFILE/duts02.269.1147957617','+DATA01/DUTSST/ /DATAFILE/duts02.dbf') 
keystore identified by "Duts23" parallel 6;
</pre>



<h4 class="wp-block-heading"><a>4   Finalize the refresh</a></h4>



<pre class="wp-block-preformatted">. oraenv
sqlplus / as sysdba
shutdown immediate

startup mount


</pre>



<p><a><strong>Restore datafiles permissions</strong></a></p>



<pre class="wp-block-preformatted">
exec dbms_dnfs.restore_datafile_permissions('&lt;CDBNAME>');

</pre>



<p><a><strong>Convert the snapshot back to physical standby</strong></a></p>



<pre class="wp-block-preformatted">show pdbs
alter database convert to physical standby;
shutdown immediate
startup
</pre>



<p>See you soon in other articles.</p>



<p>Stay tuned by following us on Twitter @aontalba and Linkedin.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.”</strong></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2023/12/refresh-database-from-data-guard/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6150</post-id>	</item>
		<item>
		<title>OSWatcher como instalar e usar</title>
		<link>https://www.dbadutra.com/2023/12/oswatcher-como-instalar-e-usar/</link>
					<comments>https://www.dbadutra.com/2023/12/oswatcher-como-instalar-e-usar/#respond</comments>
		
		<dc:creator><![CDATA[André Luiz Dutra Ontalba]]></dc:creator>
		<pubDate>Tue, 12 Dec 2023 21:49:17 +0000</pubDate>
				<category><![CDATA[Database]]></category>
		<guid isPermaLink="false">https://www.dbadutra.com/?p=6142</guid>

					<description><![CDATA[Estou com um problem em um compute instance no OCI, e o support me solicitou um OSWatcher para analisar o ambiente. Diante disso como eu não tinha nenhum documento facilitando uma busca rápida, resolvi escrever este post para pode ajudar outras pessoas que no momento de necessitarem de uma consulta rápida não precisem ficar se [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>Estou com um problem em um compute instance no OCI, e o support me solicitou um OSWatcher para analisar o ambiente.</p>



<p><br>Diante disso como eu não tinha nenhum documento facilitando uma busca rápida, resolvi escrever este post para pode ajudar outras pessoas que no momento de necessitarem de uma consulta rápida não precisem ficar se matando para achar as informações.</p>



<p>Vamos lá para nossa instalação.</p>



<p>Relatórios de desempenho do Oracle OSWatcher</p>



<p>A ferramenta OSWatcher é uma ferramenta muito interessante que coleta e mantém dados estatísticos dos recursos do sistema operacional periodicamente e nos reporta. Você pode baixar e usar o software OSWatcher do suporte Oracle.</p>



<p><strong>OSWatcher (Doc ID 301137.1)</strong></p>



<p><strong>OS Watcher User&#8217;s Guide (Doc ID 1531223.1)</strong></p>



<p>A ferramenta OSWatcher executa alguns comandos como TOP, iostat, vmstat, netstat em determinados intervalos e mantém esses dados no servidor.</p>



<p>Instalação do OSWatcher</p>



<p>Passo 1: Baixe o OSWatcher e extraia-o conforme a seguir.</p>



<pre class="wp-block-preformatted">[opc@vm-blog oswbb]$ ll
total 5132
-rw-rw-r-- 1 opc opc 5253120 Dec 12 20:49 oswbb840.tar
[opc@vm-blog oswbb]$
[opc@vm-blog oswbb]$ tar -xvf oswbb840.tar
oswbb/
oswbb/uncpr.bat
oswbb/sarsub.sh
oswbb/psmemsub.sh
oswbb/stopOSWbb.sh
oswbb/analysis/
oswbb/piddsub.sh
oswbb/arpsub.sh
oswbb/docs/
oswbb/docs/OSWatcher/
oswbb/docs/OSWatcher/oswbb_README.txt
oswbb/docs/OSWatcher/RAC_Traceroute_Automation_Readme.txt
oswbb/docs/OSWatcher/OSWatcherUserGuide.html
oswbb/docs/The_Analyzer/
oswbb/docs/The_Analyzer/AnalyzerUserGuide.html
oswbb/docs/The_Analyzer/oswbba_README.txt
oswbb/docs/OSWatcherOverview_840.pdf
oswbb/Exampleprivate.net
oswbb/tmp/
oswbb/oswbba.jar
oswbb/oswib.sh
oswbb/ltop.sh
oswbb/archive/
oswbb/oswnet.sh
oswbb/call_uptime.sh
oswbb/OSWatcher.sh
oswbb/vmsub.sh
oswbb/pidsub.sh
oswbb/src/
oswbb/src/js/
oswbb/src/js/bootstrap.js
oswbb/src/js/modernizr.js
oswbb/src/js/jquery-2.1.4.min.js
oswbb/src/js/THIRDPARTYLICENSE.txt
oswbb/src/js/jquery.lightbox.js
oswbb/src/js/tabs.js
oswbb/src/js/scripts.js
oswbb/src/js/templatemo_custom.js
oswbb/src/Thumbs.db
oswbb/src/fonts/
oswbb/src/fonts/FontAwesome.otf
oswbb/src/fonts/fontawesome-webfont.woff
oswbb/src/fonts/fontawesome-webfont.woff2
oswbb/src/fonts/fontawesome-webfont.eot
oswbb/src/fonts/fontawesome-webfont.ttf
oswbb/src/fonts/fontawesome-webfont.svg
oswbb/src/META-INF/
oswbb/src/META-INF/application-client.xml
oswbb/src/images/
oswbb/src/images/Thumbnail_Placeholder.png
oswbb/src/images/next.png
oswbb/src/images/bx_loader.gif
oswbb/src/images/close.png
oswbb/src/images/loading.gif
oswbb/src/images/previous.png
oswbb/src/css/
oswbb/src/css/templatemo_misc.css
oswbb/src/css/bootstrap.min.css
oswbb/src/css/style.css
oswbb/src/css/font-awesome.min.css
oswbb/src/css/templatemo_style.css
oswbb/src/css/animate.css
oswbb/src/pro.htm
oswbb/src/oswbba_input.txt
oswbb/topaix.sh
oswbb/xensub.sh
oswbb/iosub.sh
oswbb/oswsub.sh
oswbb/nfssub.sh
oswbb/xtop.sh
oswbb/genprvnet.sh
oswbb/oswrds.sh
oswbb/call_sar.sh
oswbb/call_du.sh
oswbb/ifconfigsub.sh
oswbb/mpsub.sh
oswbb/Example_extras.txt
oswbb/locks/
oswbb/OSWatcherFM.sh
oswbb/tar_up_partial_archive.sh
oswbb/data/
oswbb/tar_up_full_archive.sh
oswbb/gif/
oswbb/startOSWbb.sh
[opc@vm-blog oswbb]$

O conteúdo do OSWatcher é o seguinte.

[opc@vm-blog oswbb]$ cd oswbb/
[opc@vm-blog oswbb]$ ll
total 472
drwxr-xr-x 2 opc opc      6 Nov 19  2019 analysis
drwxr-xr-x 2 opc opc      6 Nov 19  2019 archive
-rwxrwxr-x 1 opc opc    546 Jul 15  2019 arpsub.sh
-rwxrwxr-x 1 opc opc     67 Jul 15  2019 call_du.sh
-rwxrwxr-x 1 opc opc     68 Jul 15  2019 call_sar.sh
-rwxrwxr-x 1 opc opc     71 Jul 15  2019 call_uptime.sh
drwxrwxr-x 2 opc opc      6 Nov 19  2019 data
drwxrwxr-x 4 opc opc     76 Nov 19  2019 docs
-rwxrwxr-x 1 opc opc    665 Jul 15  2019 Example_extras.txt
-rwxrwxr-x 1 opc opc   1864 Jul 15  2019 Exampleprivate.net
-rwxrwxr-x 1 opc opc   3990 Jul 15  2019 genprvnet.sh
drwxrwxr-x 2 opc opc      6 Nov 19  2019 gif
-rwxrwxr-x 1 opc opc    795 Jul 15  2019 ifconfigsub.sh
-rwxrwxr-x 1 opc opc    743 Jul 15  2019 iosub.sh
drwxrwxr-x 2 opc opc      6 Nov 19  2019 locks
-rwxrwxr-x 1 opc opc   1507 Jul 15  2019 ltop.sh
-rwxrwxr-x 1 opc opc    542 Jul 15  2019 mpsub.sh
-rwxrwxr-x 1 opc opc    745 Jul 15  2019 nfssub.sh
-rwxrwxr-x 1 opc opc   8035 Jul 15  2019 OSWatcherFM.sh
-rwxrwxr-x 1 opc opc  55817 Nov 19  2019 OSWatcher.sh
-rw-r--r-- 1 opc opc 289876 Nov 19  2019 oswbba.jar
-rwxrwxr-x 1 opc opc    414 Jul 15  2019 oswib.sh
-rwxrwxr-x 1 opc opc    579 Jul 15  2019 oswnet.sh
-rwxrwxr-x 1 opc opc    825 Jul 15  2019 oswrds.sh
-rwxrwxr-x 1 opc opc    524 Jul 15  2019 oswsub.sh
-rwxrwxr-x 1 opc opc    561 Jul 15  2019 piddsub.sh
-rwxrwxr-x 1 opc opc    565 Jul 15  2019 pidsub.sh
-rwxrwxr-x 1 opc opc   1481 Jul 15  2019 psmemsub.sh
-rwxrwxr-x 1 opc opc    557 Jul 15  2019 sarsub.sh
drwxrwxr-x 7 opc opc    126 Nov 19  2019 src
-rwxrwxr-x 1 opc opc   2574 Jul 15  2019 startOSWbb.sh
-rwxrwxr-x 1 opc opc    752 Jul 15  2019 stopOSWbb.sh
-rwxrwxr-x 1 opc opc    819 Jul 15  2019 tar_up_full_archive.sh
-rwxrwxr-x 1 opc opc   8234 Jul 15  2019 tar_up_partial_archive.sh
drwxr-xr-x 2 opc opc      6 Nov 19  2019 tmp
-rwxrwxr-x 1 opc opc    527 Jul 15  2019 topaix.sh
-rwxrwxr-x 1 opc opc    414 Nov 13  2019 uncpr.bat
-rwxrwxr-x 1 opc opc    545 Jul 15  2019 vmsub.sh
-rwxrwxr-x 1 opc opc    571 Jul 15  2019 xensub.sh
-rwxrwxr-x 1 opc opc   1486 Jul 15  2019 xtop.sh
[opc@vm-blog oswbb]$
</pre>



<p><strong>Passo 2:</strong>   Para iniciar a ferramenta OSWatcher, execute startOSWbb.sh como a seguir.</p>



<pre class="wp-block-preformatted">startOSW.sh &lt;SnapshotInterval > &lt;ArchiveInterval></pre>



<p>Por exemplo; Se iniciarmos o OSWatcher como sh startOSWbb.sh 60 10, então o OSWatcher vai coletar dados a cada 60 segundos e manterá esses dados por 10 horas.</p>



<p>Por default ele inicia a coleta com intervalo de 30 segundos e mantém os logs por 48 horas.</p>



<pre class="wp-block-preformatted">opc@vm-blog oswbb]$
Info...You did not enter a value for snapshotInterval.
Info...Using default value = 30
Info...You did not enter a value for archiveInterval.
Info...Using default value = 48
Setting the archive log directory to/oswbb/oswbb/archive

Testing for discovery of OS Utilities...
VMSTAT found on your system.
IOSTAT found on your system.
MPSTAT found on your system.
IP found on your system.
TOP found on your system.
Warning... /proc/slabinfo not found on your system. Check to see if this user has permission to access this file.
PIDSTAT found on your system.
NFSIOSTAT found on your system.
Warning... TRACEROUTE not found on your system. No TRACEROUTE data will be collected.

Discovery of CPU CORE COUNT
CPU CORE COUNT will be used by oswbba to automatically look for cpu problems

CPU CORE COUNT = 4
VCPUS/THREADS = 4

Discovery completed.

Starting OSWatcher v8.4.0  on Tue Dec 12 21:02:21 GMT 2023
With SnapshotInterval = 30
With ArchiveInterval = 48

OSWatcher - Written by Carl Davis, Center of Expertise,
Oracle Corporation
For questions on install/usage please go to MOS (Note:301137.1)

Data is stored in directory: /oswbb/oswbb/archive

Starting Data Collection...

oswbb heartbeat:Tue Dec 12 21:02:26 GMT 2023
oswbb heartbeat:Tue Dec 12 21:02:56 GMT 2023
</pre>



<p>Você pode parar o OSWatcher através do comando</p>



<pre class="wp-block-preformatted">[opc@vm-blog oswbb]$ ./stopOSWbb.sh
[opc@vm-blog oswbb]$
</pre>



<p>Agora podemos analisar os dados</p>



<pre class="wp-block-preformatted">[opc@vm-blog oswbb]$ java -jar oswbba.jar -i archive

Starting OSW Analyzer V8.4.0
OSWatcher Analyzer Written by Oracle Center of Expertise
Copyright (c)  2019 by Oracle Corporation

Parsing Data. Please Wait...

Scanning file headers for version and platform info...


Parsing file vm-blog_pidstat_23.12.12.2100.dat ...

Parsing file vm-blog_iostat_23.12.12.2100.dat ...
This directory already exists. Rewriting...

Parsing file vm-blog_vmstat_23.12.12.2100.dat ...

Parsing file vm-blog_netstat_23.12.12.2100.dat ...

Parsing file vm-blog_top_23.12.12.2100.dat ...

Parsing file vm-blog_ps_23.12.12.2100.dat ...


Parsing Completed.


Enter 1 to Display CPU Process Queue Graphs
Enter 2 to Display CPU Utilization Graphs
Enter 3 to Display CPU Other Graphs
Enter 4 to Display Memory Graphs
Enter 5 to Display Disk IO Graphs
Enter 61 to Display Individual OS Process I/O RPS Graphs
Enter 62 to Display Individual OS Process I/O WPS Graphs
Enter 63 to Display Individual OS Process Percent User CPU Graphs
Enter 64 to Display Individual OS Process Percent System CPU Graphs
Enter 65 to Display Individual OS Process Percent Total CPU (User + System) Graphs
Enter 66 to Display Individual OS Process Percent Memory Graphs

Enter GP to Generate Individual Process Profile
Enter GC to Generate All CPU Gif Files
Enter GM to Generate All Memory Gif Files
Enter GD to Generate All Disk Gif Files
Enter GN to Generate All Network Gif Files

Enter L to Specify Alternate Location of Gif Directory
Enter Z to Zoom Graph Time Scale (Does not change analysis dataset)
Enter B to Returns to Baseline Graph Time Scale (Does not change analysis dataset)
Enter R to Remove Currently Displayed Graphs

Enter X to Export Parsed Data to Flat File
Enter S to Analyze Subset of Data(Changes analysis dataset including graph time scale)
Enter A to Analyze Data
Enter D to Generate DashBoard

Enter Q to Quit Program
</pre>



<p>Para este exemplo selecionei a opção 1</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2023/12/image-3.png"><img loading="lazy" decoding="async" width="975" height="299" src="https://www.dbadutra.com/wp-content/uploads/2023/12/image-3.png" alt="" class="wp-image-6144" srcset="https://www.dbadutra.com/wp-content/uploads/2023/12/image-3.png 975w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-3-300x92.png 300w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-3-768x236.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Para este exemplo selecionei a opção</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2023/12/image-4.png"><img loading="lazy" decoding="async" width="975" height="296" src="https://www.dbadutra.com/wp-content/uploads/2023/12/image-4.png" alt="" class="wp-image-6145" srcset="https://www.dbadutra.com/wp-content/uploads/2023/12/image-4.png 975w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-4-300x91.png 300w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-4-768x233.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Também podemos gerar um Dashboard para analise.</p>



<pre class="wp-block-preformatted">Please Select an Option:D
Enter a unique analysis/dashboard directory name or enter &lt;CR> to accept default name:

A new analysis file analysis/vm-blog_Dec12050009_1702416975/analysis.txt has been created.

Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Run_Queue.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Run_Adjusted_Queue.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Block_Queue.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_HB.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_PS_Processes.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_Idle.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_Util.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_System.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_User.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_Wa.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_Interrupts.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Context_Switches.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Memory_Swap.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Memory_Free.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Memory_Page_In_Rate.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Memory_Page_Out_Rate.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Cpu_Wa.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_Block_Queue.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_ST.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_AW.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_PB.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_RPS.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_WPS.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_OS_IO_TPS.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_rx_ok.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_rx_err.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_rx_drp.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_rx_ovr.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_tx_ok.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_tx_err.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_tx_drp.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ lo_tx_ovr.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_rx_ok.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_rx_err.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_rx_drp.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_rx_ovr.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_tx_ok.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_tx_err.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_tx_drp.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_link_ enp0s6_tx_ovr.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpOutRequests.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpInReceives.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpFragCreates.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpFragOKs.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpInDiscards.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_IpReasmFails.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_ip_fragments_in_rate.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_ip_fragments_out_rate.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpInDatagrams.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpOutDatagrams.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpInErrors.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpInCsumErrors.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpRcvbufErrors.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_UdpSndbufErrors.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpInSegs.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpOutSegs.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpRetransSegs.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpOutRsts.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpEstabResets.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_TcpAttemptFails.jpg
Generating file analysis/vm-blog_Dec12050009_1702416975/dashboard/generated_files/OSWg_tcp_retran_error_rate.jpg

Files written to the analysis directory.

</pre>



<p>Onde é Gerado um relatório no final da analise.</p>



<figure class="wp-block-image size-full"><a href="https://www.dbadutra.com/wp-content/uploads/2023/12/image-5.png"><img loading="lazy" decoding="async" width="975" height="506" src="https://www.dbadutra.com/wp-content/uploads/2023/12/image-5.png" alt="" class="wp-image-6146" srcset="https://www.dbadutra.com/wp-content/uploads/2023/12/image-5.png 975w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-5-300x156.png 300w, https://www.dbadutra.com/wp-content/uploads/2023/12/image-5-768x399.png 768w" sizes="(max-width: 975px) 100vw, 975px" /></a></figure>



<p>Espero que isso possa te ajudar em algum momento.<br><br>Até a próxima.</p>



<p><strong>Disclaimer: “The postings on this site are my own and do not necessarily represent my current employer positions, strategies, or opinions. The information here was edited to be useful for general purpose, specific data, and identifications was removed to allow reaching a generic audience and to be useful.</strong></p>



<p></p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.dbadutra.com/2023/12/oswatcher-como-instalar-e-usar/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">6142</post-id>	</item>
	</channel>
</rss>
