<?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/"
	>

<channel>
	<title>Sistem ve Veritabanı Yönetimi Archives - GTech</title>
	<atom:link href="https://www.gtech.com.tr/category/sistem-ve-veritabani-yonetimi/feed/" rel="self" type="application/rss+xml" />
	<link>https://www.gtech.com.tr/category/sistem-ve-veritabani-yonetimi/</link>
	<description>AI-Powered Financial Technology &#38; Data Analytics Solutions</description>
	<lastBuildDate>Fri, 14 Aug 2026 12:39:34 +0000</lastBuildDate>
	<language>tr</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://www.gtech.com.tr/wp-content/uploads/2023/07/favicon.png</url>
	<title>Sistem ve Veritabanı Yönetimi Archives - GTech</title>
	<link>https://www.gtech.com.tr/category/sistem-ve-veritabani-yonetimi/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Vagrant Nedir? Vagrant ile Nasıl Sanal Makine Otomasyonu Yapılır?</title>
		<link>https://www.gtech.com.tr/vagrant-nedir-vagrant-ile-nasil-sanal-makine-otomasyonu-yapilir/</link>
					<comments>https://www.gtech.com.tr/vagrant-nedir-vagrant-ile-nasil-sanal-makine-otomasyonu-yapilir/#respond</comments>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Fri, 15 Dec 2023 09:45:46 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/?p=16188</guid>

					<description><![CDATA[<p>Vagrant Nedir? Vagrant Virtualbox, VMWare gibi sanallaştırma teknolojilerinin kullanımını kolaylaştıran bir provisioning aracıdır. Tek bir Vagrantfile dosyası ile bir veya birden fazla sanal makinenin tüm ayarlarını ve kurulum detayları tanımlanıp  kullanılabilir. Vagrant kendi deposundaki Box’lar ile çalışmaktadır. Bu Box&#8217;lara Kaynak: Vagrant Box Arama adresinden ulaşılabilir. Buradaki Box’ların ihtiyaçlar doğrultusunda modifiye edilerek özel olarak oluşturulabilmesi de [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/vagrant-nedir-vagrant-ile-nasil-sanal-makine-otomasyonu-yapilir/">Vagrant Nedir? Vagrant ile Nasıl Sanal Makine Otomasyonu Yapılır?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><span lang="TR">Vagrant Nedir?</span></h2>
<p><strong>Vagrant Virtualbox</strong>, VMWare gibi sanallaştırma teknolojilerinin kullanımını kolaylaştıran bir provisioning aracıdır.</p>
<p>Tek bir <strong>Vagrantfile dosyası</strong> ile bir veya birden fazla sanal makinenin tüm ayarlarını ve kurulum detayları tanımlanıp  kullanılabilir.</p>
<p>Vagrant kendi deposundaki Box’lar ile çalışmaktadır. Bu Box&#8217;lara <a href="https://app.vagrantup.com/boxes/search">Kaynak: Vagrant Box Arama</a> adresinden ulaşılabilir. Buradaki Box’ların ihtiyaçlar doğrultusunda modifiye edilerek özel olarak oluşturulabilmesi de mümkündür.</p>
<p>&nbsp;</p>
<h2><span lang="TR">Vagrantfile Nedir?</span></h2>
<p>Vagrantfile, Vagrant üzerinde yapmakistenilen konfigürasyonlar alıştırmak istenilen scriptlerin yazıldığı .file uzantılı bir dosyadır. <strong>Vagrant kurulumu</strong> tamalandıktan sonra Vagrant bu dosya üzerinden çalıştırmak istenen sanal makineleri ayağa kaldırır.</p>
<p><img decoding="async" class="alignnone size-full wp-image-16191" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture1.jpg" alt="Vagrant.configure yapılandırma kod örneği (Vagrantfile)" width="328" height="120" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture1.jpg 328w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture1-300x110.jpg 300w" sizes="(max-width: 328px) 100vw, 328px" /></p>
<p>&nbsp;</p>
<h2><span lang="TR">Vagrant Kurulumu</span></h2>
<p>Vagrant’ı kullanabilmek için bir adet sanallaştırma yazılımı kullanılması gerekmektedir. Kendi kurulumunuzda <a href="http://www.virtualbox.org/wiki/Downloads">www.virtualbox.org/wiki/Downloads </a>sitesinden indirebileceğiniz <strong>Oracle VirtualBox</strong> ürününü tercih edebilirsiniz. Kullanacağınız işletim sistemi ile uyumlu olan VirtualBox sürümünü indirip kurabilmeniz mümkündür.</p>
<p><img fetchpriority="high" decoding="async" class="alignnone wp-image-16192" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2.jpg" alt="VirtualBox indirme sayfası ekran görüntüsü" width="636" height="252" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2.jpg 1371w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2-300x119.jpg 300w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2-768x304.jpg 768w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2-1024x406.jpg 1024w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture2-416x166.jpg 416w" sizes="(max-width: 636px) 100vw, 636px" /></p>
<p>&nbsp;</p>
<p>Vagrant’ı kendi web sitesi olan <a href="https://developer.hashicorp.com/vagrant/install">Kaynak: HashiCorp – Vagrant Kurulumu</a> adresi üzerinden kurulumunu yapmak istediğiniz işletim sistemini seçerek indirebilirsiniz, örneğin devamında Windows AMD64 sürümü ile devam edilmiştir.</p>
<p><img decoding="async" class="alignnone size-full wp-image-16193" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture3.jpg" alt="Vagrant kurulum sayfası - macOS ve Windows indirme seçenekleri" width="476" height="372" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture3.jpg 476w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture3-300x234.jpg 300w" sizes="(max-width: 476px) 100vw, 476px" /></p>
<p>İndirdiğiniz vagrant_2.4.0_windows_amd64.msi dosyasını çalıştırarak kuruluma geçebilirsiniz. Lisans sözleşmesini kabul edip  ardından Vagrant’ın kurulacağı konumu seçtiğinizde kurulum başlayacaktır.</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-16194" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture4.jpg" alt="Vagrant Windows kurulum sihirbazı ekranı" width="463" height="360" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture4.jpg 605w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture4-300x233.jpg 300w" sizes="(max-width: 463px) 100vw, 463px" /></p>
<p>Kurulum tamamlandıktan sonra bilgisayarınızda herhangi bir konumda bir dizin oluşturabilirsiniz, örnek kullanacağımız  dosya masaüstünde Vagrant adı altında olacak.</p>
<p>Komut istemi üzerinden cd komutu ile Vagrant kurulumunu yapacağımız dizine gidip vagrant init komutu ile kullanacağımız Vagrantfile oluşturulur.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16195" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture5.jpg" alt="Windows komut isteminde 'vagrant init' komutunun çalıştırılması" width="304" height="122" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture5.jpg 304w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture5-300x120.jpg 300w" sizes="(max-width: 304px) 100vw, 304px" /></p>
<p><strong>vagrant init </strong>komutu ile oluşturduğumuz dosyanın içinde # ile kullanılan commentlerin altında temel konfigürasyon ayarlarını görebiliriz.</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-16196" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture7.jpg" alt="Vagrantfile dosyasının metin editöründe görünümü" width="407" height="306" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture7.jpg 468w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture7-300x226.jpg 300w" sizes="(max-width: 407px) 100vw, 407px" /></p>
<p>Buna alternatif olarak <a href="https://vagrantfile-generator.vercel.app/">Kaynak: Vagrantfile Generator Aracı</a> sitesini kullanarak da belli konfigürasyonları belirtip Vagrantfile generate edebilirsiniz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16197" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture8.jpg" alt="Vagrant Cloud işletim sistemi ve sağlayıcı (provider) seçim ekranı" width="392" height="260" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture8.jpg 392w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture8-300x199.jpg 300w" sizes="(max-width: 392px) 100vw, 392px" /></p>
<p>Kullanacağımız Vagrantfile konfigürasyonlarını not defteri üzerinden tamamlandıktan sonra dosyamızı kaydedip çıkıyoruz. Örnek olarak kullanacağımız Vagrantfile aşağıda yer almaktadır.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16198" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture9.jpg" alt="Vagrantfile çoklu sanal makine tanımlama kod örneği" width="310" height="156" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture9.jpg 310w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture9-300x151.jpg 300w" sizes="(max-width: 310px) 100vw, 310px" /></p>
<p>Komut istemi üzerinden Vagrant’ı çalıştıracağımız komuta gidip <strong>vagrant up </strong>komutu ile sanal makine kurulumumuza başlarız.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16199" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture10.jpg" alt="'vagrant up' komutu çalıştırma çıktısı" width="462" height="336" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture10.jpg 462w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture10-300x218.jpg 300w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture10-370x270.jpg 370w" sizes="(max-width: 462px) 100vw, 462px" /></p>
<p>Kurulumumuz tamalandıktan sonra makinemiz VirtualBox üzerinde yer alacaktır.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16200" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture11.jpg" alt="Oracle VM VirtualBox Manager'da çalışan sanal makine ayarları" width="474" height="272" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture11.jpg 474w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture11-300x172.jpg 300w" sizes="(max-width: 474px) 100vw, 474px" /></p>
<p>Komut istemi üzerinden <strong>vagrant-ssh </strong>komutunu kullanarak herhangi bir terminale ihtiyaç duymadan da ssh bağlantısı sağlayabiliriz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16201" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture12.png" alt="'vagrant ssh' komutu ile sanal makineye bağlanma" width="652" height="72" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture12.png 652w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture12-650x72.png 650w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture12-300x33.png 300w" sizes="(max-width: 652px) 100vw, 652px" /></p>
<p>&nbsp;</p>
<h2><span lang="TR">Vagrant ile Sanal Makine Otomasyonu</span></h2>
<p>Vagrantfile kullanarak daha komplike ve otomize makineler yaratmak da mümkündür, aşağıda yer alan script üzerinden bazı  vagrant özelliklerine değineceğiz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16202" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture13.jpg" alt="Çoklu sanal makine ve kalıcı depolama tanımlayan Vagrantfile kod örneği" width="230" height="464" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture13.jpg 230w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture13-149x300.jpg 149w" sizes="(max-width: 230px) 100vw, 230px" /></p>
<p>İlk satırda girdiğimiz config tanımlama satırı sonrasında <strong>config.vm.define &#8216;xxx&#8217; do |xxx| </strong>ile tek bir makine dahilinde konfigürasyon girip makine kurulumu sağlayabiliriz, bu satırı birden fazla farklı makine için tanımlayıp tek bir Vagrantfile ile birden fazla makine kurabiliriz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16204" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture14.jpg" alt="VirtualBox'ta çalışan üç sanal makine listesi (rocky-1, rocky-2, rocky-3)" width="324" height="136" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture14.jpg 324w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture14-300x126.jpg 300w" sizes="(max-width: 324px) 100vw, 324px" /></p>
<p>Vagrant&#8217;lar ihtiyaç doğrultusuna göre plugin de içerebilir.</p>
<p>Örnek olarak VirtualBox&#8217;a disk ekleme, depolama boyutu belirleme, volume group ekleme gibi özellikleri <strong>vagrant plugin install vagrant-persistent-storage </strong>komutunu kullanarak Persistent Storage plugini ile Vagrantfile içerisinde <strong>.persistent_storage </strong>tanımı ile kullanabiliriz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16205" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture15.jpg" alt="'vagrant-persistent-storage' eklentisinin kurulumu" width="432" height="52" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture15.jpg 432w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture15-300x36.jpg 300w" sizes="(max-width: 432px) 100vw, 432px" /></p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16206" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture16.jpg" alt="VirtualBox depolama ayarları - eklenen sanal disk görünümü" width="348" height="76" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture16.jpg 348w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture16-300x66.jpg 300w" sizes="(max-width: 348px) 100vw, 348px" /></p>
<p>Plugin&#8217;e ihtiyaç duymadan, kuracağımız makine içerisinde çalıştırmak için Bash Scriptleri de kullanabiliriz.</p>
<p>Bash Scriptleri;</p>
<p>&lt;makine_tanımı&gt;.vm.provision :shell, :inline =&gt; $&lt;script_adı&gt; ile Vagrantfile içerisinden inline bir şekilde ya da</p>
<p>&lt;makine_tanımı&gt;.vm.provision &#8220;shell&#8221;, path: &#8220;&lt;sh_script_lokasyonu&gt;&#8221; ile dışarıdan bir sh scriptini çağıracak şekilde çalıştırabiliriz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16207" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture17.jpg" alt="Vagrantfile inline shell provisioning script örneği (kullanıcı ve disk yapılandırması)" width="392" height="344" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture17.jpg 392w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture17-300x263.jpg 300w" sizes="(max-width: 392px) 100vw, 392px" /></p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16208" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture18.jpg" alt="Shell provisioning script örneği - kullanıcı, sudo ve LVM disk yapılandırması" width="406" height="162" srcset="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture18.jpg 406w, https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture18-300x120.jpg 300w" sizes="(max-width: 406px) 100vw, 406px" /></p>
<p>Kullandığımız scriptlerde her bir makine için ayrı ayrı userlar oluşturma, /etc/hosts dosyalarını editeleme ve Persistent Storage plugini ile eklediğimiz diskleri makinelere mount etme işlemlerini gerçekleştirebiliyoruz.</p>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-16209" src="https://www.gtech.com.tr/wp-content/uploads/2023/12/Picture19.jpg" alt="Vagrant ile oluşturulan üç sanal makinenin IP adresleri" width="196" height="92" /></p>
<p>Yukarıda belirtildiği gibi, Vagrant, sanallaştırma ve otomasyon süreçlerini basitleştirerek iş akışlarınızı hızlandırır. Ancak, bu süreçler karmaşık ve zaman alıcı olabilir.  Vagrant&#8217;ın kurulumu, konfigürasyonu veya otomasyon süreçleriyle ilgili daha fazla bilgi ve destek için GTech&#8217;in Sistem ve Veritabanı uzmanları ile <a href="https://www.gtech.com.tr/iletisim/">iletişime</a> geçebilirsiniz.</p>
<p>&nbsp;</p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p><script src="moz-extension://08d3e0a1-7190-4425-b769-0418a06c679c/js/app.js" type="text/javascript"></script></p>
<p><script src="moz-extension://08d3e0a1-7190-4425-b769-0418a06c679c/js/app.js" type="text/javascript"></script></p>
<p>The post <a href="https://www.gtech.com.tr/vagrant-nedir-vagrant-ile-nasil-sanal-makine-otomasyonu-yapilir/">Vagrant Nedir? Vagrant ile Nasıl Sanal Makine Otomasyonu Yapılır?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://www.gtech.com.tr/vagrant-nedir-vagrant-ile-nasil-sanal-makine-otomasyonu-yapilir/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>PostgreSQL Buffer Cache Nedir? Nasıl Kurulur?</title>
		<link>https://www.gtech.com.tr/postgresql-buffer-cache-nedir-nasil-kurulur/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Mon, 14 Aug 2023 11:45:17 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/postgresql-buffer-cache-nedir-nasil-kurulur/</guid>

					<description><![CDATA[<p>Pg_buffercache, PostgreSQL üzerinde kullanılan ve sorguların performans analizi için oldukça yararlı olabilen, bir verinin ne kadar önbelleğe alındığını görmenizi sağlayan bir PostgreSQL extension’udur. Eğer belirli bir ilişkinin verileri önbelleğe alındıysa, sorgunuzun verileri almak için doğrudan disk üzerindeki verilere erişmesi gerekmez, bunun yerine çok daha hızlı bir şekilde önbellekten bu verilere erişebilir. Pg_buffercache Nedir? Pg_buffercache, shared [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-buffer-cache-nedir-nasil-kurulur/">PostgreSQL Buffer Cache Nedir? Nasıl Kurulur?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><b>Pg_buffercache</b><span style="font-weight: 400;">, PostgreSQL üzerinde kullanılan ve sorguların performans analizi için oldukça yararlı olabilen, bir verinin ne kadar önbelleğe alındığını görmenizi sağlayan bir PostgreSQL extension’udur. Eğer belirli bir ilişkinin verileri önbelleğe alındıysa, sorgunuzun verileri almak için doğrudan disk üzerindeki verilere erişmesi gerekmez, bunun yerine çok daha hızlı bir şekilde önbellekten bu verilere erişebilir. </span><b>Pg_buffercache Nedir?</b></p>
<p><b>Pg_buffercache</b><span style="font-weight: 400;">, shared buffers içeriğini incelemeyi sağlayan bir PostreSQL extension’udur. Bu extension’u kullanarak belirli bir objenin önbelleğe alınıp alınmadığını anlayabilirsiniz. Ayrıca önbelleğe alma ile alakalı performans sorunlarını gidermenize de yardımcı olabilir.</span></p>
<p><span style="font-weight: 400;"> <img loading="lazy" decoding="async" class="alignnone" src="https://www.gtech.com.tr/wp-content/uploads/2026/07/postgresql-buffer-cache-img1.png" alt="buffercache " width="382" height="397" /></span></p>
<p><b>Pg_buffercache Kurulumu</b></p>
<p><span style="font-weight: 400;">Öncelikle PostgreSQL sunucunuzda contrib paketinin kurulu olması gerekmektedir. Contrip paketi ile birçok PostgreSQL extension’unun source dosyasını sunucunuza almış olursunuz. Daha sonra ise PostgreSQL ile veri tabanına bağlanıp pg_buffercache extension’unu create edebilirsiniz.</span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><span style="font-weight: 400;">  <img loading="lazy" decoding="async" class="alignnone size-large wp-image-8360" src="https://www.gtech.com.tr/wp-content/uploads/2023/09/1-1.jpg" alt="Veri analitiği ve finansal grafikleri temsil eden kavramsal görsel" width="1024" height="105" /></span><b></b></p>
<p><b>Pg_buffercache Kullanımı</b></p>
<p><span style="font-weight: 400;">Spesifik bir tablo için istatistikleri görüntülemeyi deneyeceğiz. Testlerimiz için PostgreSQL veri tabanında employee adında bir tablo oluşturduk ve içerisine bir milyon satırlık insert gerçekleştirdik. İlk adım olarak tablomuzun relfilenode&#8217;unu bulacağız. Tablo ve indeks gibi database objeleri OID’ler üzerinden yönetilirken içerdiği data dosyaları relfilenode değişkeni aracılığıyla yönetilir. Tablo ve indexlerin relfilenode ve OID değeri temelde aynıdır, fakat relfilenode değişkeni TRUNCATE, REINDEX, CLUSTER komutları kullanıldığında değişir. Tablomuzun relfilenode’unu aşağıdaki komutla bulabiliriz:</span></p>
<p><span style="font-weight: 400;"> </span></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">Relfilenode&#8217;u bulduktan sonra, OS cache istatistiklerini aşağıdaki sorgu ile görebiliriz:</span></p>
<p>&nbsp;</p>
<p><span style="font-weight: 400;">Bu komut sonucunda aşağıdaki kolonları göreceğiz:</span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-8363" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/4.png" alt="PostgreSQL buffer cache alan tanımları (bufferid, relblocknumber, isdirty, kullanım sayısı)" width="1024" height="145" /></span></p>
<p><b>Mevcut Veritabanıyla İlişkili Objelerin Kullandığı Buffer (arabellek) Sayısını Görmek</b></p>
<p><span style="font-weight: 400;">Alttaki sorgu ile mevcut veritabanınızda önbelleğe(cache) alınmış top 10 obje için buffer istatistiklerini alabilirsiniz:</span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><img loading="lazy" decoding="async" class="alignnone size-large wp-image-8364" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/5.png" alt="pg_buffercache sorgusu ile en çok buffer kullanan tabloların listesi" width="1024" height="622" /></p>
<p>&nbsp;</p>
<p><b>Veritabanlarının Cache’e (önbellek) Alınmış Block Sayılarını Görmek</b></p>
<p><span style="font-weight: 400;">Aşağıdaki sorgu ile mevcut veritabanınızın ve eğer varsa diğer veritabanlarınızın cache block sayılarını gözlemleyebilirsiniz:</span></p>
<p><span style="font-weight: 400;"> <img loading="lazy" decoding="async" class="alignnone size-large wp-image-8365" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/6.png" alt="Veritabanına göre önbelleğe alınmış blok sayısını gösteren SQL sorgusu" width="1024" height="516" /></span></p>
<p><b>Pg_buffercache Performance Tuning</b></p>
<p><span style="font-weight: 400;">Şimdi örnek bir senaryo ile buffer kullanımının performans üzerindeki etkisini gözlemleyeceğiz. Aşağıdaki örnekte ilk olarak veritabanımızı restart ettikten sonra (cold cache) &#8217;employee&#8217; tablosunun pg_buffercache kullanılarak buffer’a (önbelleğe) alınıp alınmadığını kontrol ettik. Gördüğünüz gibi pg_buffercache çıktısında sıfır kayıt var. </span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><b><img loading="lazy" decoding="async" class="alignnone size-large wp-image-8366" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/7.png" alt="Belirli bir tablo için pg_buffercache sorgusu (0 satır dönen örnek)" width="1024" height="205" /></b><b></b></p>
<p><span style="font-weight: 400;">Daha sonra &#8216;explain analyze&#8217; çalıştırdık ve sorgu 255 ms civarında sürdü. (cold cache)</span></p>
<p><span style="font-weight: 400;"> <img loading="lazy" decoding="async" class="alignnone size-large wp-image-8367" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/8.png" alt="EXPLAIN ANALYZE BUFFERS çıktısı - sorgu planı ve buffer kullanımı" width="1024" height="396" /></span></p>
<p><span style="font-weight: 400;">Daha sonra pg_buffercache kullanarak buffer içeriğini kontrol ettik ve bu sefer tablonun buffer’a alındığını gözlemledik. </span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><b><img loading="lazy" decoding="async" class="alignnone size-large wp-image-8368" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/9.png" alt="Sorgu sonrası pg_buffercache tablosunda dolu buffer kayıtları" width="1024" height="303" /></b></p>
<p><span style="font-weight: 400;">Daha sonra aynı sorguyu tekrar çalıştırdık ve bu sefer 156 ms&#8217;de tamamlandı. (warm cache) </span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-8369" src="https://www.gtech.com.tr/wp-content/uploads/2023/08/10.png" alt="İkinci çalıştırmada EXPLAIN ANALYZE BUFFERS çıktısı - önbellek isabet oranı artışı" width="1024" height="352" /></span><b></b></p>
<p><span style="font-weight: 400;">Bu sonuçlara baktığımızda önbelleğe alınan objeler üzerinde çalıştırılan sorguların çok daha hızlı sonuç döndürdüğünü görebiliriz.</span></p>
<p><span style="font-weight: 400;">Pg_buffercache gibi PostgreSQL özelliklerinin ve uzantılarının etkili bir şekilde kullanımı, veritabanı yönetiminde performansın optimize edilmesi için oldukça önemlidir. </span></p>
<p><span style="font-weight: 400;">GTech olarak, sağlık, bankacılık, telekomünikasyon, perakende, enerji, kamu gibi birçok sektörde sistem ve veritabanı yönetimi hizmeti sunuyoruz. Siz de PostgreSQL üzerinde veri önbellekleme, performans analizi veya diğer konularda daha detaylı bilgi sahibi olmak için <a href="https://www.gtech.com.tr/bize-ulasin/">bizimle iletişime geçebilirsiniz.</a></span></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p><br style="font-weight: 400;" /><br style="font-weight: 400;" /></p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-buffer-cache-nedir-nasil-kurulur/">PostgreSQL Buffer Cache Nedir? Nasıl Kurulur?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PostgreSQL &#8211; Pgbench Nedir? Nasıl Kurulur?</title>
		<link>https://www.gtech.com.tr/postgresql-pgbench-nedir-nasil-kurulur/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Mon, 14 Aug 2023 10:57:47 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/postgresql-pgbench-nedir-nasil-kurulur/</guid>

					<description><![CDATA[<p>Pgbench, PostgreSQL veritabanı üzerinde benchmark testleri yapmamızı sağlayan bir PostreSQL aracıdır. Veritabanı trafiğinin simüle edilmesi ile stres testi yapmamıza olanak sağlar. Bu benchmark testleri ile farklı senaryoları önceden test edip buna uygun konfigürasyon değişikliklerini veya kaynak artırımlarını yapmamız mümkün hale gelir. Bu sebeple pgbench önemli ve kullanışlı bir araçtır. Pgbench ile mevcut sunucudaki veritabanında testler [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-pgbench-nedir-nasil-kurulur/">PostgreSQL &#8211; Pgbench Nedir? Nasıl Kurulur?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><b>Pgbench</b><span style="font-weight: 400;">, PostgreSQL veritabanı üzerinde benchmark testleri yapmamızı sağlayan bir PostreSQL aracıdır. Veritabanı trafiğinin simüle edilmesi ile stres testi yapmamıza olanak sağlar. Bu benchmark testleri ile farklı senaryoları önceden test edip buna uygun konfigürasyon değişikliklerini veya kaynak artırımlarını yapmamız mümkün hale gelir. Bu sebeple pgbench önemli ve kullanışlı bir araçtır. Pgbench ile mevcut sunucudaki veritabanında testler yapılabileceği gibi </span><b>pgpool</b><span style="font-weight: 400;"> üzerinden gidilen node üzerinde de testler yapılabilmektedir. Yazımızın devamında iki örneği de inceledik. </span></p>
<p><b> Ortam Bilgileri</b></p>
<p><span style="font-weight: 400;">192.168.1.35 – pgpool = Bu sunucuda pgpool ve boş bir postgresql veritabanı bulunmaktadır. Bu sunucudan 192.168.1.36 ve 192.168.1.37 sunucularına connection pooling yapılmaktadır. </span></p>
<p><span style="font-weight: 400;">192.168.1.36 – node1  = Primary veritabanının kurulu olduğu node1 sunucu</span></p>
<p><span style="font-weight: 400;">192.168.1.37 – node2  = Replica veritabanının kurulu olduğu node2 sunucu</span></p>
<p><b> Pgbench Kurulumu</b></p>
<p><span style="font-weight: 400;"> 192.168.1.35 – pgpool sunucusunda:</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19150" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-contrib-paketi-yum-kurulumu.png" alt="postgresql-contrib paketinin yum ile kurulumu" width="1024" height="48" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-contrib-paketi-yum-kurulumu.png 1200w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-contrib-paketi-yum-kurulumu-300x14.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-contrib-paketi-yum-kurulumu-1024x48.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-contrib-paketi-yum-kurulumu-768x36.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /> </span></p>
<p><span style="font-weight: 400;"> PostreSQL</span><span style="font-weight: 400;"> contrib paketi ile birlikte pgbench binary dosyaları sunucuya kurulmuş oluyor.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19151" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-komut-konumu-servis-durumu.png" alt="'pgbench' komutunun konumunu ve PostgreSQL servis durumunu kontrol etme" width="1024" height="129" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-komut-konumu-servis-durumu.png 1202w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-komut-konumu-servis-durumu-300x38.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-komut-konumu-servis-durumu-1024x129.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-komut-konumu-servis-durumu-768x97.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Sunucuda PostreSQL servisinin ayakta olduğundan emin olup psql ile veritabanına bağlanıp pgbench testlerini yapacağımız </span><b>example</b><span style="font-weight: 400;"> veritabanımızı oluşturacağız.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19152" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-psql-veritabani-listesi.png" alt="psql'de '\list' komutu ile veritabanlarının listelenmesi" width="1024" height="420" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-psql-veritabani-listesi.png 1208w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-psql-veritabani-listesi-300x123.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-psql-veritabani-listesi-1024x420.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-psql-veritabani-listesi-768x315.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;">(3 rows)</span></p>
<p><span style="font-weight: 400;"> <img loading="lazy" decoding="async" class="alignnone size-large wp-image-19153" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-create-database-example.png" alt="'CREATE DATABASE example' komutu ve oluşturulan veritabanının listede görünmesi" width="1024" height="480" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-create-database-example.png 1200w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-create-database-example-300x141.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-create-database-example-1024x480.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-create-database-example-768x360.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Example veritabanımızı oluşturduk. Şimdi pgbench ile bu veritabanını hızlıca test’e hazır hale getirelim. Bu komut ile pgbench example veritabanında örnek tabloları oluşturup bunlara data yazacak. </span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19154" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-baslatma-ciktisi.png" alt="'pgbench -i' komutu ile test veritabanının başlatılması (initialization) çıktısı" width="1024" height="487" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-baslatma-ciktisi.png 1202w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-baslatma-ciktisi-300x143.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-baslatma-ciktisi-1024x487.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-baslatma-ciktisi-768x365.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19155" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-satir-sayilari.png" alt="pgbench test tablolarındaki satır sayıları" width="1024" height="253" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-satir-sayilari.png 1204w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-satir-sayilari-300x74.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-satir-sayilari-1024x253.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-satir-sayilari-768x190.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;">Default olarak, pgbench yukarıdaki tabloları yukarıda gösterilen satır sayısıyla oluşturacaktır. Bu, basit bir 16MB veritabanı oluşturur.</span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Performans değişikliklerini ölçmek için pgbench kullanacağımız için, 16 MB&#8217;lık küçük bir veritabanı testimizi kurgulamak için yeterli olmayacaktır. İşte burada -s (ölçekleme) seçeneği devreye girmektedir.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span> <span style="font-weight: 400;">-s seçeneği, her bir tabloya girilen satır sayısını çarpmak için kullanılır. Yukarıdaki komutta 50&#8217;lik bir &#8220;ölçeklendirme &#8221; seçeneği girdik. Bu, pgbench&#8217;e varsayılan boyutun 50 katı büyüklüğünde bir veritabanı oluşturmasını söyledi.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span> <span style="font-weight: 400;">Bu, pgbench_accounts tablomuzun artık 5.000.000 kayda sahip olduğu anlamına geliyor. Ayrıca, veritabanı boyutumuzun yaklaşık olarak 800MB (50 x 16MB) olduğu anlamına gelir. Kontrol edelim.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19156" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-boyutlari.png" alt="'\list+' komutu ile veritabanı boyutlarının görüntülenmesi" width="1024" height="426" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-boyutlari.png 1208w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-boyutlari-300x125.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-boyutlari-1024x426.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-veritabani-boyutlari-768x319.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> <img loading="lazy" decoding="async" class="alignnone size-large wp-image-19158" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-boyutlari.png" alt="'\dt+' komutu ile pgbench tablolarının boyutlarının listelenmesi" width="1024" height="366" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-boyutlari.png 1214w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-boyutlari-300x107.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-boyutlari-1024x366.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-tablo-boyutlari-768x275.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span><span style="font-weight: 400;"><br />
</span></p>
<p><span style="font-weight: 400;">Testlerimizi çeşitlendirebiliriz. Örneğin aşağıdaki komutla example veritabanına pgbench&#8217;i çağırırken, komuta epeyce seçenek ekleyebiliyoruz. İlki, bağlanılacak istemci sayısını tanımlamak için kullanılan </span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">-c (client). Bu test için, pgbench&#8217;e 10 client ile test etmesi için 10 yazdık.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"> Böylece pgbench testleri yaparken veritabanında 10 farklı session açar.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"> Sonraki seçenek -j (threads) sayısıdır. Bu pgbench için çalışan thread sayısını tanımlamak için kullanılır. Aşağıdaki komutta 2 değerini belirttik. Bu, pgbench&#8217;e test sırasında iki thread başlatmasını söyleyecektir.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"> Üçüncü seçenek -t&#8217;dir (transactions), “çalıştırılacak transaction sayısı” olarak tanımlanır. Aşağıdaki komutta 10.000 değerini verdik. Bunun anlamı, her müşteri oturumunun 10.000 işlem yürüteceğidir.</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"><br />
</span><span style="font-weight: 400;"> Özetlemek gerekirse, bu komut ile 10 istemciden toplam 100.000 transaction gerçekleştirilmesini simüle etmiş olacağız.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19159" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-performans-testi-tps-sonuclari.png" alt="pgbench performans testi çalıştırma sonuçları (TPS değerleri)" width="1024" height="352" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-performans-testi-tps-sonuclari.png 1216w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-performans-testi-tps-sonuclari-300x103.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-performans-testi-tps-sonuclari-1024x352.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-performans-testi-tps-sonuclari-768x264.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span><b>Pgbench ile Pgpool Yük Testi </b><span style="font-weight: 400;">192.168.1.35 – pgpool sunucusunda:</span></p>
<p><span style="font-weight: 400;">Pgpool default olarak 9999 portunu kullanmakta. Bu port’u ve ek olarak gideceği db ve db’de kullanacağı user bilgilerini verdiğimizde testleri gerçekleştirebileceğiz. Ek olarak bu testler sonucunda pgpool’un stres altındaki dayanımını kontrol edip yüksek connection sayısı nedeniyle yaşanan </span><b>pgpool hang probleminin</b><span style="font-weight: 400;"> çözümünü de gerçekleştireceğiz.</span></p>
<p><span style="font-weight: 400;">Aşağıdaki komutla pgpool üzerinden testlerimizi gerçekleştirelim. Komutta -U monitor ile kullanılacak user’ı belirttik. -p 9999 ile pgpool’a bağlantı sağlayacağı port’u, -i (initialize) ile bağlandığı veritabanında gerekli tabloları oluşturmasını, -s 100 monitor ile de ‘monitor’ veritabanına bağlanıp 100’lük bir ölçeklendirme yapmasını istedik.</span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">-s 100 verdik yaklaşık db boyutumuz 1.6 GB(100x16MB) olacak</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19160" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-kullanicisi-tablespace.png" alt="pgbench 'monitor' kullanıcısıyla farklı tablespace'te başlatma çıktısı" width="1024" height="524" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-kullanicisi-tablespace.png 1208w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-kullanicisi-tablespace-300x153.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-kullanicisi-tablespace-1024x524.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-kullanicisi-tablespace-768x393.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Tabloları oluşturup insert’leri yaptırdık ve bir sorun yaşamadık. Şimdi db sessionları ile bir test yapalım. Bu komutla yine monitor veritabanına pgpool üzerinden gidip 10 session ve 2 thread ile 1000 adet transaction simüle edilecek.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19165" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-veritabani-komutu.png" alt="'monitor' veritabanı için pgbench komutu" width="1024" height="58" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-veritabani-komutu.png 1204w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-veritabani-komutu-300x17.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-veritabani-komutu-1024x58.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-monitor-veritabani-komutu-768x43.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;">Aşağıdaki komutla 20 session monitor db’sine 150 saniye boyunca sürekli select atacak, her transaction için yeni connection sağlanacak. Komutu çalıştırmadan önce ve çalıştırdıktan birkaç saniye sonraki select count’lar görsellerdeki gibidir.</span></p>
<p><span style="font-weight: 400;"> </span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19166" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-yuk-dengeleme-karsilastirma.png" alt="Pgpool yük dengeleme durumu - pgbench öncesi ve sonrası karşılaştırma" width="1024" height="387" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-yuk-dengeleme-karsilastirma.png 1218w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-yuk-dengeleme-karsilastirma-300x113.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-yuk-dengeleme-karsilastirma-1024x387.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-yuk-dengeleme-karsilastirma-768x290.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;">Bu komuttaki parametrelerin anlamları şu şekilde listelenmektedir (pgbench &#8211;help ile bu özellikler görüntülenebilir) :</span></p>
<p><span style="font-weight: 400;">-n : test öncesinde vacuum çalıştırılmasın,</span></p>
<p><span style="font-weight: 400;">-S : select-only transaction gerçekleştirilsin,</span></p>
<p><span style="font-weight: 400;">-p : port,</span></p>
<p><span style="font-weight: 400;">-c : client sayısı,</span></p>
<p><span style="font-weight: 400;">-C : her transaction için yeni connection açılsın,</span></p>
<p><span style="font-weight: 400;">-T : test’in kaç saniye boyunca devam ettirileceği.</span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Aynı testi 4 saniyede tamamlanacak şekilde gerçekleştirip sonucu görelim, pgbench test tamamlandığında bize aşağıdaki gibi bir çıktı üretecek.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19167" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-select-only-testi-sonucu.png" alt="pgbench 'select only' testi sonucu (TPS ve gecikme değerleri)" width="1024" height="461" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-select-only-testi-sonucu.png 1208w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-select-only-testi-sonucu-300x135.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-select-only-testi-sonucu-1024x461.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-select-only-testi-sonucu-768x346.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Bu komutu 32 ve üzeri client olacak şekilde güncellediğimizde standart konfigürasyonda pgpool yeterince child process oluşturamıyor ve hang oluyor. Bunun için num_init_children (default değeri 32) adlı pgpool parametresini arttırmamız gerekiyor. Fakat bu parametreyi artırdığımızda aslında db’lere gidecek connection sayısını da artırıyoruz. Bu sebeple bu değeri artırırken dikkatli olunmalı, bu değer çok yükseltilirse db’ye kabul edebileceğinden daha fazla connection isteği giderek db’yi de hang edebilir. </span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19168" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-num-init-children-ayari.png" alt="pgpool.conf dosyasında num_init_children parametresi ayarı" width="1024" height="96" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-num-init-children-ayari.png 1218w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-num-init-children-ayari-300x28.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-num-init-children-ayari-1024x96.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-num-init-children-ayari-768x72.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;"> </span><span style="font-weight: 400;">Bu parametreyi artırdıktan sonra pgpool’u restart edip testi tekrar yaptığımızda hang probleminin yaşanmadığını görüyoruz.</span></p>
<p><span style="font-weight: 400;"><img loading="lazy" decoding="async" class="alignnone size-large wp-image-19149" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-havuz-izleme-komutlari.png" alt="Pgpool havuz işlemlerini izleme (pool_processes, pool_backend_stats) komutları" width="1024" height="360" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-havuz-izleme-komutlari.png 1224w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-havuz-izleme-komutlari-300x105.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-havuz-izleme-komutlari-1024x360.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/postgresql-pgbench-pgpool-havuz-izleme-komutlari-768x270.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></span></p>
<p><span style="font-weight: 400;">Yazımızda bir PostgreSQL aracı olan pgbench ile ilgili bilgileri inceledik. GTech olarak sadece performans testleriyle sınırlı kalmadan, veritabanı mimarinizin tamamını değerlendiriyor, optimizasyon önerileri sunuyor ve size en iyi performansı sağlamak için gereken değişiklikleri uygulamanıza yardımcı oluyoruz. PostgreSQL veritabanınızın tam potansiyeline ulaşmasına yardımcı olmak için Sistem ve Veritabanı uzmanlarımızla <a href="https://www.gtech.com.tr/bize-ulasin/">iletişime geçebilirsiniz.</a></span></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>&nbsp;</p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-pgbench-nedir-nasil-kurulur/">PostgreSQL &#8211; Pgbench Nedir? Nasıl Kurulur?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PostgreSQL Wraparound Problemi Nedir?</title>
		<link>https://www.gtech.com.tr/postgresql-wraparound-problemi-nedir/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Wed, 25 Jan 2023 06:42:47 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/postgresql-wraparound-problemi-nedir/</guid>

					<description><![CDATA[<p>Dünyada en çok tercih edilen veri tabanı sistemlerinden biri olan PostgreSQL’de dikkat edilmesi gereken sorunlardan biri de “wraparound”durumudur. Bu yazıda GTech Sistem ve Veri Tabanı Yönetimi Danışmanımız &#8220;wraparound” probleminin nasıl önleneceğini detaylarıyla anlattı. PostgreSQL veri tabanlarında işlem gören tablolarda değiştirilen satırlar “dead tuple” olarak işaretlenir ve bu satırlar kullanım dışı kalır. Daha sonra “vacuum” adlı [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-wraparound-problemi-nedir/">PostgreSQL Wraparound Problemi Nedir?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Dünyada en çok tercih edilen veri tabanı sistemlerinden biri olan PostgreSQL’de dikkat edilmesi gereken sorunlardan biri de “wraparound”durumudur. Bu yazıda GTech <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/"><strong>Sistem ve Veri Tabanı Yönetimi</strong></a> Danışmanımız &#8220;wraparound” probleminin nasıl önleneceğini detaylarıyla anlattı.</p>
<p>PostgreSQL veri tabanlarında işlem gören tablolarda değiştirilen satırlar “dead tuple” olarak işaretlenir ve bu satırlar kullanım dışı kalır. Daha sonra “vacuum” adlı bakım işlemi ile bu “dead tuple”lar yeniden kullanılabilir olarak işaretlenir. Örneğin bir tabloda “delete” işlemi gerçekleştirildiğinde, silinen satır “dead tuple” olarak işaretlenir ve gizlenir. Bir güncelleme gerçekleştiğinde ise; PostgreSQL güncellenecek satırı kullanım dışı bırakıp gizler ve yeni halini “insert” eder. “Vacuum” kullanılmadığı taktirde bu uygulama yöntemi veri tabanı performansında ciddi düşüşlere yol açacaktır. “Vacuum” işlemi ile bu “dead tuple”lar yeniden kullanılabilir olarak işaretlenir ve disk üzerindeki “data page” temizlenir. Bu işlem diskte boş alan yaratmaz. PostgreSQL 8.1 versiyonuyla (2005) tanıtılan, 8.3 versiyonundan itibaren varsayılan olarak etkinleştirilen “autovacuum” özelliği ile “vacuum” işlemi otomatik olarak çalışabilir hale gelmiştir. Özellikle veri tabanında yoğun “transaction” gerçekleşmeye başladığında “autovacuum”un devreye girdiğini görebilirsiniz.</p>
<h2></h2>
<h2><strong>Wraparound Nedir?</strong></h2>
<p>Yoğun kullanılan bir veri tabanımız olduğunu ve “autovacuum”u devre dışı bıraktığımızı düşünelim. Nihayetinde bu veri tabanı “Transaction ID” sayacınında limit değere ulaşacaktır. Bu değere ulaşıldığında, postgre’nin mimarisi olan Multi-Version Concurrency Control (MVCC) şematiği doğru şekilde çalışamamaya başlar ve “vacuum” işlemleri “DML” işlemlerine yetişemez. “Transaction ID” sayacı “transaction”lara “unique” değerler atamak için kullanılır ve alabileceği maksimum değer 4.2 milyardır. Limit değer ise 2 milyar seviyelerindedir, sayaç limite ulaştığında yeni işlemler için atanacak “unique” bir değer bulunamadığından veri tabanı aşağıdaki hatayı vermeye başlayacaktır:</p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-8224 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2023/01/wraparound.png" alt="PostgreSQL wraparound problemi görseli" width="613" height="81" /></p>
<p>Önlem alınmadığı taktirde “force shutdown” gerçekleşecek ve veri tabanı kapanacaktır. Bu, ciddi veri kayıplarına yol açabileceği için oldukça tehlikeli bir durumdur. Eğer “force shutdown” gerçekleşmezse geçmişte işlenmiş “transaction”lar gelecekte görünmeye başlayabilir ve silinmiş satırların geri gelmesi, güncellenmiş satırların eski haline dönmesi, yetki kısıtlama ihlalleri gibi anormal durumlarla karşılaşılabilir.</p>
<h2></h2>
<h2><strong>Vacuum İşlemi</strong></h2>
<p>“Vacuum”, “dead tuple” temizliği yapan bakım işlemidir. İki modu vardır;</p>
<ol>
<li>
<h3><strong>Concurrent Vacuum</strong></h3>
<p>Herhangi bir erişim engeli oluşturmadan tablolardaki “dead tuple”ları temizler ve yeniden kullanılabilir olarak işaretler. “Vacuum” işlemi sonrasında diskte bir alan kazanımı olmaz.</li>
<li>
<h3><strong>Full Vacuum</strong></h3>
<p>“Concurrent vacuum”dan farklı olarak “full vacuum”, “dead tuple” olarak işaretli alanların çıkarıldığı yeni bir tablo oluşturur ve daha sonra eski tabloyu siler. “Full vacuum” uygulanan tablo “exclusive lock” ile kilitlenir ve “full vacuum” tamamlanana kadar bu tablo üzerinde bir sorgu çalıştırılamaz. “Full vacuum” işlemi sonrasında diskte alan kazanımı olur. Veri tabanının durumuna da bağlı olarak, uzun süredir “vacuum” çalıştırılmamış bir veri tabanında alan kazanımı daha fazla olacaktır.</li>
</ol>
<h2></h2>
<h2><strong>Wraparound Problemi Nasıl Önlenir?</strong></h2>
<p>Her şeyden önce “autovacuum” kapatılmamalıdır, tüm tabloların düzenli şekilde “vacuum” işleminden geçtiğinden emin olunmalıdır. Doğru konfigüre edildiğinde çoğu durumda “autovacuum” yeterli olacaktır ancak bazı durumlarda manuel “vacuum” yapmak da gerekebilir. Bu nedenle sistem düzenli olarak izlenmelidir. Aşağıdaki “select” ile tabloların durumu gözlenebilir ve ihtiyaç duyulan tablo önceden fark edilip manuel “vacuum”” yapılarak “wraparound” probleminin önüne geçilebilir.</p>
<p><img fetchpriority="high" fetchpriority="high" decoding="async" class="alignnone wp-image-8225 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2023/01/wraparound-2.png" alt="PostgreSQL wraparound problemi görseli 2" width="615" height="251" /></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-8226 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2023/01/wraparound-3.png" alt="PostgreSQL wraparound problemi görseli 3" width="874" height="485" /></p>
<p>PostgreSQL veri tabanlarında “wraparound” problemini açıklayarak nasıl önlem alınacağına değindik. Yeni nesil teknolojilerimizle sunduğunuz <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/"><strong>Sistem ve Veri Tabanı Yönetimi</strong></a> çözümlerimiz hakkında bilgi almak için <a href="https://www.gtech.com.tr/bize-ulasin/"><strong>bize ulaşabilirsiniz.</strong></a></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/postgresql-wraparound-problemi-nedir/">PostgreSQL Wraparound Problemi Nedir?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>E-Business Suite (EBS) 12.1/12.2 Application User Oluşturma</title>
		<link>https://www.gtech.com.tr/e-business-suite-ebs-12-1-12-2-application-user-olusturma/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Fri, 20 Jan 2023 13:31:31 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/e-business-suite-ebs-12-1-12-2-application-user-olusturma/</guid>

					<description><![CDATA[<p>Bu yazımızda Oracle E-Business Suite (EBS) uygulamasında bir “application user” oluşturma, ekran tanıtımları, kullanımı ve “user create” işleminden sonra veri tabanı (database) seviyesinde kontrol etmeyi öğreneceğiz. E-Business Suite (EBS) uygulaması üzerinde “system” ve standart “user”lar bulunmaktadır. Bir kurumda “tester”, “developer” ve “admin” gibi farklı sorumlulukları olan kullanıcıları aynı şekilde EBS üzerinde ayırabiliriz. Kullanıcıların “user” “create” [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/e-business-suite-ebs-12-1-12-2-application-user-olusturma/">E-Business Suite (EBS) 12.1/12.2 Application User Oluşturma</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><span style="font-weight: 400;">Bu yazımızda Oracle E-Business Suite (EBS) uygulamasında bir “application user” oluşturma, ekran tanıtımları, kullanımı ve “user create” işleminden sonra veri tabanı (database) seviyesinde kontrol etmeyi öğreneceğiz. E-Business Suite (EBS) uygulaması üzerinde “system” ve standart “user”lar bulunmaktadır. Bir kurumda “tester”, “developer” ve “admin” gibi farklı sorumlulukları olan kullanıcıları aynı şekilde EBS üzerinde ayırabiliriz. Kullanıcıların “user” “create” etme ve gerekli sorumlulukları atama işlemi “apps DBA”nın görevleri arasındadır. Aşağıdaki işlemlerde “user create” ve kontrol adımları anlatılmıştır:</span></p>
<p><span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);">1.<b> </b></span><b style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);">“Sysadmin”</b><span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);"> ya da “</span><b style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);">System administrator”</b><span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);"> gibi yetkili bir kullanıcı ile uygulamaya giriş yapılır.</span></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-19179 size-large" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-giris-ekrani.png" alt="Oracle E-Business Suite giriş ekranı" width="1024" height="379" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-giris-ekrani.png 1242w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-giris-ekrani-300x111.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-giris-ekrani-1024x379.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-giris-ekrani-768x284.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p>2. <span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);">Sol taraftaki (Main Menu) bağlanılan “user”ın sorumluluklarını gösterir. Dolayısıyla her “user”da farklı sorumluluklar gelebilir. Bu alana “</span><b style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);">navigator”</b><span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);"> denilmektedir.</span></p>
<p><img loading="lazy" decoding="async" class="aligncenter wp-image-19180 size-large" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-ana-menu-ekrani.png" alt="Oracle E-Business Suite ana menü ekranı" width="1024" height="366" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-ana-menu-ekrani.png 1135w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-ana-menu-ekrani-300x107.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-ana-menu-ekrani-1024x366.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-ana-menu-ekrani-768x275.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /><span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing);"> 3. Sorumlulukların altında Oracle Application Framework (OAF) ve form ekranları bulunmaktadır. Bunlar Oracle’ın standart ekranları olabileceği gibi “custom” da olabilir. “Navigator” alanından uygulama “user”ı oluşturmak için aşağıdaki form ekranına gidilir.</span></p>
<p><span style="font-weight: 400;">System Administrator &gt; Security &gt; User &gt; Define</span></p>
<p><img loading="lazy" decoding="async" class="alignleft wp-image-19181 size-medium" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-security-user-define-menu-yolu.png" alt="System Administrator menüsünde Security, User ve Define adımlarının açık olduğu navigasyon ağacı" width="255" height="300" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-security-user-define-menu-yolu.png 588w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-security-user-define-menu-yolu-255x300.png 255w" sizes="(max-width: 255px) 100vw, 255px" /></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<p>4. <span style="background-color: rgba(255, 255, 255, 0); color: var(--body_typography-color); font-family: var(--body_typography-font-family); font-size: var(--body_typography-font-size); font-style: var(--body_typography-font-style,normal); letter-spacing: var(--body_typography-letter-spacing); font-weight: var(--body_typography-font-weight);">Açılan form ekranında sarı renkli alanlar “input”un “entering” modda olduğunu göstermektedir. “User name” alanında iken “F11” tuşuna basıldığında alanlar “gri”ye döner ve “query” moda geçer. 2 tür mod vardır.</span></p>
<p>Sarı alan 🡪Entering mod</p>
<p>Gri alan 🡪 Query mod</p>
<p><b> Entering mod</b><span style="font-weight: 400;">: Form üzerinde yeni bir “create” işlemi yapılmak istendiğinde kullanılır.</span></p>
<p><b>Query mod: “</b><span style="font-weight: 400;">entering”</span> <span style="font-weight: 400;">modda iken</span> <span style="font-weight: 400;">geçiş “F11” tuşu ile olur. Bu alanda “search” yapılabilir. Örneğin “GUEST user”ını “user name” alanında “GUE%” yazdıktan sonra “CTRL+F11” tuşuna basıldığında “GUEST user”ı ile alakalı bilgiler gelmektedir.</span></p>
<p><span style="font-weight: 400;"> “Entering” modda iken aşağıdaki ekran görüntüsünde gösterildiği gibi alanlar doldurulur.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19182 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-tanimlama-formu.png" alt="Oracle Applications Kullanıcı (Users) tanımlama formu" width="818" height="648" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-tanimlama-formu.png 818w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-tanimlama-formu-300x238.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-tanimlama-formu-768x608.png 768w" sizes="(max-width: 818px) 100vw, 818px" /></p>
<p><b> a)“User” Bilgileri</b></p>
<p><span style="font-weight: 400;">“User name” girildikten sonra “password” alanında şifreyi girdikten sonra; Oracle, doğrulamak için şifreyi tekrar yazmasını isteyecektir.</span></p>
<p><span style="font-weight: 400;"> Diğer alanlar opsiyoneldir.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19183 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-adi-girisi.png" alt="Kullanıcı adı 'GTECH_USER' girilmiş Users formu" width="872" height="294" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-adi-girisi.png 872w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-adi-girisi-300x101.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-adi-girisi-768x259.png 768w" sizes="(max-width: 872px) 100vw, 872px" /></p>
<p><b> b) Sorumluluk (Responsibility) Alanı</b></p>
<p><span style="font-weight: 400;">“User”ın hangi sorumlulukları olacağı seçilir, “query” modda iken sorumluluğun ilk kısmı yazıldıktan sonra “TAB” tuşuna basıldığında kendini tamamlar.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19184 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-direct-responsibilities-tablosu.png" alt="Kullanıcıya atanan Direct Responsibilities (sorumluluklar) tablosu" width="880" height="296" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-direct-responsibilities-tablosu.png 880w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-direct-responsibilities-tablosu-300x101.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-direct-responsibilities-tablosu-768x258.png 768w" sizes="(max-width: 880px) 100vw, 880px" /></p>
<p><b> c) Kaydet (Save) Butonu</b></p>
<p><span style="font-weight: 400;">“Save” butonuna tıklayarak bir “user” yaratılır</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19185 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kaydet-dugmesi.png" alt="Kaydet (Save) düğmesinin araç çubuğunda gösterimi" width="872" height="236" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kaydet-dugmesi.png 872w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kaydet-dugmesi-300x81.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kaydet-dugmesi-768x208.png 768w" sizes="(max-width: 872px) 100vw, 872px" /></p>
<p>5.<b> Kontrol (Check) İşlemi</b></p>
<p><span style="font-weight: 400;"> a) Yaratılan “user” ile sisteme giriş yapılır.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19186 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-giris-ekrani.png" alt="Yeni oluşturulan kullanıcı ile giriş ekranı" width="920" height="366" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-giris-ekrani.png 920w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-giris-ekrani-300x119.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-giris-ekrani-768x306.png 768w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-giris-ekrani-416x166.png 416w" sizes="(max-width: 920px) 100vw, 920px" /></p>
<p><span style="font-weight: 400;"> b) İlk girişte “password” “reset” alanı gelmektedir. Yeni “password” verilerek “submit” butonuna tıklanır.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19187 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-sifre-degistirme-ekrani.png" alt="İlk girişte zorunlu şifre değiştirme (Change Password) ekranı" width="948" height="262" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-sifre-degistirme-ekrani.png 948w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-sifre-degistirme-ekrani-300x83.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-sifre-degistirme-ekrani-768x212.png 768w" sizes="(max-width: 948px) 100vw, 948px" /></p>
<p><span style="font-weight: 400;"> c) Sol tarafta sadece bu “user”a ait sorumluluklar (responsibility) gözükmektedir.</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19188 size-full" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-menu-erisimi.png" alt="Yeni kullanıcının EBS ana sayfasında görünen sınırlı menü erişimi" width="963" height="325" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-menu-erisimi.png 963w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-menu-erisimi-300x101.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-yeni-kullanici-menu-erisimi-768x259.png 768w" sizes="(max-width: 963px) 100vw, 963px" /></p>
<p><span style="font-weight: 400;">Veri tabanı üzerinde uygulama “user”ları “FND_USER” tablosunda depolanmaktadır. Yaratılan “user” aşağıdaki şekilde sorgulanabilir.</span></p>
<p><span style="font-weight: 400;">SELECT</span><span style="font-weight: 400;"> CREATION_DATE</span><span style="font-weight: 400;">,</span><span style="font-weight: 400;"> CREATED_BY</span><span style="font-weight: 400;">,</span><span style="font-weight: 400;"> LAST_UPDATE_DATE</span><span style="font-weight: 400;">,</span><span style="font-weight: 400;"> LAST_UPDATED_BY</span><span style="font-weight: 400;">,</span><span style="font-weight: 400;"> LAST_UPDATE_LOGIN </span><span style="font-weight: 400;">FROM</span><span style="font-weight: 400;"> FND_USER </span><span style="font-weight: 400;">WHERE</span><span style="font-weight: 400;"> USER_NAME</span><span style="font-weight: 400;">=</span><span style="font-weight: 400;">&#8216;GTECH_USER&#8217;</span><span style="font-weight: 400;">;</span></p>
<p><img loading="lazy" decoding="async" class="alignnone wp-image-19189 size-large" src="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-olusturma-tarihi-sorgusu.png" alt="Kullanıcı oluşturma tarihi kayıtlarının veritabanı tablosu görünümü" width="1024" height="85" srcset="https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-olusturma-tarihi-sorgusu.png 1036w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-olusturma-tarihi-sorgusu-300x25.png 300w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-olusturma-tarihi-sorgusu-1024x85.png 1024w, https://www.gtech.com.tr/wp-content/uploads/2026/08/oracle-ebs-kullanici-olusturma-tarihi-sorgusu-768x64.png 768w" sizes="(max-width: 1024px) 100vw, 1024px" /></p>
<p><a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/"><b>Sistem ve Veri Tabanı</b></a><b> Yönetimi</b><span style="font-weight: 400;"> Kıdemli Danışmanı </span><span style="font-weight: 400;">Ahmet Karasan’</span><span style="font-weight: 400;">ın hazırladığı yazıda; Oracle E-Business Suite (EBS) uygulamasında “user” oluşturmayı detaylı bir şekilde anlattık. </span><a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/"><b>GTech</b></a><span style="font-weight: 400;"> olarak, 22 yıllık sektör tecrübemizden yararlanarak geliştirdiğimiz son model teknolojilerimizle; Oracle veri tabanı ve EBS destek faaliyetleri ile ilgili hizmetler sunuyoruz. Siz de bu teknolojilerden faydalanmak için </span><a href="https://www.gtech.com.tr/bize-ulasin/"><b>bize ulaşın.</b></a></p>
<p><b>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</b></p>
<p>The post <a href="https://www.gtech.com.tr/e-business-suite-ebs-12-1-12-2-application-user-olusturma/">E-Business Suite (EBS) 12.1/12.2 Application User Oluşturma</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Oracle Data Guard Mimarisi ve Kurulumu</title>
		<link>https://www.gtech.com.tr/oracle-data-guard-mimarisi-ve-kurulumu/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Mon, 11 Apr 2022 14:12:07 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/oracle-data-guard-mimarisi-ve-kurulumu/</guid>

					<description><![CDATA[<p>Data Guard Mimarisi Data Guard, Oracle tarafından geliştirilmiş olan felaket kurtarma (disaster recovery) çözümüdür. Veri tabanını felaketlerden ve veri bozulmalarından kurtarmak için kullanılan bir sistemdir. Veriler ana veri tabanından standby veri tabanına sürekli aktarıldığından dolayı; ana veri tabanında herhangi bir problem olması durumunda, hızlı bir şekilde yedek veri tabanına geçiş yapılır. Kısaca Data Guard bir [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-data-guard-mimarisi-ve-kurulumu/">Oracle Data Guard Mimarisi ve Kurulumu</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<h2><strong>Data </strong><strong>Guard</strong> <strong>Mimarisi</strong></h2>
<p>Data Guard, <a href="https://www.gtech.com.tr/oracle-veritabani-nedir/" target="_blank" rel="noopener"><strong>Oracle</strong></a> tarafından geliştirilmiş olan felaket kurtarma (disaster recovery) çözümüdür. Veri tabanını felaketlerden ve veri bozulmalarından kurtarmak için kullanılan bir sistemdir. Veriler ana veri tabanından standby veri tabanına sürekli aktarıldığından dolayı; ana veri tabanında herhangi bir problem olması durumunda, hızlı bir şekilde yedek veri tabanına geçiş yapılır. Kısaca Data Guard bir veri tabanının, başka bir veri tabanına anlık olarak kopyasının alınması ve herhangi bir arıza veya felaket durumunda kopya veri tabanının “production” olarak kullanılması şeklinde tanımlanır. Oracle veri tabanı uzmanlığı ile hazırladığımız bu yazımızda <strong>Oracle Data Guard</strong> Mimarisi ve kurulum aşaması hakkında bilgi verdik.</p>
<p>Data Guard; canlı veri tabanı dediğimiz primary veri tabanında oluşan redo kayıtlarını, yedek veri tabanı dediğimiz standby veri tabanına taşır ve taşınan bu redo veriler, standby veri tabanına “apply” edilerek primary veri tabanının güncel yedeğini oluşturur.</p>
<p>Redo verisi dediğimiz veri; primary veri tabanında meydana gelen “transactionlar” bütünüdür (Insert, Update, Delete, Create, Alter vb.). Primary veri tabanına gelen transactionların standby’a taşınıp, “apply” edilmesi demek; aynı transactionların standby tarafında da çalışması demektir.</p>
<p><img fetchpriority="high" fetchpriority="high" fetchpriority="high" decoding="async" class="alignnone size-full wp-image-8111" src="https://www.gtech.com.tr/wp-content/uploads/2022/04/gtechblog-march1.jpg" alt="Oracle Data Guard mimarisi - Primary ve Standby site arasında redo log akışı" width="404" height="305" /></p>
<p>LNS (LGWR Network Server);  SGA (System Global Area) ’daki redo buffer alanındaki redo verilerini, ağ üzerinden doğrudan standby veri tabanına iletmek üzere gönderir. Gönderilen redo veriler, standby veri tabanında RFS (Remote File Service) background servisi tarafından alınır ve standby redo log dosyalarına işlenir. Bu dosyalar da redo apply işlemi ile standby veri tabanına işlenir.</p>
<p>Data Guard çalışma şekli, bir transaction üzerinden aşağıda belirtildiği üzere iki farklı madde halinde açıklanabilir.</p>
<h2>Synchronous (Senkron) Data Guard</h2>
<ul>
<li>Veri tabanında bir transaction başlatıldığı zaman; bu işlem öncellikle redo buffer alanına yazılır. Kullanıcı ilgili transaction’ı “commit” ettiği zaman; LGWR (Log Writer) process’i redo buffer alanındaki redo verilerini online redo log’lara yazar ve LNS process’i, redo verilerinin standby veri tabanına yazıldığına ilişkin doğrulama bekler.</li>
</ul>
<p>(<strong>**Redo Log Buffer**</strong> Veri tabanı üzerideki bütün değişikliklerin saklandığı alandır ve en geç 3 saniyede bir verileri Online Redo Log dosyalarına yazar.)</p>
<p>(<strong>**Online redo log**</strong> Beklenmedik durumlar karşısında veri kaybını önlemek ve veri tabanını yeniden oluşturmakiçin veri tabanında olan değişikliklerin kaydını tutar. Bir veri tabanına en az 2 redo log gereklidir.)</p>
<p>(<strong>**LGWR (Log Writer)**</strong> Redo Log Buffer’daki bilgileri online redo log’lara yazmakla görevli background process’tir.)</p>
<ul>
<li>LNS (LGWR Network Server) process’i ise; aynı redo verilerini redo buffer alanından okur ve RFS (Remote File Server) üzerinden RFS (Remote File Service) process’ine bildirir. LNS process’i ilgili redo verilerine redo buffer’dan erişemezse otomatik olarak primary veri tabanının online redo log’larını okur.</li>
<li>RFS Process’i ise aldığı redo verilerini standby redo log’larına yazar.</li>
<li>MRP (Managed Recovery Process) process’i standby redo log’larında bulunan redo verilerini standby</li>
<li>veri tabanına “apply” eder.</li>
<li>Son olarak RFS process’i gönderilen redo verilerinin başarılı bir şekilde standby’a yazıldığının bilgisini LNS işlemine gönderir, LNS ise bu mesajı LGWR process’ine aktarır ve artık kullanıcıya “commit” işleminin başarılı olduğu bilgisi verilir..</li>
</ul>
<h2>Asynchronous (Asenkron) Data Guard</h2>
<ul>
<li>Veri tabanında bir “transaction” başlatıldığı zaman bu işlem öncellikle redo buffer alanına yazılır. Bu “transaction” “commit” edildiği zaman; LGWR (Log Writer) process’i redo buffer alanındaki redo verilerini online redo log’larına yazar.</li>
<li>LNS (LGWR Network Server) process’i ise; aynı redo verilerini redo buffer alanından okur ve RFS (Remote File Server) üzerinden RFS (Remote File Service) process’ine bildirir. LNS process’i, ilgili redo verilerine redo buffer’dan erişemezse otomatik olarak primary veri tabanının online redo log’larını okur.</li>
<li>RFS process’i ise; aldığı redo verilerini standby redo log’larına yazar.</li>
<li>Son aşamada ise MRP (Managed Recovery Process) process’i standby redo log’larında bulunan redo verilerini standby veri tabanına “apply” eder.</li>
</ul>
<p>Asenkron Data Guard yönteminde; RFS işleminde redo verilerinin başarılı bir şekilde işlendiği bilgisi LNS’e gönderilmez. Bu yüzden Asenkron Data Guard yönteminde  “<strong>sıfır veri kaybı</strong>” durumu yoktur, ve en az veri kaybı ile verilerin kurtarılması sağlanır.</p>
<p>Senkron Data Guard yönteminde ise; “commit&#8221; edilen tüm verilerin standby tarafına gönderildiği ve “apply” olduğu garanti edildiği için bu yöntemde “sıfır veri kaybı” durumu vardır.</p>
<p>Senkron Data Guard yönteminin, Asenkron Data Guard yöntemine göre bazı dezavantajları vardır. Bunlardan bir tanesi; Senkron Data Guard yönteminin, Asenkron Data Guard yöntemine göre daha az performanslı çalışmasıdır., Çünkü Senkron Data Guard yönteminde LGWR process’i her zaman LNS process’inden doğrulama bilgisi bekler; bu da süre kaybına yol açar. Ancak çok kritik verilerin bulunduğu veri tabanlarında, “sıfır veri kaybı” çözümüyle Asenkron Data Guard yöntemine göre avantajlıdır.</p>
<p>Hem primary hem de standby’da ortak kullanılan parametreler ve işlevleri aşağıdaki gibidir;</p>
<p><strong>DB_UNIQUE_NAME: </strong>Veri tabanının “unique” namedir.<strong> “DB_NAME” </strong>parametresi her iki taraf için aynı olacaktır, fakat <strong>“DB_UNIQUE_NAME”</strong>ler farklı olmalıdır.</p>
<p><strong>CONTROL_FILES: </strong>Burada veri tabanının fiziksel yapısı ile ilgili bilgiler (veri tabanının adı, veri dosyaları ve redo log dosyalarının yerleri ve adları, vb.) tutulur. Bir veri tabanı en az bir “control files” içerir. Bu değer primary’de primary veri tabanının, standby’da standby veri tabanın “control file” lokasyonunu gösterir.</p>
<p><strong>LOG_ARCHIVE_CONFIG: </strong> Data Guard konfigürasyonu için seçilen veri tabanlarının “<strong>db_unique_name”</strong>lerinin belirtildiği parametredir. İlk olarak primary veri tabanının, ardından standby veri tabanının “<strong>db_unique_name”</strong>i yazılır.</p>
<p><strong>LOG_ARCHIVE_DEST_n: </strong>Bu parametre primary veri tabanı için kullanılan önemli bir parametredir. Primary veri tabanından standby veri tabanına redo verisi göndermek için gerekli bir parametredir. “<strong>n</strong>” değeri bu parametre için 0’dan31’e kadardır. “<strong>Log_archive_dest_1</strong>” parametresi primary veri tabanının arşiv log’larının yerini gösterir, ve bundan sonraki “<strong>Log_archive_dest_2</strong>”den sonra gelen parametreler standby için konfigüre edilir.</p>
<p><strong>LOG_ARCHIVE_MAX_PROCESSES: </strong>Data Guard konfigürasyonu için önemli parametrelerden birisidir. Veri tabanının bu işlem sırasında kullanabileceği maksimum ARCH process (Archiver Process)’inin sayısını belirler. Default’ta; 2 maksimum değeri 30’dur.</p>
<p><strong>FAL_SERVER:</strong> Primary ile standby veri tabanı arasında redo GAP oluştuğu zaman arşiv log’larının hangi server’dan alınacağı bu parametre ile belirlenir.</p>
<h2>Data Guard Kurulumu</h2>
<h3><strong>Temel Data Guard Konfigürasyonu</strong></h3>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-8112" src="https://www.gtech.com.tr/wp-content/uploads/2022/04/gtechblog-march2.jpg" alt="Redo verisinin Primary'den Standby veritabanına iletim ve uygulama süreci" width="544" height="168" /></p>
<p><strong>Oracle Data Guard</strong> kurulumu yapabilmek için gereken şartlar aşağıdaki gibidir:</p>
<ul>
<li>Oracle veri tabanının “enterprise” sürüm olması</li>
<li>İki sunucunun da işletim sistemi aynı olmalıdır.</li>
<li>İki sunucunun içindeki “Oracle Software” aynı sürüm olmalıdır.</li>
</ul>
<p>Şimdi sizlere RMAN (Recovery Manager ) backup restore yöntemiyle Oracle Data Guard kurulumunu anlatalım.</p>
<p>Primary tarafı; production tarafını ifade ediyorken, standby tarafı ise; kuracağımız 2.veri tabanı ortamı olan Data Guard’ı ifade ediyor. Her 2 tarafta da yaptığımız adımları ayrı ayrı aşağıda belirttik.</p>
<p>Öncelikle standby sunucuya “Oracle Software” kurulur. Daha sonra “netca” kullanılarak listener servisi oluşturulup başlatılır.</p>
<h3><strong>Primary Tarafta Yapılması Gerekenler </strong></h3>
<p>Primary ve Standby veri tabanlarındaki “<strong>/etc/hosts” </strong>dosyasına sunucuların bilgileri yazılır.</p>
<table width="551">
<tbody>
<tr>
<td colspan="3" width="551"><strong>$ vi /etc/hosts</strong></td>
</tr>
<tr>
<td>192.168.56.8</td>
<td>orcl.localdomain</td>
<td>orcl</td>
</tr>
<tr>
<td>192.168.56.12</td>
<td>standby.localdomain</td>
<td>standby</td>
</tr>
</tbody>
</table>
<p>&nbsp;</p>
<p>Primary veri tabanının arşiv log modu açık olmalıdır. Veri tabanı bütün aktiviteleri log’lamalıdır. Aşağıdaki komutla arşiv log modunun açık olup olmadığı kontrol edilir. “Disable” yani kapalı ise açılır.</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>select log_mode from v$database;</p>
<p>LOG_MODE</p>
<p>&nbsp;</p>
<p>NOARCHIVELOG</p>
<p>&nbsp;</p>
<p>Eğer veri tabanı arşiv mod’da değilse, veri tabanı kapatılır ve mount mod’da açılır. Veri tabanı arşiv mod’a alınır ve veri tabanı tekrar açılır.</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>shutdown immediate;<br />
<strong>SQL&gt; </strong>startup mount;</p>
<p><strong>SQL&gt; </strong>alter database archivelog;<br />
<strong>SQL&gt; </strong>alter database open;</p>
<p>&nbsp;</p>
<p>Veri tabanındaki bütün işlemlerin aşağıdaki komutla log’lanması sağlanır.</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>alter database force logging;</p>
<p>&nbsp;</p>
<p>Standby veri tabanımız için standby redo log&#8217;larını oluşturuyoruz. Oluşturulacak olan standby redo log’ların boyutlarının mevcut online redo log’ların boyutlarıyla aynı olması gerekmektedir. Standby redo log’lar standby veri tabanlarında çalışırlar. Primary veri tabanında oluşturulması şartı yoktur. Fakat primary ve standby veri tabanlarının yer değiştirilmesi (switchover) işlemlerinden sonra düzgün çalışılabilmesi için; aynı şekilde standby redo log’larının primary veri tabanında da oluşturulması yararlı olacaktır.</p>
<p>ALTER DATABASE ADD STANDBY LOGFILE GROUP 4 &#8216;/u01/app/oracle/ORCLDG/standby01.log&#8217; size 50m;<br />
ALTER DATABASE ADD STANDBY LOGFILE GROUP 5 &#8216;/u01/app/oracle/ORCLDG/standby02.log&#8217; size 50m;<br />
ALTER DATABASE ADD STANDBY LOGFILE GROUP 6 &#8216;/u01/app/oracle/ORCLDG/standby03.log&#8217; size 50m;<br />
ALTER DATABASE ADD STANDBY LOGFILE GROUP 7 &#8216;/u01/app/oracle/ORCLDG/standby04.log&#8217; size 50m;</p>
<p>Data Guard için parametreleri “set” edilerek, konfigürasyon işlemlerine başlanır. “<strong>LOG_ARCHIVE_CONFIG</strong>” parametresine ayarlanır. İlk olarak Primary veri tabanı “<strong>DB_UNIQUE_NAME</strong>”i yazılır ve ardından standby veri tabanı “<strong>DB_UNIQUE_NAME</strong>”i yazılır.</p>
<p>ALTER SYSTEM SET LOG_ARCHIVE_CONFIG= DG_CONFIG=(ORCL,ORCLSTBY)’ scope=BOTH;<br />
ALTER SYSTEM SET LOG_ARCHIVE_DEST_2=’SERVICE=ORCLSTBY LGWR ASYNC<br />
VALID_FOR=(ONLINE_LOGFILE,PRIMARY_ROLE) DB_UNIQUE_NAME=ORCLSTBY&#8217; SCOPE=BOTH;<br />
ALTER SYSTEM SET LOG_ARCHIVE_DEST_STATE_2=ENABLE SCOPE=BOTH;</p>
<p>Veri tabanında “<strong>LOG_ARCHIVE_FORMAT”</strong>, “<strong>LOG_ARCHIVE_MAX_PROCESSES</strong>”, “<strong>REMOTE_LOGIN_PASSWORDFILE</strong>” parametreleri aşağıdaki gibi ayarlanır.</p>
<p>ALTER SYSTEM SET LOG_ARCHIVE_FORMAT=’%T_%S_%R.ARC’ SCOPE=SPFILE;<br />
ALTER SYSTEM SET LOG_ARCHIVE_MAX_PROCESSES=30 SCOPE=BOTH;<br />
ALTER SYSTEM SET REMOTE_LOGIN_PASSWORDFILE=EXCLUSIVE SCOPE=SPFILE;</p>
<p>“Switchover” durumu düşünülerek veri tabanının geçişe hazır olması için aşağıdaki parametreler “set”lenir ve daha sonra veri tabanı yeniden başlatılır(Zorunlu değildir. “Switchover” yapılacaksa “set” edilir).</p>
<p>ALTER SYSTEM SET FAL_SERVER=ORCL_STBY SCOPE=BOTH;<br />
ALTER SYSTEM SET FAL_CLIENT=ORCL SCOPE=BOTH;</p>
<hr />
<p>connect target / run{</p>
<p>ALLOCATE CHANNEL CH1 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH2 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH3 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH4 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH5 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH6 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH7 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH8 DEVICE TYPE DISK;<br />
BACKUP AS COMPRESSED BACKUPSET DATABASE FORMAT &#8216;/u01/oracle/backup/FULL_%d_%u_%s_%T.bkp&#8217;;<br />
BACKUP AS COMPRESSED BACKUPSET ARCHIVELOG ALL not backed up 1 times FORMAT &#8216;/u01/oracle/backup/Archivelogs_%d_%u_%s_%T.bkp&#8217;;</p>
<p>BACKUP CURRENT CONTROLFILE FORMAT &#8216;/u01/oracle/backup/CONTROLFILE%d_%u_%s_%T.bkp&#8217;;<br />
RELEASE CHANNEL CH1;<br />
RELEASE CHANNEL CH2;<br />
RELEASE CHANNEL CH3;<br />
RELEASE CHANNEL CH4;<br />
RELEASE CHANNEL CH5;<br />
RELEASE CHANNEL CH6;<br />
RELEASE CHANNEL CH7;<br />
RELEASE CHANNEL CH8;</p>
<p>Primary veri tabanından “FULL backup” alınır ve standby tarafına kopyalanr.</p>
<p>Standby veri tabanını nomount mod’da açmak için production veri tabanından pfile yaratılır. Yine standby veri tabanımız için control file oluşturulur. Oluşturulan control file, pfile ve file scp kullanılarak primary sunucusundan alınan; “rman backup” ve arşiv log’lar, standby sunucusuna kopyalanır.</p>
<p><strong>SQL</strong><strong>&gt; </strong>create pfile=’/tmp/initorcl_stby.ora’ from spfile;</p>
<p><strong>SQL&gt; </strong>alter database create standby controlfile as ‘/tmp/orcl_stby.ctl’;</p>
<hr />
<p><strong>pfile<br />
</strong>scp /tmp/initorcl_stby.ora oracle@192.168.56.12:/u01/app/oracle/product/19.0.0/dbhome_1/dbs/initorcl_stby.ora</p>
<p><strong>#Password File<br />
</strong>scp /u01/app/oracle/product/19.0.0/dbhome_1/dbs/orapwORCL oracle@192.168.56.12:/u01/app/oracle/product/19.0.0/dbhome_1/dbs/orapwORCLSTBY</p>
<p><strong>#Rman Backup<br />
</strong>scp -r /u01/oracle/backup/ oracle@192.168.56.12:/u01/app/oracle/backup</p>
<p><strong>#Control File<br />
</strong>scp /tmp/orclstby.ctl oracle@192.168.56.12:/u01/app/oracle/oradata/ORCL_STBY/controlfile/control01.ctl</p>
<p>Hem primary hem de standby sunucusunda “tnsnames.ora” dosyası düzenlenir. Primary sunucusuna standby, standby sunucusuna primary sunucu bilgileri eklenir.</p>
<p><strong>$&gt; vi $ORACLE_HOME/network/admin/tnsnames.ora</strong></p>
<p>ORCL = (DESCRIPTION =<br />
(ADDRESS = (PROTOCOL = TCP)(HOST = orcl.localdomain)(PORT = 1521))<br />
(CONNECT_DATA =<br />
(SERVER = DEDICATED)<br />
(SERVICE_NAME = ORCL)<br />
)<br />
)</p>
<p>ORCL_STBY =<br />
(DESCRIPTION =<br />
(ADDRESS = (PROTOCOL = TCP)(HOST = standby.localdomain)(PORT = 1521))<br />
(CONNECT_DATA =<br />
(SERVER = DEDICATED)<br />
(SERVICE_NAME = ORCL)<br />
)<br />
)</p>
<p>“Tnsping” ile kontrol edilir sorun yoksa devam edilir.</p>
<p>Yaratılan “initorcl_stby.ora (pfile)” dosyasında standby veri tabanı için düzenlemeler yapılır. Data Guard kurulumu için “<strong>DB_UNIQUE_NAME</strong>” parametresi eklenir ve “<strong>db_name</strong>”e farklı bir isim verilir. Eksik directoryler “create” edilir.</p>
<p><strong>$&gt; vi /tmp/initorcl_stby.ora</strong></p>
<p>*.db_name=’orclstby’<br />
*.db_unique_name=’ORCL_STBY’<br />
*.fal_server=’ORCL’<br />
*.log_archive_dest_1=’SERVICE=orcl ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE)<br />
DB_UNIQUE_NAME=ORCL’</p>
<p><strong>Standby Tarafında Yapılması Gerekenler</strong></p>
<p>Primary’dan alınan pfile dosyası düzenlenir. Özellikle Data Guard kurulumu için “<strong>db_unique_name</strong>”parametresi eklenir ve “<strong>db_name</strong>”e farklı bir isim verilir. Eksik olan dizinler yaratılır.</p>
<p>$&gt; mkdir -p /u01/app/oracle/oradata/ORCL_STBY<br />
$&gt; mkdir -p /u01/app/oracle/fast_recovery_area/ORCL_STBY/<br />
$&gt; mkdir -p $ORACLE_BASE/admin/$ORACLE_SID/adump</p>
<p>Listener yeniden başlatılır.</p>
<p><strong>$&gt; </strong>lsnrctl stop<br />
<strong>$&gt; </strong>lsnrctl start</p>
<p><strong>YA DA</strong></p>
<p><strong>$&gt; </strong>lsnrctl reload</p>
<p>Bash profile düzenlenir.</p>
<p>Primary veri tabanından alınıp kopyalanan veri yedeklenir.</p>
<p><strong>SQL&gt; </strong>startup nomount pfile=&#8217;pfile.ora&#8217;</p>
<p>Primary&#8217;den alınan standby control file “restore” edilerek, Standby veri tabanı mount mod’a getirilir. Backup&#8217;lar “catalog start with” ile veri tabanına tanıtılır, ardından veri tabanı “restore” edilir.</p>
<p><strong>$&gt; rman target /<br />
</strong><strong>RMAN&gt; </strong>restore standby controlfile from &#8216;/u01/oracle/backup/standbycontrol.ctl&#8217;;<br />
<strong>RMAN&gt; </strong>alter database mount;<br />
<strong>RMAN&gt; </strong>catalog start with &#8216;/u01/oracle/backup/&#8217;;</p>
<p>connect target /<br />
run{<br />
ALLOCATE CHANNEL CH1 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH2 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH3 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH4 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH5 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH6 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH7 DEVICE TYPE DISK;<br />
ALLOCATE CHANNEL CH8 DEVICE TYPE DISK;<br />
restore database;<br />
RELEASE CHANNEL CH1;<br />
RELEASE CHANNEL CH2;<br />
RELEASE CHANNEL CH3;<br />
RELEASE CHANNEL CH4;<br />
RELEASE CHANNEL CH5;<br />
RELEASE CHANNEL CH6;<br />
RELEASE CHANNEL CH7;<br />
RELEASE CHANNEL CH8;<br />
}</p>
<p>Standby veri tabanı için MRP (Managed Recovery Process) process’i başlatılır ve log’ların işlenmesi sağlanır.</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION;</p>
<p>Data Guard sağlıklı çalışıyor mu kontrol edelim.</p>
<p>Primary Veri Tabanında;</p>
<p><strong>SQL&gt; </strong>SELECT DATABASE_ROLE, OPEN_MODE, SWITCHOVER_STATUS FROM V$DATABASE;</p>
<p>Standby Veri Tabanında;</p>
<p><strong>SQL&gt; </strong>SELECT DATABASE_ROLE, OPEN_MODE, SWITCHOVER_STATUS FROM V$DATABASE;</p>
<p>&nbsp;</p>
<p>Primary tarafında;</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY;</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>DGRD<br />
ARCH<br />
DGRD<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
LNS</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>DGRD<br />
LNS</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>ALLOCATED<br />
CLOSING<br />
ALLOCATED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CLOSING<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
OPENING</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>ALLOCATED<br />
WRITING</p>
<p>Standby tarafında;</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>SELECT PROCESS, STATUS FROM V$MANAGED_STANDBY;</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>RFS<br />
ARCH<br />
DGRD<br />
DGRD<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
ARCH<br />
LNS</p>
<p>&nbsp;</p>
<p>PROCESS</p>
<p>&nbsp;</p>
<p>RFS<br />
MRP0<br />
RFS</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>IDLE<br />
CONNECTED<br />
ALLOCATED<br />
ALLOCATED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED<br />
CONNECTED</p>
<p>&nbsp;</p>
<p>STATUS</p>
<p>&nbsp;</p>
<p>IDLE<br />
APPLYING_LOG<br />
IDLE</p>
<p>Standby veri tabanına arşiv log dosyalarının “apply” edilip edilmediği, aşağıdaki Scriptle Data Guard “monitor” edilerek anlaşılır.</p>
<p>&nbsp;</p>
<p><strong>SQL&gt; </strong>select sequence#, first_time, next_time, applied from v$archived_log order by sequence#;</p>
<p>Oracle Data Guard Mimarisi hakkında bilgi vererek, kurulumunu detaylı bir şekilde anlattık. Konu hakkında detaylı bilgi almak için Türkiye’nin en yetkin Oracle sertifikalı ekibimize <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/">ulaşabilirsiniz.</a></p>
<p><strong>Yazar: </strong></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-data-guard-mimarisi-ve-kurulumu/">Oracle Data Guard Mimarisi ve Kurulumu</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Oracle Veritabanı Nedir?</title>
		<link>https://www.gtech.com.tr/oracle-veritabani-nedir/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Tue, 30 Nov 2021 16:13:55 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/oracle-veritabani-nedir/</guid>

					<description><![CDATA[<p>Büyük miktarda verilerin çoklu kullanıcılı ortamlarda depolanmasını ve erişilmesini sağlayan Oracle Veritabanı gelişmiş bir ilişkisel veritabanı sistemidir. İşlem boyutunun fazla olmasına karşın işlemlerin hızlı ve güvenli bir şekilde gerçekleştirilmesi, ihtiyaca uygun farklı sürüm seçenekleri sunması, çeşitli yöntemler ile depolanan verilerin güvenliğinin sağlanması gibi özellikleri ile Oracle Veritabanı işletmelerin veritabanı yönetim sürecindeki ihtiyaçlarını karşılıyor. Bu yazımızda [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-veritabani-nedir/">Oracle Veritabanı Nedir?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<div style="display:none"><script type="application/ld+json">
{
  "@context": "https://schema.org",
  "@type": "FAQPage",
  "mainEntity": [{
    "@type": "Question",
    "name": "Oracle Veritabanı Nedir?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "Oracle veritabanı bir ilişkisel veritabanı yönetim sistemidir. İlişkisel bir veritabanı olarak Oracle Veritabanı verilerin yönetilmesi, tasarlanması, hazırlanması ve sorgulanması süreçlerinde de kullanılan SQL üzerine inşa edilmiştir. Oracle Veritabanı sadece verilerin saklanmaz, aynı zamanda web tabanlı bir yazılım geliştirme ortamı sunar. Hem işletme içerisinde hem de bulut ortamında performans, ölçeklenebilirlik ve güvenlik sunan Oracle Veritabanı en zorlu analitik ve operasyon iş yükleri için yüksek performans elde edilebiliyor. Bu özelliklere ek olarak çok modelli, çoklu iş yüklü, makine öğrenimine erişimli ve çoklu kullanıcı geliştirme imkânlı olma özellikleriyle öne çıkıyor."
    }
  },{
    "@type": "Question",
    "name": "Oracle Veritabanı Sürümleri Nelerdir?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "Oracle veritabanı farklı uygulama amaçları için her biri farklı geliştirme ve dağıtım senaryoları için uygun olan farklı sürümlere sahiptir (2015 yılından itibaren aşağıdaki 'Standart Sürüm One' ve 'Standart Sürüm', 'Standard Edition 2' adı altında birleştirilmiştir). Belirli uygulama amaçları için Oracle veritabanının yeteneklerini geliştiren çeşitli veritabanı seçenekleri, paketleri ve benzeri çeşitli ürünler sunar. Oracle veritabanının sahip olduğu sürümler şu şekilde özetlenebilir: > Standart Sürüm One: Oracle veritabanının bu sürümü küçük işletmeler için tek sunuculu ortamlardan yüksek oranda dağıtılmış ortamlara kadar çalışma grubu, departman düzeyi ve web uygulamaları oluşturmak için gerekli tüm olanakları içerir. > Standart Sürüm: Büyük makineler ve hizmetlerin kümelenmesine yönelik Oracle Real Application Clusters (Oracle RAC) desteği ile Oracle veritabanının bu sürümde veritabanı boyutu sınırsızdır. Ayrıca bu sürümde de Standart Sürüm One’ın kullanım kolaylığı, gücü ve performansı bulunuyor. > Enterprise Sürüm: Oracle veritabanının tüm bileşenlerini içeren bu sürüm yüksek hacimli çevrimiçi işlem işleme uygulamaları, yoğun veri ambarları ve zorlu internet uygulamaları gibi uygulamalar için gereken performansı, kullanılabilirliği, ölçeklenebilirliği ve güvenliği sağlar. > Express Sürüm: İndirmesi hızlı, kurulum ve yönetimi basit, geliştirmesi ve dağıtması ücretsiz olan Oracle veritabanının bu sürümü bir giriş seviyesi sürümüdür. Maliyetli ve karmaşık geçişler olmadan Oracle’ın diğer sürümlerine yükseltmeyi kolaylaştırır. Bu sürüm, herhangi bir sayıda işlemciye sahip herhangi bir boyuttaki makineye kurulabilir. 4 GB’a kadar kullanıcı verisi depolarken, 1 GB’a kadar bellek kullanır. > Personal Sürüm: Diğer Oracle sürümleri ile tam uyumluluk gerektiren tek kullanıcılı geliştirme ve dağıtım ortamlarını destekleyen bu Oracle veritabanı sürümü Oracle Real Application Clusters (Oracle RAC) desteği dışında Enterprise sürümünde yer alan tüm seçenek ve bileşenleri içerir."
    }
  },{
    "@type": "Question",
    "name": "Neden Oracle Veritabanı?",
    "acceptedAnswer": {
      "@type": "Answer",
      "text": "Oracle veritabanının işletmeler tarafından tercih edilmesinin çeşitli nedenleri bulunuyor. Bu nedenlerden birkaçını şu şekilde sıralayabiliriz: İşletme giderlerini azaltır: Makine öğrenimi otomasyonu sayesinde veritabanı provizyonlama, ayarlama, onarma, yamalama, koruma, ölçeklendirme gibi işlemlerin tamamını kullanıcı müdahalesi olmadan, otomatik olarak gerçekleştirir. Böylece ürünlerin yönetme, koruma ve bakım maliyetleri azaltılmış olur. Veri ihlallerine karşı koruma sağlar: Veri maskeleme, etkinlik izleme, anahtar yönetimi, şifreleme, ayrıcalıklı kullanıcı erişim kontrolleri gibi veritabanı güvenliği çözümleri sayesinde veri güvenliği ihlalleri tespit edilerek önlenir. Tüm veri türleri için tek bir veritabanı kullanır: Bütünleşik veritabanı çözümü sayesinde kullanıcılar karmaşık dönüşümler ve veri fazlalığı gibi sorunlarla uğraşmazlar. İhtiyaç duyulan yerlerde konuşlandırılır: Oracle Veritabanı veri merkezinde, genel bulut ortamında, özel bulut ortamında, gereken her yerde konuşlandırılabilir. Bu sayede, yerleşim veya gecikme gibi kritik durumlarda veri merkezinde veya bulut ortamında konuşlandırma arasında esneklik sağlanır."
    }
   }
  ]
}
</script></div>
<p>
Büyük miktarda verilerin çoklu kullanıcılı ortamlarda depolanmasını ve erişilmesini sağlayan Oracle Veritabanı gelişmiş bir ilişkisel veritabanı sistemidir. İşlem boyutunun fazla olmasına karşın işlemlerin hızlı ve güvenli bir şekilde gerçekleştirilmesi, ihtiyaca uygun farklı sürüm seçenekleri sunması, çeşitli yöntemler ile depolanan verilerin güvenliğinin sağlanması gibi özellikleri ile Oracle Veritabanı işletmelerin veritabanı yönetim sürecindeki ihtiyaçlarını karşılıyor. Bu yazımızda sizler için Oracle Veritabanı ve sürümlerini açıklayarak öne çıkmasını sağlayan özelliklerinden söz ettik.</p>
<h3><strong>Oracle Veritabanı Nedir?</strong></h3>
<p>Oracle veritabanı bir ilişkisel veritabanı yönetim sistemidir. İlişkisel bir veritabanı olarak Oracle Veritabanı verilerin yönetilmesi, tasarlanması, hazırlanması ve sorgulanması süreçlerinde de kullanılan SQL üzerine inşa edilmiştir. Oracle Veritabanı sadece verilerin saklanmaz, aynı zamanda web tabanlı bir yazılım geliştirme ortamı sunar.</p>
<p>Hem işletme içerisinde hem de bulut ortamında performans, ölçeklenebilirlik ve güvenlik sunan Oracle Veritabanı en zorlu analitik ve operasyon iş yükleri için yüksek performans elde edilebiliyor. Bu özelliklere ek olarak çok modelli, çoklu iş yüklü, makine öğrenimine erişimli ve çoklu kullanıcı geliştirme imkânlı olma özellikleriyle öne çıkıyor.</p>
<h3><strong>Oracle Veritabanı Sürümleri Nelerdir?</strong></h3>
<p>Oracle veritabanı farklı uygulama amaçları için her biri farklı geliştirme ve dağıtım senaryoları için uygun olan farklı sürümlere sahiptir (2015 yılından itibaren aşağıdaki &#8216;Standart Sürüm One&#8217; ve &#8216;Standart Sürüm&#8217;, &#8216;Standard Edition 2&#8217; adı altında birleştirilmiştir). Belirli uygulama amaçları için Oracle veritabanının yeteneklerini geliştiren çeşitli veritabanı seçenekleri, paketleri ve benzeri çeşitli ürünler sunar. Oracle veritabanının sahip olduğu sürümler şu şekilde özetlenebilir:</p>
<p><strong>&gt; Standart Sürüm One: </strong>Oracle veritabanının bu sürümü küçük işletmeler için tek sunuculu ortamlardan yüksek oranda dağıtılmış ortamlara kadar çalışma grubu, departman düzeyi ve web uygulamaları oluşturmak için gerekli tüm olanakları içerir.</p>
<p><strong>&gt; Standart Sürüm: </strong>Büyük makineler ve hizmetlerin kümelenmesine yönelik Oracle Real Application Clusters (Oracle RAC) desteği ile Oracle veritabanının bu sürümde veritabanı boyutu sınırsızdır. Ayrıca bu sürümde de Standart Sürüm One’ın kullanım kolaylığı, gücü ve performansı bulunuyor.</p>
<p><strong>&gt; Enterprise Sürüm: </strong>Oracle veritabanının tüm bileşenlerini içeren bu sürüm yüksek hacimli çevrimiçi işlem işleme uygulamaları, yoğun veri ambarları ve zorlu internet uygulamaları gibi uygulamalar için gereken performansı, kullanılabilirliği, ölçeklenebilirliği ve güvenliği sağlar.</p>
<p><strong>&gt; Express Sürüm: </strong>İndirmesi hızlı, kurulum ve yönetimi basit, geliştirmesi ve dağıtması ücretsiz olan Oracle veritabanının bu sürümü bir giriş seviyesi sürümüdür. Maliyetli ve karmaşık geçişler olmadan Oracle’ın diğer sürümlerine yükseltmeyi kolaylaştırır. Bu sürüm, herhangi bir sayıda işlemciye sahip herhangi bir boyuttaki makineye kurulabilir. 4 GB’a kadar kullanıcı verisi depolarken, 1 GB’a kadar bellek kullanır.</p>
<p><strong>&gt; Personal Sürüm: </strong>Diğer Oracle sürümleri ile tam uyumluluk gerektiren tek kullanıcılı geliştirme ve dağıtım ortamlarını destekleyen bu Oracle veritabanı sürümü Oracle Real Application Clusters (Oracle RAC) desteği dışında Enterprise sürümünde yer alan tüm seçenek ve bileşenleri içerir.</p>
<h3><strong>Neden Oracle Veritabanı?</strong></h3>
<p>Oracle veritabanının işletmeler tarafından tercih edilmesinin çeşitli nedenleri bulunuyor. Bu nedenlerden birkaçını şu şekilde sıralayabiliriz:</p>
<ul>
<li><strong>İşletme giderlerini azaltır: </strong>Makine öğrenimi otomasyonu sayesinde veritabanı provizyonlama, ayarlama, onarma, yamalama, koruma, ölçeklendirme gibi işlemlerin tamamını kullanıcı müdahalesi olmadan, otomatik olarak gerçekleştirir. Böylece ürünlerin yönetme, koruma ve bakım maliyetleri azaltılmış olur.</li>
<li><strong>Veri ihlallerine karşı koruma sağlar: </strong>Veri maskeleme, etkinlik izleme, anahtar yönetimi, şifreleme, ayrıcalıklı kullanıcı erişim kontrolleri gibi veritabanı güvenliği çözümleri sayesinde veri güvenliği ihlalleri tespit edilerek önlenir.</li>
<li><strong>Tüm veri türleri için tek bir veritabanı kullanır: </strong>Bütünleşik veritabanı çözümü sayesinde kullanıcılar karmaşık dönüşümler ve veri fazlalığı gibi sorunlarla uğraşmazlar.</li>
<li><strong>İhtiyaç duyulan yerlerde konuşlandırılır: </strong>Oracle Veritabanı veri merkezinde, genel bulut ortamında, özel bulut ortamında, gereken her yerde konuşlandırılabilir. Bu sayede, yerleşim veya gecikme gibi kritik durumlarda veri merkezinde veya bulut ortamında konuşlandırma arasında esneklik sağlanır.</li>
</ul>
<h3><strong>Oracle Veritabanı Hizmetlerimiz</strong></h3>
<p><strong>Türkiye’nin en yetkin</strong> <strong>Oracle iş ortağı olan</strong> <strong>GTech </strong>olarak sağlıktan hizmete, bankacılıktan enerjiye pek çok sektörde Veritabanı ve Sistem Yönetimi faaliyetleriyle ilgili uzman ekibimizle <a href="https://www.gtech.com.tr/oracle-danismanlik-hizmetleri/"><strong>Oracle Danışmanlık Hizmeti</strong></a> sunuyoruz. En güncel teknolojileri kullanarak yüksek performans ve yüksek kaliteli sistem yönetimi sağlanması için eşsiz ve özel bir destek sunan <strong>GTech,</strong> danışmanlık ve bakım hizmetleri dahil işletmenize en uygun çözümleri sağlar. Siz de <strong>GTech </strong>olarak sunduğumuz <a href="https://www.gtech.com.tr/oracle-danismanlik-hizmetleri/"><strong>Oracle Danışmanlık Hizmeti</strong></a> hakkında daha ayrıntılı bilgi almak istiyorsanız <a href="https://www.gtech.com.tr/bize-ulasin/"><strong>bizimle iletişime geçebilirsiniz.</strong></a></p>
<p>&nbsp;</p>
<p><strong>Kaynakça</strong></p>
<p><a href="https://docs.oracle.com/cd/B19306_01/server.102/b14220/intro.htm">Kaynak: Oracle Resmi Dokümantasyonu</a></p>
<p><a href="https://www.oracle.com/tr/database/">Kaynak: Oracle Veritabanı Ürün Sayfası</a></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-veritabani-nedir/">Oracle Veritabanı Nedir?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Oracle Veritabanlarında Neden Exadata Kullanılmalı?</title>
		<link>https://www.gtech.com.tr/oracle-veritabanlarinda-neden-exadata-kullanilmali/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Fri, 26 Nov 2021 16:00:30 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/oracle-veritabanlarinda-neden-exadata-kullanilmali/</guid>

					<description><![CDATA[<p>Kurumların sahip olduğu verilerin her geçen gün yığınlar halinde büyümeye devam etmesi, etkili veri yönetim ve kullanım stratejilerine ihtiyacı doğuruyor. Verilerin çok önemli bir rol oynadığı iş dünyasında orta ve büyük ölçekli kurumlar geçmişe yönelik verilerini analiz ederek elde ettikleri sonuçlara göre pazarlama, üretim, müşteri yönetimi, tedarik yönetimi gibi pek çok önemli süreci planlıyor. Bu [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-veritabanlarinda-neden-exadata-kullanilmali/">Oracle Veritabanlarında Neden Exadata Kullanılmalı?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Kurumların sahip olduğu verilerin her geçen gün yığınlar halinde büyümeye devam etmesi, etkili veri yönetim ve kullanım stratejilerine ihtiyacı doğuruyor. Verilerin çok önemli bir rol oynadığı iş dünyasında orta ve büyük ölçekli kurumlar geçmişe yönelik verilerini analiz ederek elde ettikleri sonuçlara göre pazarlama, üretim, müşteri yönetimi, tedarik yönetimi gibi pek çok önemli süreci planlıyor. Bu nedenle, veri yönetimi kurumların iş süreçlerinin etkinliği için büyük önem taşıyor.</p>
<p>Verilerin oluşturduğu istatistiksel raporlar, geriye dönük analizler geleneksel sistemler ile de gerçekleştirilebiliyor olsa da bu işlemler yeni nesil sistemler sayesinde daha etkin, güvenli ve hızlı bir şekilde yerine getirebiliyor. Oracle Exadata ise bu kolaylığı ve zaman verimliliğini sağlayan teknolojiler arasında en yaygın olarak tercih edilen sistemdir. Bu yazımızda sizler için Exadata sistemini açıklayarak sahip olduğu özelliklere ve bu özellikler sayesinde elde edilen avantajlara yer verdik.</p>
<h3><strong>Exadata Nedir?</strong></h3>
<p>Exadata, Oracle tarafından tasarlanmış, kullanıcılara kurumsal sınıf veritabanlarına ve bunlarla ilişkili iş yüklerine yönelik optimize edilmiş işlevsellik sağlayan bir veritabanı sunucu makinesidir. Exadata sistemi, Oracle veritabanı yazılımı ve Sun Microsystems tarafından oluşturulan donanım sunucu ekipmalarını kullanıyor. Oracle Veritabanı Makinesi ve Exadata Depolama Makinesi olmak üzere iki temel bileşenden oluşan Exadata akıllı tarama (smart scan) temel mantığını kullanarak çalışıyor. Akıllı tarama özelliği sayesinde depolama indeksleri sayesinde verinin depolandığı alanı bulunduğunu belirlenmesini ve hızla ulaşılmasını sağlıyor. Ayrıca, Exadata özel bir algoritma sayesinde yüksek boyutlarda veriyi sıkıştırabiliyor ve sıkıştırılmış veriyi okuma imkânı tanıyor.</p>
<p>Exadata sistemi farklı büyüklük ve konfigürasyona göre 1/8, 1/4, 1/2 ve tam (full) olmak üzere dört farklı kategoride oluşturulabiliyor. 1/8 ve 1/4 sistemlerinin kabinet içi görünümleri fiziksel olarak aynı olup 2 veritabanı sunucusu ve 3 depolama sunucusu bulunuyor. 1/4 Exadata sisteminin CPU ve disklerinin yarısı aktif edilmediğinde 1/8 konfigürasyonunda Exadata ortaya çıkıyor. Exadata sisteminin 1/2 konfigürasyonun 4 veritabanı sunucusu, 7 adet depolama sunucusu yer alıyorken; tam bir Exadata sisteminde ise 8 veritabanı sunucusu, 14 depolama sunucusu bulunuyor.</p>
<h3><strong>Exadata’nın Tarihçesi</strong></h3>
<p>Eylül 2008 tarihinde Oracle tarafından Exadata ilk olarak HP Oracle Database Machine olarak da bilinen v1 ismiyle duyuruldu. Mevcut veri depolarını 10 kata kadar daha performansla çalıştıran bir yazılım ve donanımın uyumlu olduğu bir sistem olarak ortaya çıkan Exadata v1 sahip olduğu akıllı tarama, I/O kaynak yöneticisi (I/O resource manager), birleştirme filtreleri (bloom filters), artımlı yedekleme filtreleme, akıllı dosya oluşturma yazılımlarını; ölçeklenebilir 4 yuvalı bilgi işlem ve depolama sunucuları, 1 terabayt disk, 20 Gbit/sn dahili yapı ve 1 Gbit/s veri merkez ağı donanımlarıyla birleştirilmesiyle üretilmiştir.</p>
<p>Eylül 2009 tarihinde de v2 ismiyle çıkış yapan Exadata sonraki dönemlerde X versiyonuna geçerek X2 adı ile başlayan serinin Eylül 2021 tarihinde çıkarılan X9M ile devam eden seri, sonrasında X10M ve X11M sürümleriyle güncellenmeye devam etmiştir. Oracle Exadata bu süreçte hem yazılımsal hem de donanımsal açıdan pek çok gelişme ortaya koymuştur. X9M nesli ürünleri arasında Oracle Exadata Database Machine X9M ve Oracle Kendi Kendini Yöneten Veritabanı’nı kullanıcı veri merkezlerinde çalıştıran tek platform olan Exadata Cloud@Customer X9M de bulunuyor.</p>
<p>Exadata sisteminde son gelinen noktada %70 daha yüksek IOPS hızı ve 19 mikrosaniyenin altında IO gecikmesi sayesinde çevrimiçi işlem süreçlerini (OLTP) daha da hızlandırıyor. Bununla birlikte, makine öğrenimi iş yüklerinde ve analitik SQL kapasitesinde %87’ye varan bir artış sunuyor. Son sürüm sayesinde kullanıcılar işlemsel iş yüklerini çalıştırma maliyetlerini %42, analitik iş yüklerini çalıştırma maliyetlerini ise %47’ye varan oranlarda azaltabiliyor.</p>
<h3><strong>Exadata’nın Avantajları ve Özellikleri Nelerdir?</strong></h3>
<p>Oracle tarafından sunulan Exadata sisteminin sahip olduğu özellikler geleneksel sistemlere göre Exadata sisteminin daha avantajlı olduğu gösteriyor. Exadata’yı diğer sistemlerden ayırarak öne çıkaran ve kullanıcılarına pek çok avantaj sağlayan özellikler şu şekilde listelenebilir:</p>
<p><strong>&gt; Tümleşik Sistem: </strong>Exadata sistemi alındığında veritabanı sunucusu, hücre sunucusu ve infiniband ile birlikte, Oracle veritabanının en optimum şekilde çalışması için gerekli olan donanım ve yazılım kurulu olarak gelir. Bununla birlikte, yazılım ve donanım uyumlu çalışan bu sistemde bir sorun veya arıza ile karşılaşan kullanıcıların tek bir sağlayıcıyı muhatap olarak görmesi Exadata’nın tercih edilme nedenlerinden birisi olarak gösteriliyor.</p>
<p><strong>&gt; Ölçeklendirme ve Kullanılabilirlik: </strong>Exadata sisteminin orta ve büyük ölçekli tüm kurumlar tarafından tercih edilmesinin bir diğer nedeni ise ölçeklendirilebilir olmasıdır. Bu özelliği sayesinde kurumlar ihtiyaçlarına uygun Exadata sistemini tercih edebiliyor. Exadata sisteminin bu özelliği tasarımın temelini oluşturuyor. Düşük ihtiyaçlar doğrultusunda 1/8 sistemi ile başlayabilir, ilerleyen süreçte 1/2 veya tam Exadata sistemine geçebilir hatta 1 kabinetin yetmediği durumlarda 8 kabinete kadar yükseltme yapılabiliyor.</p>
<p><strong>&gt; Konsolidasyon: </strong>Exadata birden fazla dağıtık sunucuda çalışan veritabanlarını birleştirerek lisans ve yönetim maliyetlerini azaltabiliyor. Exadata sisteminde bulunan I/O Kaynak Yöneticisi (I/O Resource Manager) yazılımı sayesinde birden fazla veritabanını Exadata sistemine taşıyarak beraber çalışmaları sağlanabiliyor. Böylece, lisans ve yönetime ek olarak donanım ve yedekleme maliyetleri de en aza indirilebiliyor.</p>
<p><strong>&gt; Erişilebilirlik: </strong>Exadata sistemi en az iki node veritabanı sunucuyla oluşturulduğu ve RAC yapısında olduğu için herhangi bir node üzerinde yaşanacak istenmeyen bir durum karşısında diğer node ile kesintisiz bir şekilde çalışmaya devam edebilirsiniz. Storage ile yedeklilik sağlandığı için de bir veya birden fazla diske zarar gelmesi durumunda da verileri kaybetmenin önüne geçilebiliyor.</p>
<p><strong>&gt; Bant Genişliği: </strong>Veritabanı ve depolama sunucusu arasında bulunan infiniband switch özelliği sayesinde Exadata sistemi 40 Gb/s ve üzeri veri alışverişi yapılabiliyor. Bu durum, geleneksel sistemler ile karşılaştırıldığında Exadata’nın yüksek miktarda veri transferi imkânı sunarak daha avantajlı olduğunu ortaya koyuyor.</p>
<p><strong>&gt; Akıllı Veri Bulma: </strong>Diğer sunuculardan farklı olarak Exadata sisteminde bir sorgulama gerçekleştirildiğinde Storage Index ve Smart Scan özellikleri sayesinde yalnızca aranan veri bloğunu bulur ve ortaya çıkarması açısından geleneksel sistemlerden çok daha hızlı çalışır.</p>
<p><strong>&gt; SQL Offload: </strong>Exadata sisteminin ilk çıkışıyla ortaya koyduğu bir yenilik olan SQL Offload özelliği ile Exadata sahip olduğu bütünleşik mimari ve Cell olarak adlandırılan depolama yapısı ile geleneksel sorgulardaki işleyişin ötesine geçilebiliyor. Standart sorgularda veritabanından istenen veriler sunucu üzerinde işlenirken Exadata sistemi üzerinden çağrılan veriler Cell üzerinden döner ve bu durum performans açısından ciddi kazanımlar sağlar.</p>
<p><strong>&gt; Bulut Sistemi: </strong>Exadata sahip olduğu tüm bu özelliklere ek olarak son modelinde self servis ve yüksek performans Database Cloud sayesinde kullanıcıların altyapı yöntemi olmadan daha verimli bir şekilde çalışmaları sağlanabiliyor.</p>
<p>Kurumların iş süreçlerinin birçoğunda önemli bir rolü bulunan veri yönetimi ve kullanımında etkinlik sağlamak için yeni nesil çözümlerden faydalanılması önemlidir. Uzman kadrosu ile GTech, şirketinizin <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/"><strong>sistem ve veritabanı yönetimi</strong></a> sürecindeki verimliliği artırmayı sağlayan yeni nesil çözümler sunuyor. GTech hizmet ve çözümleri hakkında daha ayrıntılı bilgi almak için <a href="https://www.gtech.com.tr/oracle-danismanlik-hizmetleri/"><strong>sistem ve veritabanı yönetimi uzmanlarımıza ulaşabilirsiniz.</strong></a></p>
<p>&nbsp;</p>
<p><strong>Kaynakça</strong></p>
<p><a href="https://www.oracle.com/tr/engineered-systems/exadata/">Kaynak: Oracle Exadata</a></p>
<p><a href="https://www.gridgroup.com.tr/neden-oracle-exadata/">Kaynak: Grid Group – Neden Oracle Exadata</a></p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/oracle-veritabanlarinda-neden-exadata-kullanilmali/">Oracle Veritabanlarında Neden Exadata Kullanılmalı?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>PostgreSQL’e Veri Aktarımında Önemli Noktalar</title>
		<link>https://www.gtech.com.tr/postgresqle-veri-aktariminda-onemli-noktalar/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Thu, 01 Apr 2021 18:24:57 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/postgresqle-veri-aktariminda-onemli-noktalar/</guid>

					<description><![CDATA[<p>PostgreSQL açık kaynaklı bir ilişkisel veri yönetim sistemidir (RDBMS). Son yıllarda, birçok geliştirici ve şirketin verilerini diğer veritabanlarından PostgreSQL’e geçmesiyle popüleritesinde önemli bir artış oldu. Bir veritabanın başka bir veritabanına taşınması, özellikle veritabanı yönetim sisteminden diğerine aktarılması göz korkutucu olsa da aktarılan hedef veritabanının sunduğu imkanlar veri aktarma işlemi daha cazip bir hale getirmektedir. Bu [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/postgresqle-veri-aktariminda-onemli-noktalar/">PostgreSQL’e Veri Aktarımında Önemli Noktalar</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>PostgreSQL açık kaynaklı bir ilişkisel veri yönetim sistemidir (RDBMS). Son yıllarda, birçok geliştirici ve şirketin verilerini diğer veritabanlarından PostgreSQL’e geçmesiyle popüleritesinde önemli bir artış oldu. Bir veritabanın başka bir veritabanına taşınması, özellikle <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/">veritabanı yönetim sisteminden diğerine aktarılması</a> göz korkutucu olsa da aktarılan hedef veritabanının sunduğu imkanlar veri aktarma işlemi daha cazip bir hale getirmektedir. Bu yazıda PostgreSQL’e veri aktarma işlemlerinin hangi veritabanlarından gerçekleştirildiğini nedenleri ile birlikte ele alınmaktadır.</p>
<p>&nbsp;</p>
<h2><strong>MySQL’den PostgreSQL’e Veri Aktarma</strong></h2>
<ul>
<li>MySQL ile PostgreSQL arasında birçok benzerlik olsa da radikal farklılıklar da bulunmaktadır. Şu anda Oracle’a ait olan MySQL açık kaynaklı bir veritabanıdır ama tescilli kullanım için çeşitli sürümler de sunmaktadır. Ancak, PostgreSQL ise tamamen ücretsiz ve açık kaynaklı bir veritabanıdır ve açık kaynak lisansı olan PostgreSQL lisansı altında yayınlanır. SQL uyumluluğu açısından ise MySQL bazı sürümlerle uyumlu iken PostgreSQL büyük ölçüde uyumluluk sağlar.</li>
<li>MySQL asıl temel tablodan gerektiğinde güncellenebilen bir sorgunun sonuçlarını içeren veritabanı nesnesi olan gerçekleşmiş görünümleri desteklememekte, yalnızca kendisini oluşturan oturumun süresinin ardından sürmesi gerekmeyen verileri depolayan geçici tabloları desteklemektedir. Ancak, PostgreSQL her iki tablo türünü de desteklemektedir.</li>
<li>Kullanıcı tarafından yeni veri türleri, işlevler, operatörler, dizin yöntemleri ve yöntemsel diller gibi birçok yolla genişletilebilir olan model sistemleri MySQL tarafından desteklenmemektedir. PostgreSQL ise genişletilebilirliğe özel çeşitli özelliklere sahiptir. Bu sayede yeni modelleri, fonksiyonları, indeks türleri eklemek mümkündür. Hem MySQL hem de PostgreSQL istemci ve sunucu iletişimi arasında SSL şifreli bağlantılar sunmaktadır. Buna ek olarak, PostgreSQL SELinux güvenlik politikasına dayalı ek erişim kontrolleri sağlayan SE-PostgreSQL olarak adlandırılan dahili bir geliştirme sunmaktadır.</li>
<li>MySQL, JSON veri türü desteğine sahiptir ancak başka NoSQL özelliği bulunmamaktadır. Ayrıca, JSON için dizinlemeyi de desteklemez. PostgreSQL ise JSON’u ve yerel XML desteği ve HSTORE ile diğer NoSQL özelliklerini destekler. Ayrıca, daha hızlı erişim için JSON verilerinin dizinlenmesini destekler.</li>
</ul>
<p>&nbsp;</p>
<h2><strong>Oracle’den PostgreSQL’e Veri Aktarma</strong></h2>
<ul>
<li>Hem Oracle hem de PostgreSQL veritabanı ile iletişim kurmak için bir uygulama API’si sağlasa da PostgreSQL açık kaynak kodludur. Bu da geliştiricilerin herhangi bir PostgreSQL bileşenine, projelerine başlık dosyasını dahil etmeleriyle doğrudan erişebilme imkanı sağlar.</li>
<li>Oracle, yerleşik bir kimlik doğrulama sistemine sahiptir. Postgre ise ana bilgisayar tabanlı kimlik doğrulamaya dayanır ve bu nedenle çok çeşitli kimlik doğrulama yöntemlerini destekleyebilir. Bu da kimlik doğrulama için daha fazla esneklik ve işlemi yetkilendirme seçeneği sağlar.</li>
<li>Oracle, çoğunlukla tescilli bir eklenti sistemine sahiptir. Ancak, PostgreSQL’in genişletme sistemi genel topluluk tarafından desteklenir. Bu nedenle, binlerce eklentiye erişim mevcuttur.</li>
<li>Oracle, PL / SQL adlı yerleşik bir programlama diline sahipken, PostgreSQL yalnızca PL / pgSQL değil bir çoğunu barındırır. Ayrıca, PostgreSQL kullanıcıların eklenti olarak ek yöntemsel diller ve daha fazla programlama için bağlamlar oluşturmasına olanak tanıyan bir uzantı sistemine sahiptir.</li>
<li>Performans açısından PostgreSQL bir okuma kümesinde sınırsız sayıda düğüm oluşturabilmekte ve farklı iş yüklerine yönelik bir özel okuma işlemini sıfır maliyet ile sunmaktadır. Oracle ise yüksek ölçeklendirilmiş iş yükleri için önerilse de maliyeti oldukça yüksektir.</li>
</ul>
<p>&nbsp;</p>
<h2><strong>Microsoft SQL Server’dan PostgreSQL’e Veri Aktarma</strong></h2>
<ul>
<li>PostgreSQL, verilerin hızlı işlenmesine yardımcı olan ‘COPY TO’ ve ‘COPY FROM’ gibi farklı komutlar sunar. Ayrıca, yararlı hata mesajları da sağlar. İçe aktarma ile ilgili küçük bir sorun bile varsa, hata vererek içe aktarmayı o anda durdurur. Öte yandan Microsoft SQL Server, verilerin içe aktarılmasını veya dışa aktarılmasını desteklemez.</li>
<li>Her iki veritabanı da çapraz platform destekli de olsa PostgreSQL Windows, Linux, Unix, OS X ve bunun gibi birçok işletim sistemini destekler. Ancak, Microsoft SQL Server yalnızca Windows ve Linux’u destekler.</li>
<li>PostgreSQL yöntemsel dil desteği sağlamaktadır. Bununla birlikte, JSON veri türünü desteklemektedir. Tek başına üst düzey güç ve çok fazla çeşitlilik sunmaktadır. Bir kullanıcı, PostgreSQL’de yöntemsel diller desteğine sahip olduğu için SQL ile Python, Pear, R, Java, PHP’yi kolayca kullanabilir. Microsoft SQL Server ayrı bir özellik olarak yöntemsel dil desteği sağlar. Bu özellik PostgreSQL’e göre biraz daha dağınık, yavaş ve zayıf özelliklere sahiptir.</li>
<li>PostgreSQL, analitik çalışma için çok sayıda kurallı ifade sağlamaktadır. Öte yandan, Microsoft SQL Server, PostgreSQL tarafından sağlanan bu kurallı ifadeler karşılaştırıldığında benzer ancak daha zayıf alt dizge ve desen indeksine sahiptir.</li>
<li>Harici dil bağlantıları açısından PostgreSQL’in programlama ortamlarına bağlanması ve bu ortamlarda kullanılması Microsoft SQL Server’a göre daha kolaydır. Microsoft SQL Server harici dil bağlantıları farklılık gösterir ve fazladan sürücülerin yüklenmesi gerekir.</li>
<li>PostgreSQL bir açık kaynak projesi olduğu için tamamen ücretsizdir. Microsoft SQL Server ise bir Microsoft ürünüdür ve kullanmak için şirket veya kullanıcının belirli bir ödeme yapması gerekir.</li>
</ul>
<p>&nbsp;</p>
<h2><strong>MariaDB’den PostgreSQL’e Veri Aktarma</strong></h2>
<ul>
<li>MariaDB ve PostgreSQL sistemleri arasındaki en büyük farklardan biri performanstır. PostgreSQL’deki okuma ve yazma işlemleri ve yanıt dönüş süresi, MariaDB’ye kıyasla çok daha hızlıdır.</li>
<li>PostgreSQL sistemi, veritabanının performansını artırmaya yardımcı olan kısmi dizinler, gerçekleşmiş görünümler sunarken MariaDB sisteminde böyle bir özellik desteklenmemektedir.</li>
<li>Sunucu işletim sistemleri açısından PostgreSQL, MariaDB’nın desteklediği Solaris, Windows, FreeBSD ve Linux sistemlerine ek olarak NetBSD, Unix, OpenBSD ve daha birçoğunu desteklemektedir.</li>
</ul>
<p>&nbsp;</p>
<h2><strong>SQLite’dan PostgreSQL’e Veri Aktarma</strong></h2>
<ul>
<li>PostgreSQL sistemi ile SQLite arasındaki farklardan ilki bölütleme yöntemidir. SQLite sistemi herhangi bir bölütleme yöntemini desteklemez. Bunun yanı sıra, PostgreSQL sistemi liste, aralık ve karma gibi çeşitli bölütleme yöntemlerini destekler.</li>
<li>SQLite ve PostgreSQL sistemleri kimlik doğrulama ve güvenlik açısından farklılık göstermektedir. PostgreSQL, çeşitli gelişmiş güvenlik özellikleri sağlar ve birçok yerleşik yapılandırma sunar. Öte yandan SQLite, bir veritabanının dosyalarına herkes tarafından erişebildiği için kullanılan bir kimlik doğrulama sistemi içermez.</li>
<li>Kullanıcı yönetimi açısından PostgreSQL sisteminde, birden çok kullanıcı uygun yetkilendirme ile sisteme erişebilir. Ancak, SQLite, kullanıcı yönetimi işlevine sahip olmadığı için birden çok kullanıcıya erişimi desteklemez.</li>
<li>PostgreSQL, karmaşık veritabanını herhangi bir kısıtlama olmaksızın yönetme işlevselliğine sahiptir. Öte yandan SQLite, küçük bir uygulama olduğu için basit bir veritabanı sistemini yönetmek için kullanılır.</li>
</ul>
<p>&nbsp;</p>
<p>Yukarıda farklı sistemler ile PostgreSQL arasındaki farklılıklara yer verilmektedir. Bu farklılıklar diğer sistemlerden PostgreSQL’e veri aktarmanın başlıca nedenleri karşılaştırmalı olarak göstermektedir. Veri aktarmada hedef kaynağın PostgreSQL sistemi olmasındaki nedenler 4 başlıkta özetlenebilir:</p>
<ul>
<li><strong>PostgreSQL kurumsal kullanıma hazır bir sistemdir.</strong></li>
</ul>
<p>Görev açısından kritik iş uygulamaları için uygun olan PostgreSQL, kullanıma hazır, güvenli ve iş sürekliliğini sağlamak için oldukça çeşitli ortamlar için yapılandırılabilir. Unix, Linux, macOS ve Windows dahil tüm büyük işletim sistemlerinde çalışır ve çeşitli programlama dilleri sunar.</p>
<ul>
<li><strong>PostgreSQL ücretsiz bir sistemdir.</strong></li>
</ul>
<p>PostgreSQL’in kullanımı tamamen ücretsizdir. Kendine ait lisans sayesinde diğer açık kaynaklı veri tabanlarının aksine hiçbir kısıtlama olmadan kullanabilmektedir.</p>
<ul>
<li><strong>PostgreSQL güçlü bir sistemdir.</strong></li>
</ul>
<p>PostgreSQL bir veritabanından beklenilen tüm profesyonel düzeydeki özelliklere sahiptir. Birden çok kullanıcıya, birden çok veritabanına, saklı yordamlara, güçlü ve çeşitli türlere, görünümlere, yedeklemelere ve daha birçok işleme erişim imkanı sağlamaktadır.</p>
<ul>
<li><strong>PostgreSQL güvenli bir sistemdir.</strong></li>
</ul>
<p>Güvenli bağlantılar için SSL, veritabanı şifreleme ve ihtiyaca göre kullanıcıları, rollerini yönetme olanağı sağlar.</p>
<p>20 yıllık bilgi ve tecrübeye sahip GTech uzman kadrosu, sağlık, bankacılık, telekomünikasyon, perakende, enerji, kamu gibi birçok sektörde <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/">sistem ve veritabanı yönetimi</a> hizmeti sunmaktadır. Siz de PostgreSQL sistemine veri taşıma konusunda daha detaylı bilgi sahibi olmak için <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/">bizimle iletişime geçebilirsiniz</a>.</p>
<p><strong> </strong></p>
<h4><strong>Kaynakça</strong></h4>
<p><a href="https://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL">Kaynak: PostgreSQL Wiki – Veritabanı Dönüşümü</a></p>
<p><a href="https://medium.com/@sejalgoyal1998/database-comparison-ms-sql-server-vs-postgresql-vs-mongodb-13edd984877f">Kaynak: Medium – MS SQL Server vs PostgreSQL vs MongoDB</a></p>
<p><a href="https://www.enterprisedb.com/blog/4-reasons-postgresql-was-named-database-management-system-year-2020">Kaynak: EnterpriseDB Blog</a></p>
<p><a href="https://www.2ndquadrant.com/en/postgresql/postgresql-vs-mysql/">Kaynak: 2ndQuadrant – PostgreSQL vs MySQL</a></p>
<p><a href="https://scalegrid.io/blog/postgresql-vs-oracle-difference-in-costs-ease-of-use-functionality/">Kaynak: ScaleGrid – PostgreSQL vs Oracle</a></p>
<p><a href="https://www.educba.com/postgresql-vs-sqlite/?source=leftnav">Kaynak: EDUCBA – PostgreSQL vs SQLite</a></p>
<p><a href="https://www.educba.com/postgresql-vs-mariadb/?source=leftnav">Kaynak: EDUCBA – PostgreSQL vs MariaDB</a></p>
<p><script type="application/ld+json">
{
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [
        {
            "@type": "ListItem",
            "position": 1,
            "item": {
                "@id": "https://www.gtech.com.tr",
                "name": "Anasayfa"
            }
        },
        {
            "@type": "ListItem",
            "position": 2,
            "item": {
                "@id": " https://www.gtech.com.tr/gtech-blog/",
                "name": "Blog"
            }
        },
        {
            "@type": "ListItem",
            "position": 3,
            "item": {
                "@id": "https://www.gtech.com.tr/postgresqle-veri-aktariminda-onemli-noktalar/",
                "name": "PostgreSQL’e Veri Aktarımında Önemli Noktalar"
            }
        }
    ]
}
</script></p>
<p>Hazırlayan: GTech Veritabanı ve Büyük Veri Platformu Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/postgresqle-veri-aktariminda-onemli-noktalar/">PostgreSQL’e Veri Aktarımında Önemli Noktalar</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Veritabanı Sağlık Taraması Neden Gerekli?</title>
		<link>https://www.gtech.com.tr/veritabani-saglik-taramasi-neden-gerekli/</link>
		
		<dc:creator><![CDATA[Big Data]]></dc:creator>
		<pubDate>Mon, 02 Nov 2020 14:41:35 +0000</pubDate>
				<category><![CDATA[Sistem ve Veritabanı Yönetimi]]></category>
		<guid isPermaLink="false">https://gtech-dev.local/veritabani-saglik-taramasi-neden-gerekli/</guid>

					<description><![CDATA[<p>Veritabanının türü ne olursa olsun, zaman içerisinde ve farklı nedenlerden kaynaklanan yavaşlamalar, hatalar ve beklenmeye sorunlar ortaya çıkabilir. Bu tür sorunların altında sistem bakımının uzun süreden beri ya da ilk günden beri yapılmamış olması, sistem kullanıcılarının sayısındaki artış, güncellemelerin yapılmaması, veritabanının kaldırabileceğinden çok daha fazla uygulama yüklenmesi gibi nedenler yatmaktadır. GTech olarak bu yazımızda, veritabanı [&#8230;]</p>
<p>The post <a href="https://www.gtech.com.tr/veritabani-saglik-taramasi-neden-gerekli/">Veritabanı Sağlık Taraması Neden Gerekli?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Veritabanının türü ne olursa olsun, zaman içerisinde ve farklı nedenlerden kaynaklanan yavaşlamalar, hatalar ve beklenmeye sorunlar ortaya çıkabilir. Bu tür sorunların altında sistem bakımının uzun süreden beri ya da ilk günden beri yapılmamış olması, sistem kullanıcılarının sayısındaki artış, güncellemelerin yapılmaması, veritabanının kaldırabileceğinden çok daha fazla uygulama yüklenmesi gibi nedenler yatmaktadır. GTech olarak bu yazımızda, veritabanı sağlık taraması hakkında merak edilen konulara değindik. GTech’in sunduğu <a href="https://www.gtech.com.tr/sistem-ve-veritabani-yonetimi/">Sistem ve Veritabanı Yönetimi</a> hizmetleri için bize ulaşabilir veya demo talebinde bulunabilirsiniz.</p>
<h2><strong>Veritabanı Sağlık Taraması Ne İşe Yarar?<br />
</strong></h2>
<p>Bakımsız ve sağlıksız bir veritabanı beraberinde birçok sorunu getirir. Yavaş çalışma, hatalı işlemler yapma, güvenlik açıklarına neden olma, verilerin yanlış analiz edilmesi ve bu sorunların işe ya da müşterilere yansımasından dolayı yaşanacak para ve itibar kaybı gibi birçok sorun, veritabanının bakımsızlığından kaynaklanabilir. <a href="https://www.gtech.com.tr/veritabani-saglik-taramasi/">Veritabanı sağlık taraması</a> ile, mevcut veritabanında yaşanan yavaşlama ve hatalar ortadan kaldırılarak, daha sağlıklı bir çalışma ortamı sağlanır. Bu sayede, veritabanından kaynaklanan ve işletmelerin zaman, para, müşteri kayıplarının önüne geçilir.</p>
<h3><strong>Veritabanı Sağlık Taramasının Yararları Nelerdir?<br />
</strong></h3>
<p>Performans artışı sağlar: Uygulama ve depolama sunucuları, veritabanları ve işletim sistemlerinin mimari gereksinimleri ve önemli metrikleri dikkate alınarak gerçekleştirilen performans analizleri sonrasında ortaya çıkan bulgulara bağlı olarak yapısal ve süreçsel iyileştirmeler gerçekleştirilir. Bu sayede, bağlantılı ya da bağımsız sorunlar giderilerek performans artışı sağlanır.</p>
<p>Güvenlik artışı sağlar: Mevcut sistem ya da veritabanındaki güvenlik durumu kontrol edilip riskli alanlar belirlenerek gerekli güvenlik önlemleri alınır.</p>
<p>Verim artışı sağlar: İlgili sistem ve ürünlerin en doğru ve verimli şekilde ayarlanıp, lisanslarla uyumlu bir şekilde kullanımını sağlayacak konfigürasyon optimizasyonu gerçekleştirilip, mevcut teknoloji ve kabiliyetlerin en verimli şekilde kullanımı sağlanır.</p>
<p>Mevcut ve gelecekteki sorunlara çözümler sunar: Sistemlerdeki hata ve problem kayıtları, sürüm güncellemeleri ve yama seviyesi, performans metrikleri, yük ve kapasite durumu gibi konular incelenerek, yaşanan ve olası problemler tespit edilir ve bu problemler ortadan kaldırılır.</p>
<h4><strong>Neden GTech?<br />
</strong></h4>
<p>Oracle ürünlerinde de diğer IT çözümlerinde olduğu gibi, zaman içerisinde farklı sebeplerden kaynaklanan performans kayıpları, hatalar ve sorunlar oluşabilmektedir. Sistem bakımının aksatılması, yama yönetiminin yanlış yapılması, sistem üzerinde meydana gelen yük artışına paralel bir şekilde geliştirme yapılmaması gibi birçok nedenden dolayı veritabanında yavaşlamalar, hatalar ya da beklenmeyen sorunlar ortaya çıkmasına neden olabilmektedir.</p>
<p>GTech; 20 yıllık veri uzmanlığı, çözüm odaklı yaklaşımı, Oracle sertifikalı uzman kadrosu ve Türkiye’nin önde gelen kuruluşlarında kanıtlanmış projeleri ile veritabanı sağlık taraması konusunda öne çıkmaktadır. GTech, Oracle’ın belirlediği best practise uygulamaları ile sisteminizin en doğru, hızlı ve sağlıklı şekilde çalışması için gerekli olan uçtan uca veritabanı sağlık taramasını yapar ve sorunları tespit edip, bu tespitlerle birlikte çözüm önerilerini detaylı olarak açıklar.</p>
<p>GTech’in <a href="https://www.gtech.com.tr/veritabani-saglik-taramasi/">Veritabanı Sağlık Taraması Hizmeti</a> ile daha performanslı, daha güvenli ve daha erişilebilir bir sisteme sahip olmak için bizimle iletişime geçin!</p>
<p>Hazırlayan: GTech Sistem ve Veritabanı Yönetimi Ekibi</p>
<p>The post <a href="https://www.gtech.com.tr/veritabani-saglik-taramasi-neden-gerekli/">Veritabanı Sağlık Taraması Neden Gerekli?</a> appeared first on <a href="https://www.gtech.com.tr">GTech</a>.</p>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
