Postgresql Veritabanı Kurulumu

Postgresql veritabanı Kurulumu konulu bu yazımda adım, adım postgresql veritabanını nasıl kurabileceğimizi anlatacağım. Postgresql veritabanı kurulumu için ilk önce Postgresql 12.2 kurulum dosyaları https://www.postgresql.org/download/linux/redhat/ sitesinden indirilir. Bu linkte Şekil 1’deki ekranda bir tool bulunur. Bu tool ile  Postgresql paketlerini yum paket yöneticisi ile indirebilmek için gerekli repository dosyası oluşturulur.

Postgresql Veritabanı Kurulumu

Şekil 1 : Postgresql repo file oluşturulması

Postgresql versiyonu, kurulacak işletim sistemi versiyonu ve mimarisi seçildikten sonra 4.numaralı textbox’ta görülen komut çalıştırılarak işletim sistemi üzerine repo dosyası indirilir.

Postgresql Veritabanı Kurulumu

Şekil 2 : Postgresql repo file’ın işletim sistemine indirilmesi

Daha sonra;

  • Client paketlerini yüklemek için “yum install postgresql12”
  • Server paketlerinin kurulumu için “yum install postgresql12-server”

komutu çalıştırılarak Postgresql kurulum işlemi gerçekleştirilir.

Postgresql Veritabanı Kurulumu

Şekil 3 : Postgresql kurulumu

postgresql-clientClient paketler
postgresql-serverPostgresql server paketleri
postgresql-contribEklenti paketleri
postgresql-develC kütüphaneleri
pgadmin4Pgadmin4 yönetim aracı

Posgresql paketleri yüklenirken işletim sistemi üzerinde postgres kullanıcısı otomatik olarak oluşturulur. Şekil 4’teki gibi veri dosyalarının depolanacağı database dizini oluşturulur ve izinleri ayarlanır.

Postgresql Veritabanı Kurulumu

Şekil 4 : Veri tabanı dizininin oluşturulması

İnitdb işlemi

Postgresql veritabanı kurulumu initdb işlemi ile devam eder. İnitdb komutu ile yeni bir database cluster oluşturulur. Database cluster; tek bir instance tarafından yönetilen birden fazla veri tabanına verilen isimdir. Initdb işlemi sırasında yapılan işlemler; veri tabanı katalog tablolarını ve template1 veri tabanının oluşturulmasıdır.

Postgresql’de bir veri tabanı oluşturulduğunda aslında yapılan işlem template 1 veri tabanının kopyalanmasıdır. Postgres veri tabanı ise userların kullandığı default veri tabanıdır. İnitdb işlemi ile bir postgresql data directory’inin ayarlanması da mümkündür. İnitdb komutu postgresql servislerini yönetecek kullanıcı hangi user ise onunla çalıştırılmalıdır. Initdb işlemi sırasında kullanılabilecek bazı önemli parametreler şunlardır.

-D directory –pgdata=directory : Yaratılan veri tabanı cluster’ın depolanacağı dizini değiştirmeye yarar.

Postgresql Veritabanı Kurulumu

Şekil 5: .bash_profile dosyasının ayarlanması.

Şekil 5’teki gibi initdb komutu çalıştırılmadan önce PGDATA sistem değişkeni ayarlanır. PATH değişkenine ise postgresql’in çalıştırılabilir dosyalarının dizin bilgisi eklenir. Bu işlemlerden sonra initdb komutu postgres kullanıcısı ile çalıştırılır. Şekil 6’da initdb komutunun çıktısı görülmektedir.

Postgresql Veritabanı Kurulumu

Şekil 6 : initdb komutunun çalıştırılması.

Postgresql kullanıcısı ile “pg_ctl -D /database/data -l logfile start” komutu ile postgresql servisleri başlatılır. Veya “systemctl start postgresql-12.service” komutu ile servisler başlatılır. Systemctl komutu ile servisler yönetilirken eğer PGDATA değişkeni farklı bir dizine set edildi ise /usr/lib/systemd/system/postgresql-12.service dosyasından gerekli değişiklikler yapılabilir.

Postgresql Veritabanı Kurulumu

Şekil 6 : initdb komutunun çalıştırılması.

“pg_ctl status” komutu ile postgresql servislerin durumu kontrol edilir. “pg_ctl stop” komutu ile de servisler durdurulabilir.

Postgresql Veritabanı Kurulumu

Postgresql veritabanının kapatılması

Pg_ctl stop komutu ile veri tabanı kapatılırken 3 farklı modda kapatma işlemi gerçekleştirilebilir.

  • Smart : Default kapatma modudur. Pg_ctl stop komutu çalıştırıldığında çağrılan moddur. Açık bütün bağlantılar kesildiğinde veri tabanı kapatma işlemi gerçekleştirilir. Yani kullanıcıların işlerini tamamlamaları beklenir.
  • Fast : Veri tabanında mevcut bağlantılar kesilir ve veri tabanı kapatılır. Smart moda göre daha hızlıdır çünkü kullanıcıların işlerini bitirmeleri beklenmez.
  • Immediate : Fast opsiyonu ile kapatma işlemi yapılırken bağlantılara gönderilen sinyal ile kesilecekleri kendilerine bildirilir ve bu prosesler veri tabanında commit edilmediyse rollback edilir. Immediate opsiyonunda ise herhangi bir sinyal, bekleme olmadan server kapatılır. Bu methodla kapatılma işlemi yapıldıktan sonra recovery gerekir.

NOT : kill -9 ile kapatma işlemi kesinlikle kullanılmamaladır.

 VeriTabanıEğitimleri YouTube kanalından da eğitim içeriklerine erişebilirsiniz. Kurumsal iletişim için veritabaniegitimleri@gmail.com adresinden taleplerinizi iletebilirsiniz.

Veysel YUKSEL
Latest posts by Veysel YUKSEL (see all)

Veysel YUKSEL

RDBMS ve NoSQL veri tabanı yönetimi ve Big Data teknolojileri.

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir