Ana içeriğe geç

PostgreSQL Kurulumu: Ubuntu Üzerinde PostgreSQL Kullanımı

Bu rehberde Ubuntu sunucularda PostgreSQL kurulumunu, temel yönetim adımlarını ve üretim ortamı için önemli ayarları öğreneceksiniz.
Amaç, güvenli ve sürdürülebilir bir veritabanı altyapısı oluşturmaktır.


🧠 Teknik Özet

Bu rehber, Ubuntu üzerinde PostgreSQL kurulumunu ve kullanımını anlatır.
Hedef, kullanıcı (rol) yönetimi, veritabanı oluşturma ve temel SQL işlemlerini öğretmektir.


Ön Koşullar

  • Ubuntu 20.04 veya üzeri bir sunucu
  • sudo yetkisine sahip bir kullanıcı
  • Temel Linux terminal bilgisi

1. PostgreSQL Kurulumu

Önce paket listesini güncelleyin:

sudo apt update
  • Bu komut sistemdeki paket bilgilerini yeniler.

PostgreSQL ve ek araçları kurun:


sudo apt install postgresql postgresql-contrib
  • Bu komut PostgreSQL sunucusunu ve yardımcı modülleri kurar.

Kurulumu doğrulayın:


psql --version
  • Bu komut PostgreSQL sürümünü gösterir.

Servisi başlatın:


sudo systemctl start postgresql
  • Bu işlem veritabanı servisinin çalışmasını sağlar.

2. PostgreSQL Rol Mantığı

  1. PostgreSQL, erişim kontrolünü rol kavramı ile yönetir. Rol; kullanıcı veya kullanıcı grubu gibi davranır.
  • Kurulumla birlikte postgres adında yönetici bir rol oluşturulur.

Postgres kullanıcısına geçin:


sudo -i -u postgres
  • Bu komut yönetici yetkileriyle işlem yapmanızı sağlar.

  1. PostgreSQL kabuğunu açın:

psql
  • Bu komut etkileşimli PostgreSQL terminalini başlatır.

Çıkmak için:


\q

3. Yeni Rol (Kullanıcı) Oluşturma

  1. Etkileşimli rol oluşturma:

createuser --interactive
  • Bu komut yeni bir PostgreSQL kullanıcısı tanımlar.

  1. Alternatif olarak:

sudo -u postgres createuser --interactive
  • Bu yöntem kullanıcı değiştirmeden işlem yapar.

4. Yeni Veritabanı Oluşturma

  1. Kullanıcıya ait bir veritabanı oluşturmak için:

createdb proje_db
  • Bu komut belirtilen isimde bir veritabanı oluşturur.

Veya:


sudo -u postgres createdb proje_db

5. SQL ile Rol ve Veritabanı Oluşturma (Opsiyonel)

  1. PostgreSQL terminaline girin:

sudo -u postgres psql
  • Parolalı kullanıcı oluşturun:


CREATE ROLE uygulama_user WITH LOGIN PASSWORD 'guclu_sifre';
  • Bu komut giriş yapabilen bir kullanıcı tanımlar.

  • Veritabanı oluşturun ve sahibini atayın:

CREATE DATABASE uygulama_db OWNER uygulama_user;

  1. Yetki verin:

GRANT ALL PRIVILEGES ON DATABASE uygulama_db TO uygulama_user;
  • Bu işlem kullanıcıya veritabanı erişimi sağlar.

6. Kullanıcı ile PostgreSQL’e Bağlanma

  1. Linux kullanıcısı oluşturun:

sudo adduser uygulama_user

  • Bu adım peer authentication için gereklidir.

Bağlantı kurun:


sudo -u uygulama_user psql
  • Bu komut ilgili kullanıcıyla PostgreSQL’e bağlanır.

Bağlantı bilgilerini görüntüleyin:


\conninfo

7. Tablo Oluşturma ve Silme

Örnek tablo oluşturma:


CREATE TABLE envanter (
id serial PRIMARY KEY,
urun_tipi varchar(50),
renk varchar(30),
eklenme_tarihi date
);
  • Bu komut yeni bir tablo tanımlar.

Tabloları listeleme:


\dt

8. Veri Ekleme, Sorgulama ve Silme

  1. Veri ekleme:

INSERT INTO envanter (urun_tipi, renk, eklenme_tarihi)
VALUES ('masa', 'beyaz', '2024-01-10');
  • Bu komut tabloya kayıt ekler.

Verileri listeleme:


SELECT * FROM envanter;

Veri silme:


DELETE FROM envanter WHERE urun_tipi = 'masa';

9. Sütun Ekleme ve Kaldırma

  1. Yeni sütun ekleme:

ALTER TABLE envanter ADD son_bakim date;

  1. Sütun silme:

ALTER TABLE envanter DROP son_bakim;

10. Performans ve Yapılandırma Temelleri

Yapılandırma dosyaları:

1. postgresql.conf: Performans ayarları

2. pg_hba.conf: Kimlik doğrulama kuralları

Değişiklik sonrası yeniden yükleme:


sudo systemctl reload postgresql
  • Bu komut ayarları kesinti olmadan uygular.

11. Yedekleme ve Geri Yükleme

  1. Tek veritabanı yedeği alma:

pg_dump -U postgres -F c -f uygulama_db.dump uygulama_db
  • Bu komut sıkıştırılmış yedek oluşturur.

Geri yükleme:


pg_restore -U postgres -d postgres --create uygulama_db.dump

Sıkça Sorulan Sorular

1. PostgreSQL neden tercih edilir? Yüksek veri bütünlüğü ve ACID uyumluluğu sunar.

2. Ubuntu için varsayılan sürüm yeterli mi? Çoğu uygulama için yeterlidir.

3. Production ortamında sync benzeri işlemler yapılır mı? Hayır, migration tercih edilmelidir.

4. Yedekler nerede saklanmalı? Aynı sunucu dışında bir depolama alanında.


Sonuç

Bu rehber ile Ubuntu üzerinde PostgreSQL kurulumu ve temel yönetimi öğrendiniz. Doğru yapılandırma ve düzenli yedekleme ile güvenli bir veritabanı altyapısı kurabilirsiniz.

Bu yapıyı yüksek erişilebilirlik ve performans ile kullanmak için Rabisu Bulut altyapısında hemen test edebilirsiniz.