PostgreSQL paketleri farklı sürüm numaralarına ve biçimlerine sahip olabilirler. Biz PostgreSQL 11 Veritabanı Sunucusunun CentOS üzerine nasıl kurulacağını öğreneceğiz. Öncelikle CentOS, Red Hat Enterprise Linux ve Initdb kavramlarından kısaca bahsedeyim.

 

CentOS Nedir?

CentOS The Community Enterprise Operating System kelimelerini temsil eder. Red Hat Enterprise Linux' a ücretsiz alternatif olarak çıkarılan CentOS, son kullanıcıyı değil Red Hat'ın ücretli sistemleri ile %100 uyumluluğunu hedefleyen sunucu odaklı bir linux dağıtımıdır. CentOS birebir Red Hat türevi olduğundan, Red Hat ile ilgili Linux komutları ve işlemleri CentOS içinde aynıdır. 

CentOS Linux Distribution ücretsizdir ve redistribute dağıtımı serbesttir.

Red Hat Enterprise Linux Nedir?

Başta Red Hat açık kaynak kodlu yazılımlar olmak üzere Linux tabanlı çalışan en gelişmiş ve profesyonelleşmiş yazılım şirketlerinden biridir. Şirketin temelleri 1993 yılında Bob Young ve Marc Ewing tarafından atılmıştır. Linux tabanlı olan işletim sistemi ilk olarak 1995 yılında geliştirilmeye başlanmış ve 2004 yılına kadar geliştirilmeye devam edilmiştir fakat 2004 yılında şirketin almış olduğu bir karar ile artık bu işletim sistemi için geliştirme yapılmayacağı bildirmiş ve onun yerine topluluk tarafından geliştirilecek olan Fedora dağıtımının ortaya çıkartılmasına ön ayak olmuştur.

2004 yılından sonra Red Hat denince akla ilk gelen şey Fedora projesi oldu. Fedora projesi ücretsiz yazılım topluluğu üyelerinin küresel bir ortaklığıdır. Fedora projesi Red Hat firması tarafından desteklenmektedir. Mesela RPM paket yöneticisi, Red Hat’ın Linux’a  katkılarından birisidir.

Initdb Nedir Ve Ne İş Yapar?

Initdb yeni bir PostgreSQL veritabanı kümesi oluşturur. Bir veritabanı kümesi, tek bir sunucu örneği tarafından yönetilen veritabanlarının bir koleksiyonudur. Initdb kullanarak bir veritabanı kümesi oluşturulduğunda yerel destek otomatik olarak başlatılır. Bir veritabanı kümesi, çalışan bir veritabanı sunucusunun, yönetilen veritabanlarının bir derlemesidir.  Başlatma işleminden sonra, bir veritabanı kümesi, yardımcı programlar ve kullanıcılar tarafından kullanılmak üzere varsayılan bir veritabanı anlamına gelen postgres adlı bir veritabanı içerir. Initdb ayrıca veritabanı kümesinin varsayılan yerel ayarlarını başlatır. Yerel ayarları ortamdan alır ve bunları başlatılan veritabanına uygular. Belirli bir veritabanı kümesinde kullanılan varsayılan sıralama düzeni initdb tarafından belirlenir.

3 veritabanı oluşturulur. Bunlar template0, template1 ve postgres veritabanlarıdır. Veritabanı yaratırken kullanılan şablon veritabanına o anda kimsenin bağlı olmaması gereklidir. Örneğin template1 veritabanında bir tablo yaratırsanız, yeni yaratılacak veritabanlarına da bu tablo aktarılır. Dolayısıyla, bazen DBA’ler de kendi template veritabanlarını yaratabilirler. Postgres veritabanı psql gibi client uygulamaları, PostgreSQL'e bağlanmak için bir veritabanına gereksinim duyarlar.Template0 ise bunlardan biraz farklıdır. Template0 veritabanı bağlantı kabul etmeyen bir şablon veritabanıdır. Template0 veritabanı iki amaçla kullanılabilir. Bunlardan birincisi template1' in sıfırlanması gereken durumlardır. Kullanıcıların bazen verilerini yanlışlıkla template1 veritabanına yüklediklerini görmekteyiz. Bu durumda bu veriler yeni veritabanlarına da kopyalanacaktır ve bu genelde istenen bir durum değildir.

CentOS'a PostgreSQL 11 Kurulumu Ve Initdb'si

PostgreSQL YUM deposunun sayfasından “depo paketini” kurmamız gerekmekte. Bunun için,

https://yum.postgresql.org/repopackages.php  adresine gidip, ilgili PostgreSQL sürümü bulup oradaki depo paketini sunucumuza kurmanız gerekiyor. Örnek olarak PostgreSQL 11 ve CentOS 7’yi seçelim. Oradaki bağlantı linkini kopyalayıp Linux makinamızda devam edelim:

1. adımda root olmamız gerekiyor. Bunun için sunucumuza sudo su - komutumuzu yazıyoruz.


2. adımda kopyaladığımız CentOS bağlantı linkini yum install yazdıktan sonra mouse sağ tıklayıp linki yapıştırıyoruz.

3. adımda PostgreSQL 11'i kuracağız. 

yum - y install postgresql11-server  komutunu makinemize yazıyoruz. Burada kullandığım -y ifadesi işlemlerin hepsine otomatik olarak evet demesi için kullanıldı.


4. adımda PostgreSQL'i ilk kez başlatacağız bunun için 

/usr/pgsql-11/bin/postgresql-11-setup initdb   komutunu makinemize yazıyor ve enter basıyoruz. Ve ardından servisimizi başlatmak için 

systemctl start postgresql-11.service  komutu ile servisimizi çalışır duruma getirdik.

Sürüm Güncellemesi Yapmak İçin

yum update postgresql11*  ile gerçekleştirilir.

 

No comments

Add Comment

Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Submitted comments will be subject to moderation before being displayed.