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.
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.
4. adımda PostgreSQL'i ilk kez başlatacağız bunun için
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
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.
yum install https://download.postgresql.org/pub/repos/yum/testing/11/redhat/rhel-7-x86_64/pgdg-centos11-11-1.noarch.rpm paketlerimizi kurmuş olduk.
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.
Çok güzel olmuş ellerine sağlık
YanıtlaSil