{"id":4066,"date":"2023-08-30T23:00:34","date_gmt":"2023-08-30T23:00:34","guid":{"rendered":"https:\/\/sunucucozumleri.com\/?p=4066"},"modified":"2023-08-30T23:00:34","modified_gmt":"2023-08-30T23:00:34","slug":"postgresql-nedir-ve-nasil-calisir","status":"publish","type":"post","link":"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/","title":{"rendered":"PostgreSQL Nedir ve Nas\u0131l \u00c7al\u0131\u015f\u0131r?"},"content":{"rendered":"<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemi (RDBMS) olarak bilinir. Bu yaz\u0131da PostgreSQL&#8217;\u00fcn nedir, \u00f6zellikleri nelerdir, nas\u0131l kurulur, veritaban\u0131 yap\u0131s\u0131 nas\u0131ld\u0131r, tablo olu\u015fturma ve veri ekleme i\u015flemleri nas\u0131l ger\u00e7ekle\u015ftirilir, sorgular nas\u0131l \u00e7al\u0131\u015f\u0131r ve yedekleme ve kurtarma i\u015flemleri hakk\u0131nda bilgiler verece\u011fiz. PostgreSQL, kullan\u0131c\u0131 dostu aray\u00fcz\u00fc ve geli\u015fmi\u015f \u00f6zellikleriyle veritaban\u0131 y\u00f6netimi konusunda bir\u00e7ok avantaj sunmaktad\u0131r. Yaz\u0131n\u0131n devam\u0131nda detaylar\u0131na de\u011finece\u011fiz.<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Makale \u0130\u00e7eri\u011fi<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"\u0130\u00e7indekiler Tablosunu A\u00e7\/Kapat\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQL_Nedir\" >PostgreSQL Nedir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQLun_Ozellikleri_Nelerdir\" >PostgreSQL&#8217;un \u00d6zellikleri Nelerdir?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQL_Nasil_Kurulur\" >PostgreSQL Nas\u0131l Kurulur?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQLun_Veritabani_Yapisi_Nasildir\" >PostgreSQL&#8217;un Veritaban\u0131 Yap\u0131s\u0131 Nas\u0131ld\u0131r?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQLde_Tablo_Olusturma_ve_Veri_Ekleme\" >PostgreSQL&#8217;de Tablo Olu\u015fturma ve Veri Ekleme<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQL_Sorgulari_Nasil_Calisir\" >PostgreSQL Sorgular\u0131 Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQL_Sorgu_Ornekleri\" >PostgreSQL Sorgu \u00d6rnekleri:<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/sunucucozumleri.com\/blog\/postgresql-nedir-ve-nasil-calisir\/#PostgreSQL_Backups_and_Recovery_%E2%80%93_Yedekleme_ve_Kurtarma\" >PostgreSQL Backups and Recovery &#8211; Yedekleme ve Kurtarma<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQL_Nedir\"><\/span>PostgreSQL Nedir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemidir (RDBMS). \u0130lk olarak 1986 y\u0131l\u0131nda Kaliforniya \u00dcniversitesi&#8217;nde geli\u015ftirilmeye ba\u015flanm\u0131\u015ft\u0131r ve o zamandan beri s\u00fcrekli olarak geli\u015ftirilmekte ve g\u00fcncellenmektedir. PostgreSQL, bir\u00e7ok platformda \u00e7al\u0131\u015fabilen g\u00fcvenilir, g\u00fc\u00e7l\u00fc ve geni\u015f \u00f6zelliklere sahip bir veritaban\u0131 \u00e7\u00f6z\u00fcm\u00fcd\u00fcr.<\/p>\n<p>PostgreSQL, kullan\u0131c\u0131lar\u0131n \u00e7ok say\u0131da veritaban\u0131n\u0131 organize etmesine ve b\u00fcy\u00fck miktarda veriyi depolamas\u0131na izin verir. \u0130leri d\u00fczeyde veri b\u00fct\u00fcnl\u00fc\u011f\u00fc ve g\u00fcvenlik sa\u011flamak i\u00e7in ACID (Atomicity, Consistency, Isolation, Durability) ilkelerine uyar. Ayr\u0131ca, PostgreSQL, karma\u015f\u0131k sorgular\u0131 ve i\u015flemleri destekleyen y\u00fcksek performansl\u0131 bir SQL motoruna sahiptir.<\/p>\n<p>PostgreSQL, bir\u00e7ok \u00f6zelli\u011fi i\u00e7erisinde bar\u0131nd\u0131r\u0131r. Bunlar aras\u0131nda kullan\u0131c\u0131 tan\u0131ml\u0131 veri tipleri, referans veritaban\u0131 sistemleri ile uyumlu \u00e7al\u0131\u015fabilme, tam metin arama, co\u011frafi veri i\u015fleme, XML ve JSON veri i\u015fleme, veritaban\u0131 replikasyonu, paralel sorgu y\u00fcr\u00fctme ve i\u015f ak\u0131\u015f\u0131 y\u00f6netimi gibi \u00f6zellikler bulunur.<\/p>\n<p>Bu nedenlerle, PostgreSQL, bir\u00e7ok b\u00fcy\u00fck \u00f6l\u00e7ekli i\u015fletme, kurulu\u015f ve web uygulamas\u0131 taraf\u0131ndan tercih edilen g\u00fcvenilir bir veritaban\u0131 \u00e7\u00f6z\u00fcm\u00fcd\u00fcr.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQLun_Ozellikleri_Nelerdir\"><\/span>PostgreSQL&#8217;un \u00d6zellikleri Nelerdir?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, a\u00e7\u0131k kaynak kodlu ve g\u00fc\u00e7l\u00fc bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemidir. Di\u011fer veritaban\u0131 sistemlerine k\u0131yasla bir\u00e7ok \u00f6zelli\u011fi ile \u00f6n plana \u00e7\u0131kar. \u0130\u015fte PostgreSQL&#8217;un en dikkat \u00e7eken \u00f6zellikleri:<\/p>\n<p><strong>1. Uzant\u0131labilirlik:<\/strong><\/p>\n<p>PostgreSQL, kullan\u0131c\u0131lar\u0131n kendi \u00f6zel veritaban\u0131 t\u00fcrlerini ve fonksiyonlar\u0131n\u0131 olu\u015fturabilmesine olanak tan\u0131r. Bu sayede, kullan\u0131c\u0131lar ihtiya\u00e7lar\u0131na g\u00f6re veritaban\u0131n\u0131 \u00f6zelle\u015ftirebilir ve esneklik kazanabilir.<\/p>\n<p><strong>2. Yinelenen De\u011ferlerin Kontrol\u00fc:<\/strong><\/p>\n<p>PostgreSQL, yinelenen de\u011ferleri kontrol etme yetene\u011fi sa\u011flar. Bu \u00f6zellik, bir veritaban\u0131nda benzersiz de\u011ferlerin saklanmas\u0131n\u0131 sa\u011flayarak veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc korur.<\/p>\n<p><strong>3. Uzaktan Eri\u015fim \u0130mkan\u0131:<\/strong><\/p>\n<p>PostgreSQL, uzaktan eri\u015fim imkan\u0131 sunar. Bu sayede, farkl\u0131 lokasyonlardan veri taban\u0131na eri\u015febilir ve y\u00f6netebilirsiniz. Ayn\u0131 zamanda, g\u00fcvenli ve \u015fifreli ba\u011flant\u0131 kurma se\u00e7enekleri de sa\u011flar.<\/p>\n<p><strong>4. ACID Uyumlulu\u011fu:<\/strong><\/p>\n<p>PostgreSQL, ACID (Atomicity, Consistency, Isolation, Durability) \u00f6zelliklerini destekler. Bu sayede, i\u015flemlerin g\u00fcvenilir ve tutarl\u0131 bir \u015fekilde ger\u00e7ekle\u015ftirilmesini sa\u011flar. Veri b\u00fct\u00fcnl\u00fc\u011f\u00fc ve istikrar\u0131 \u00f6n plandad\u0131r.<\/p>\n<p><strong>5. Geli\u015fmi\u015f Veri T\u00fcrleri:<\/strong><\/p>\n<p>PostgreSQL, farkl\u0131 ve karma\u015f\u0131k veri tiplerini destekler. JSON, XML ve di\u011fer \u00f6zel veri tipleriyle sorunsuz bir \u015fekilde \u00e7al\u0131\u015fabilir. Bu da daha esnek ve geni\u015f veri depolama imkan\u0131 sa\u011flar.<\/p>\n<p><strong>6. Geni\u015f Yabanc\u0131 Veritaban\u0131 Deste\u011fi:<\/strong><\/p>\n<p>PostgreSQL, bir\u00e7ok farkl\u0131 veritaban\u0131 sistemine ba\u011flanabilir ve bu sistemlerle uyumlu \u00e7al\u0131\u015fabilir. Bu sayede, \u00e7e\u015fitli veri kaynaklar\u0131na kolayca eri\u015febilir ve veri al\u0131\u015fveri\u015fi yapabilirsiniz.<\/p>\n<table>\n<tr>\n<th>\u00d6zellik<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<tr>\n<td>Uzant\u0131labilirlik<\/td>\n<td>Kullan\u0131c\u0131lar\u0131n kendi \u00f6zel veritaban\u0131 t\u00fcrlerini ve fonksiyonlar\u0131n\u0131 olu\u015fturabilmesine olanak tan\u0131r.<\/td>\n<\/tr>\n<tr>\n<td>Yinelenen De\u011ferlerin Kontrol\u00fc<\/td>\n<td>Yinelenen de\u011ferleri kontrol ederek veri b\u00fct\u00fcnl\u00fc\u011f\u00fcn\u00fc korur.<\/td>\n<\/tr>\n<tr>\n<td>Uzaktan Eri\u015fim \u0130mkan\u0131<\/td>\n<td>Farkl\u0131 lokasyonlardan veri taban\u0131na eri\u015fmeyi ve y\u00f6netmeyi sa\u011flar.<\/td>\n<\/tr>\n<tr>\n<td>ACID Uyumlulu\u011fu<\/td>\n<td>\u0130\u015flemlerin g\u00fcvenilir ve tutarl\u0131 bir \u015fekilde ger\u00e7ekle\u015ftirilmesini sa\u011flar.<\/td>\n<\/tr>\n<tr>\n<td>Geli\u015fmi\u015f Veri T\u00fcrleri<\/td>\n<td>Farkl\u0131 ve karma\u015f\u0131k veri tiplerini destekler.<\/td>\n<\/tr>\n<tr>\n<td>Geni\u015f Yabanc\u0131 Veritaban\u0131 Deste\u011fi<\/td>\n<td>Bir\u00e7ok farkl\u0131 veritaban\u0131 sistemine ba\u011flanabilir ve uyumlu \u00e7al\u0131\u015fabilir.<\/td>\n<\/tr>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQL_Nasil_Kurulur\"><\/span>PostgreSQL Nas\u0131l Kurulur?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 ve \u00fccretsiz bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemidir. PostgreSQL, g\u00fc\u00e7l\u00fc ve geni\u015f bir \u00f6zellik setine sahiptir ve b\u00fcy\u00fck veritabanlar\u0131yla ba\u015fa \u00e7\u0131kabilme yetene\u011fi ile \u00f6ne \u00e7\u0131kar. Bu blog yaz\u0131s\u0131nda, PostgreSQL&#8217;un nas\u0131l kurulaca\u011f\u0131na dair ad\u0131mlar\u0131 ele alaca\u011f\u0131z.<\/p>\n<p><strong>1. PostgreSQL \u0130ndirme<\/strong><\/p>\n<p>PostgreSQL&#8217;u kurmaya ba\u015flamadan \u00f6nce, resmi PostgreSQL web sitesinden en son s\u00fcr\u00fcm\u00fc indirmeniz gerekmektedir. \u0130ndirdi\u011finiz dosya, i\u015fletim sisteminize uygun bir \u015fekilde d\u00fczenlenmi\u015f bir kurulum paketi olacakt\u0131r.<\/p>\n<p><strong>2. Kurulum S\u00fcreci<\/strong><\/p>\n<p>Kurulum paketini \u00e7al\u0131\u015ft\u0131rarak PostgreSQL&#8217;\u00fcn kurulum s\u00fcrecini ba\u015flatabilirsiniz. Kurulum s\u0131ras\u0131nda, \u00e7e\u015fitli se\u00e7enekler ve ayarlarla kar\u015f\u0131la\u015facaks\u0131n\u0131z, bunlar\u0131 gerekti\u011finde \u00f6zelle\u015ftirebilirsiniz. \u00d6rne\u011fin, hangi dizine PostgreSQL&#8217;in kurulaca\u011f\u0131n\u0131 se\u00e7ebilir ve hangi ek bile\u015fenlerin y\u00fcklenmesini istedi\u011finizi belirleyebilirsiniz.<\/p>\n<p><strong>3. Veritaban\u0131 Yaratma ve Y\u00f6netme<\/strong><\/p>\n<p>PostgreSQL kurulumunun tamamlanmas\u0131n\u0131n ard\u0131ndan, PostgreSQL veritaban\u0131 sunucusunu ba\u015flatman\u0131z gerekmektedir. Daha sonra, PostgreSQL komut sat\u0131r\u0131 aray\u00fcz\u00fc veya grafiksel kullan\u0131c\u0131 aray\u00fcz\u00fc gibi kullanabilece\u011finiz bir\u00e7ok farkl\u0131 y\u00f6netim arac\u0131yla veritaban\u0131 olu\u015fturabilir ve y\u00f6netebilirsiniz. Veritaban\u0131 olu\u015fturma a\u015famas\u0131nda, veritaban\u0131n\u0131n ad\u0131n\u0131 ve di\u011fer \u00f6zelliklerini belirleyebilirsiniz.<\/p>\n<ul>\n<li><strong>PostgreSQL&#8217;un \u00d6zellikleri:<\/strong> PostgreSQL, ACID uyumlu, yani Atomicity, Consistency, Isolation ve Durability \u00f6zelliklerine sahip bir veritaban\u0131d\u0131r. Ayr\u0131ca, kompleks veri tiplerini destekler, \u00f6zel veri t\u00fcrlerini tan\u0131mlaman\u0131za ve kullanman\u0131za izin verir.<\/li>\n<li><strong>PostgreSQL&#8217;de Tablo Olu\u015fturma ve Veri Ekleme:<\/strong> PostgreSQL&#8217;de tablo olu\u015fturmak ve veri eklemek olduk\u00e7a kolayd\u0131r. CREATE TABLE komutuyla yeni bir tablo olu\u015fturabilir ve INSERT INTO komutuyla veri ekleyebilirsiniz.<\/li>\n<li><strong>PostgreSQL Sorgular\u0131 Nas\u0131l \u00c7al\u0131\u015f\u0131r?<\/strong> PostgreSQL, SQL dilini kullanarak sorgular\u0131 i\u015fler. Sorgular, veritaban\u0131ndan veri toplamak, veri g\u00fcncellemek, veritaban\u0131 yap\u0131s\u0131n\u0131 de\u011fi\u015ftirmek ve \u00e7e\u015fitli di\u011fer i\u015flemleri ger\u00e7ekle\u015ftirmek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<\/ul>\n<table>\n<tr>\n<th>S\u00fcr\u00fcm<\/th>\n<th>\u00c7\u0131k\u0131\u015f Tarihi<\/th>\n<\/tr>\n<tr>\n<td>PostgreSQL 11<\/td>\n<td>2018<\/td>\n<\/tr>\n<tr>\n<td>PostgreSQL 10<\/td>\n<td>2017<\/td>\n<\/tr>\n<tr>\n<td>PostgreSQL 9.6<\/td>\n<td>2016<\/td>\n<\/tr>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQLun_Veritabani_Yapisi_Nasildir\"><\/span>PostgreSQL&#8217;un Veritaban\u0131 Yap\u0131s\u0131 Nas\u0131ld\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemi (RDBMS) olan PostgreSQL&#8217;un veritaban\u0131 yap\u0131s\u0131 olduk\u00e7a esnek ve g\u00fc\u00e7l\u00fcd\u00fcr. Bu veritaban\u0131 yap\u0131s\u0131, verilerin organize edilmesi ve depolanmas\u0131 i\u00e7in farkl\u0131 \u00f6\u011feler i\u00e7erir. Bu yaz\u0131da, PostgreSQL&#8217;un veritaban\u0131 yap\u0131s\u0131n\u0131 detayl\u0131 bir \u015fekilde inceleyece\u011fiz.<\/p>\n<p><strong><a href=\"https:\/\/sunucucozumleri.com\/blog\/veri-tabani-sunucusu-kiralama\/\">Veri Taban\u0131<\/a>:<\/strong><\/p>\n<p>PostgreSQL&#8217;de, ayn\u0131 veri t\u00fcr\u00fcndeki verilerin depoland\u0131\u011f\u0131 ve y\u00f6netildi\u011fi tablo ya da tablolar k\u00fcmesine bir veritaban\u0131 denir. Her veritaban\u0131, veritaban\u0131 sunucusu taraf\u0131ndan ayr\u0131 bir veritaban\u0131 k\u00fcmesi olarak i\u015fletilir. Her bir veritaban\u0131, kullan\u0131c\u0131lar, tablolar ve di\u011fer nesneler gibi b\u00f6l\u00fcmlere ayr\u0131labilir.<\/p>\n<p><strong>Tablolar:<\/strong><\/p>\n<p>PostgreSQL&#8217;deki veriler, tablolar arac\u0131l\u0131\u011f\u0131yla organize edilir ve depolan\u0131r. Bir tablo, bir dizi s\u00fctun ve sat\u0131rdan olu\u015fur. Her s\u00fctun, belirli bir veri t\u00fcr\u00fcn\u00fc temsil eder ve tablodaki her bir sat\u0131r, s\u00fctunlara ait de\u011ferlerin bir kombinasyonunu i\u00e7erir. Tablolarda veri manip\u00fclasyonu, veritaban\u0131 kullan\u0131c\u0131lar\u0131 taraf\u0131ndan yap\u0131lan sorgularla ger\u00e7ekle\u015ftirilir.<\/p>\n<p><strong>S\u00fctunlar ve Veri T\u00fcrleri:<\/strong><\/p>\n<p>Tablolardaki her s\u00fctun, belirli bir veri t\u00fcr\u00fc ile ili\u015fkilendirilmi\u015ftir. PostgreSQL, bir\u00e7ok farkl\u0131 veri t\u00fcr\u00fcn\u00fc destekler. Baz\u0131 yayg\u0131n veri t\u00fcrleri aras\u0131nda tamsay\u0131lar, ondal\u0131k say\u0131lar, metinler, boolean de\u011ferler, tarihleri ve zamanlar\u0131 temsil eden veri t\u00fcrleri bulunur. Bu veri t\u00fcrleri, her bir s\u00fctunda depolanan verilerin do\u011fru \u015fekilde tan\u0131mlanmas\u0131n\u0131 sa\u011flar.<\/p>\n<p><strong>Dizinler ve \u0130ndeksler:<\/strong><\/p>\n<p>PostgreSQL, verileri h\u0131zl\u0131 bir \u015fekilde bulmay\u0131 sa\u011flamak i\u00e7in indeksler kullan\u0131r. \u0130ndeksler, bir veya daha fazla s\u00fctundaki verilerin bir d\u00fczenini olu\u015fturur ve bu sayede arama ve s\u0131ralama i\u015flemleri daha verimli hale gelir. PostgreSQL, bir dizi farkl\u0131 indeks t\u00fcr\u00fcn\u00fc destekler ve kullan\u0131c\u0131lara performans\u0131 art\u0131rmak i\u00e7in uygun indeksleri se\u00e7me imkan\u0131 sunar.<\/p>\n<table>\n<tr>\n<th>\u00d6\u011fe<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<tr>\n<td>Veritaban\u0131<\/td>\n<td>PostgreSQL&#8217;de verilerin organizasyonunu sa\u011flayan en \u00fcst d\u00fczey yap\u0131d\u0131r.<\/td>\n<\/tr>\n<tr>\n<td>Tablolar<\/td>\n<td>Verilerin organize edildi\u011fi s\u00fctunlar ve sat\u0131rlardan olu\u015fan yap\u0131lar.<\/td>\n<\/tr>\n<tr>\n<td>S\u00fctunlar<\/td>\n<td>Tablolarda belirli veri t\u00fcrleri ile ili\u015fkilendirilmi\u015f k\u0131s\u0131mlard\u0131r.<\/td>\n<\/tr>\n<tr>\n<td>\u0130ndeksler<\/td>\n<td>H\u0131zl\u0131 veri eri\u015fimi i\u00e7in kullan\u0131lan yap\u0131lar.<\/td>\n<\/tr>\n<\/table>\n<p>PostgreSQL&#8217;un veritaban\u0131 yap\u0131s\u0131, verilerin etkili bir \u015fekilde y\u00f6netilmesini ve organize edilmesini sa\u011flar. Tablo, s\u00fctunlar, veri t\u00fcrleri ve indeksler gibi \u00f6\u011feler, PostgreSQL&#8217;un g\u00fcc\u00fcn\u00fc ve esnekli\u011fini sa\u011flayan temel yap\u0131 ta\u015flar\u0131d\u0131r.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQLde_Tablo_Olusturma_ve_Veri_Ekleme\"><\/span>PostgreSQL&#8217;de Tablo Olu\u015fturma ve Veri Ekleme<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, bir\u00e7ok geli\u015fmi\u015f ve g\u00fc\u00e7l\u00fc \u00f6zelli\u011fi ile pop\u00fcler bir a\u00e7\u0131k kaynak ili\u015fkisel veritaban\u0131 y\u00f6netim sistemidir. Bu yaz\u0131da, PostgreSQL&#8217;de tablo olu\u015fturma ve veri ekleme i\u015flemlerini nas\u0131l ger\u00e7ekle\u015ftirebilece\u011fimizi ele alaca\u011f\u0131z.<\/p>\n<p><strong>Tablo Olu\u015fturma<\/strong><\/p>\n<p>PostgreSQL&#8217;de tablo olu\u015fturmak i\u00e7in <strong>CREATE TABLE<\/strong> ifadesini kullanabiliriz. Bu ifadeyi kullanarak, tablonun ad\u0131n\u0131 belirleyebilir ve her bir s\u00fctunun ad\u0131n\u0131 ve veri t\u00fcr\u00fcn\u00fc tan\u0131mlayabiliriz. A\u015fa\u011f\u0131da \u00f6rnek bir tablo olu\u015fturma komutu bulunmaktad\u0131r:<\/p>\n<table>\n<tr>\n<th>S\u00fctun Ad\u0131<\/th>\n<th>Veri T\u00fcr\u00fc<\/th>\n<\/tr>\n<tr>\n<td>id<\/td>\n<td>integer<\/td>\n<\/tr>\n<tr>\n<td>name<\/td>\n<td>varchar(50)<\/td>\n<\/tr>\n<tr>\n<td>age<\/td>\n<td>integer<\/td>\n<\/tr>\n<\/table>\n<p>Bu komut, <strong>my_table<\/strong> ad\u0131nda bir tablo olu\u015fturacak ve <strong>id<\/strong>, <strong>name<\/strong> ve <strong>age<\/strong> ad\u0131nda \u00fc\u00e7 s\u00fctun i\u00e7erecektir. \u0130lk s\u00fctunun veri t\u00fcr\u00fc <strong>integer<\/strong>, ikinci s\u00fctunun veri t\u00fcr\u00fc <strong>varchar(50)<\/strong> ve \u00fc\u00e7\u00fcnc\u00fc s\u00fctunun veri t\u00fcr\u00fc ise yine <strong>integer<\/strong> olarak belirlenmi\u015ftir.<\/p>\n<p><strong>Veri Ekleme<\/strong><\/p>\n<p>Olu\u015fturdu\u011fumuz tabloya veri eklemek i\u00e7in <strong>INSERT INTO<\/strong> ifadesini kullanabiliriz. Bu ifadeyi kullanarak, tabloya belirli bir s\u00fctuna ait de\u011feri ekleyebiliriz. A\u015fa\u011f\u0131da \u00f6rnek bir veri ekleme komutu bulunmaktad\u0131r:<\/p>\n<p>INSERT INTO my_table (id, name, age)<br \/>\nVALUES (1, &#8216;John Doe&#8217;, 25);<\/p>\n<p>Bu komut, <strong>my_table<\/strong> adl\u0131 tablonun <strong>id<\/strong>, <strong>name<\/strong> ve <strong>age<\/strong> s\u00fctunlar\u0131na, s\u0131ras\u0131yla 1, &#8216;John Doe&#8217; ve 25 de\u011ferlerini ekleyecektir. Bu \u015fekilde istedi\u011fimiz verileri tabloya ekleyebiliriz.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQL_Sorgulari_Nasil_Calisir\"><\/span>PostgreSQL Sorgular\u0131 Nas\u0131l \u00c7al\u0131\u015f\u0131r?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 ve g\u00fc\u00e7l\u00fc bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemidir. PostgreSQL, istemci-sunucu modeline dayanan bir yap\u0131da \u00e7al\u0131\u015f\u0131r. \u0130stemci, veritaban\u0131na eri\u015fim sa\u011flar ve sorgular g\u00f6nderirken; <a href=\"https:\/\/sunucucozumleri.com\/blog\/frontpage\/\">sunucu<\/a>, bu sorgular\u0131 i\u015fler ve sonu\u00e7lar\u0131 istemciye geri d\u00f6nd\u00fcr\u00fcr. PostgreSQL, geli\u015fmi\u015f \u00f6zelliklere sahip olup, karma\u015f\u0131k veritaban\u0131 i\u015flemlerini kolayl\u0131kla ger\u00e7ekle\u015ftirebilir.<\/p>\n<p>PostgreSQL sorgular\u0131, SQL (Structured Query Language) kullan\u0131larak yaz\u0131l\u0131r. SQL, veritaban\u0131 i\u015flemlerini ger\u00e7ekle\u015ftirmek i\u00e7in yayg\u0131n olarak kullan\u0131lan bir dildir. PostgreSQL, SQL standartlar\u0131n\u0131n bir\u00e7o\u011funu destekleyerek karma\u015f\u0131k sorgular\u0131n yap\u0131lmas\u0131n\u0131 m\u00fcmk\u00fcn k\u0131lar. Sorgular, veritaban\u0131nda depolanan verilere eri\u015fmek, veri ekleme, g\u00fcncelleme veya silme gibi i\u015flemleri ger\u00e7ekle\u015ftirmek i\u00e7in kullan\u0131l\u0131r.<\/p>\n<p>PostgreSQL&#8217;de sorgular\u0131n \u00e7al\u0131\u015fma mant\u0131\u011f\u0131 olduk\u00e7a esnektir. Sorgular, veri taban\u0131nda yer alan tablolara veya di\u011fer veri yap\u0131lar\u0131na y\u00f6nelik olarak kullan\u0131l\u0131r. \u0130\u015flemler, bir veya daha fazla tabloya eri\u015fmek, verileri filtrelemek veya \u00e7e\u015fitli hesaplamalar yapmak gibi i\u015flemleri i\u00e7erebilir. Sorgular ayr\u0131ca birden fazla tabloyu birle\u015ftirme, verileri s\u0131ralama veya gruplama gibi karma\u015f\u0131k i\u015flemleri de destekleyebilir.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"PostgreSQL_Sorgu_Ornekleri\"><\/span>PostgreSQL Sorgu \u00d6rnekleri:<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li><strong>SELECT<\/strong> sorgusu, veritaban\u0131nda yer alan tablolardan veri okumak i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>INSERT<\/strong> sorgusu, yeni veri eklemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>UPDATE<\/strong> sorgusu, mevcut verileri g\u00fcncellemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>DELETE<\/strong> sorgusu, veritaban\u0131ndan veri silmek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>JOIN<\/strong> sorgusu, birden fazla tabloyu birle\u015ftirerek verileri getirmek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<li><strong>GROUP BY<\/strong> ve <strong>HAVING<\/strong> sorgular\u0131, verileri gruplamak ve gruplama sonu\u00e7lar\u0131na g\u00f6re filtrelemek i\u00e7in kullan\u0131l\u0131r.<\/li>\n<\/ul>\n<table>\n<tr>\n<th>Sorgu<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<tr>\n<td>SELECT * FROM users;<\/td>\n<td>users tablosundaki t\u00fcm kay\u0131tlar\u0131 getirir.<\/td>\n<\/tr>\n<tr>\n<td>SELECT name, age, email FROM users WHERE age > 25;<\/td>\n<td>25 ya\u015f\u0131ndan b\u00fcy\u00fck kullan\u0131c\u0131lar\u0131n isim, ya\u015f ve e-posta bilgilerini getirir.<\/td>\n<\/tr>\n<tr>\n<td>INSERT INTO products (name, price) VALUES (&#8216;\u00dcr\u00fcn 1&#8217;, 10.99);<\/td>\n<td>products tablosuna yeni bir \u00fcr\u00fcn ekler.<\/td>\n<\/tr>\n<\/table>\n<h2><span class=\"ez-toc-section\" id=\"PostgreSQL_Backups_and_Recovery_%E2%80%93_Yedekleme_ve_Kurtarma\"><\/span>PostgreSQL Backups and Recovery &#8211; Yedekleme ve Kurtarma<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>PostgreSQL veritaban\u0131 y\u00f6netim sistemi, verilerin g\u00fcvenli\u011fini sa\u011flamak i\u00e7in yedekleme (backups) ve kurtarma (recovery) mekanizmalar\u0131 sunar. Yedekleme i\u015flemi, veritaban\u0131n\u0131n bir kopyas\u0131n\u0131 olu\u015fturarak olas\u0131 veri kayb\u0131 durumunda geri y\u00fckleme imkan\u0131 sa\u011flar. PostgreSQL&#8217;un yedekleme ve kurtarma \u00f6zelliklerinin ayr\u0131nt\u0131lar\u0131na gelin birlikte bakal\u0131m.<\/p>\n<p>Liste &#8211; PostgreSQL&#8217;un Yedekleme ve Kurtarma \u00d6zellikleri:<\/p>\n<ul>\n<li><strong>Point-in-time recovery (PITR):<\/strong> Bu \u00f6zellik sayesinde, belirli bir zaman dilimindeki veritaban\u0131 durumuna geri d\u00f6n\u00fc\u015f yapabilirsiniz. PostgreSQL, anl\u0131k yedekleme dosyalar\u0131n\u0131 kullanarak verileri geri y\u00fcklemenizi sa\u011flar.<\/li>\n<li><strong>Continuous archiving and streaming replication:<\/strong> Veritaban\u0131n\u0131z\u0131n s\u00fcrekli olarak yedeklenmesini ve di\u011fer sunuculara kopyalanmas\u0131n\u0131 sa\u011flar. Bu sayede, olu\u015fabilecek bir ar\u0131zada veri kayb\u0131n\u0131 \u00f6nleyebilirsiniz.<\/li>\n<li><strong>Point-in-time recovery using backups:<\/strong> Yedekleme dosyalar\u0131n\u0131 kullanarak geri d\u00f6n\u00fc\u015fler yapabilirsiniz. PostgreSQL, yedekleme dosyalar\u0131n\u0131 belli bir tarihe veya i\u015farete g\u00f6re geri y\u00fcklemeyi sa\u011flar.<\/li>\n<\/ul>\n<p>Tablo &#8211; Yedekleme ve Kurtarma Komutlar\u0131:<\/p>\n<table>\n<tr>\n<th>Komut<\/th>\n<th>A\u00e7\u0131klama<\/th>\n<\/tr>\n<tr>\n<td>pg_dump<\/td>\n<td>Veritaban\u0131n\u0131 d\u0131\u015fa aktar\u0131r (yedekleme olu\u015fturur).<\/td>\n<\/tr>\n<tr>\n<td>pg_restore<\/td>\n<td>Yedekleme dosyas\u0131n\u0131 geri y\u00fckler.<\/td>\n<\/tr>\n<tr>\n<td>pg_basebackup<\/td>\n<td>Master sunucusunun kopyas\u0131n\u0131 al\u0131r.<\/td>\n<\/tr>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>PostgreSQL, a\u00e7\u0131k kaynakl\u0131 bir ili\u015fkisel veritaban\u0131 y\u00f6netim sistemi (RDBMS) olarak bilinir. Bu yaz\u0131da PostgreSQL&#8217;\u00fcn nedir, \u00f6zellikleri nelerdir, nas\u0131l kurulur, veritaban\u0131 yap\u0131s\u0131 nas\u0131ld\u0131r, tablo olu\u015fturma ve veri ekleme i\u015flemleri nas\u0131l ger\u00e7ekle\u015ftirilir, sorgular nas\u0131l \u00e7al\u0131\u015f\u0131r ve yedekleme ve kurtarma i\u015flemleri hakk\u0131nda bilgiler verece\u011fiz. PostgreSQL, kullan\u0131c\u0131 dostu aray\u00fcz\u00fc ve geli\u015fmi\u015f \u00f6zellikleriyle veritaban\u0131 y\u00f6netimi konusunda bir\u00e7ok avantaj sunmaktad\u0131r. Yaz\u0131n\u0131n &hellip;<\/p>\n","protected":false},"author":6,"featured_media":4065,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[14],"tags":[],"class_list":["post-4066","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-haberler"],"acf":[],"_links":{"self":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/4066","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/comments?post=4066"}],"version-history":[{"count":0,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/posts\/4066\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media\/4065"}],"wp:attachment":[{"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/media?parent=4066"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/categories?post=4066"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sunucucozumleri.com\/blog\/wp-json\/wp\/v2\/tags?post=4066"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}