Redis Kurulumu Nasıl Yapılır? Adım Adım Rehber

Redis Nedir ve Ne İşe Yarar?

Redis, açık kaynaklı bir veritabanı yönetim sistemidir ve anahtar-değer tabanlı verileri hızlı ve etkili bir şekilde işlemek için kullanılır. Redis, RAM tabanlı bir veritabanıdır ve diğer veritabanlarına göre daha hızlı işlem yapar. Bu nedenle, özellikle web uygulamalarında sıklıkla kullanılır. Redis, çeşitli veri türleri ve özellikleri destekleyerek çok yönlü bir veri yönetim aracıdır.

Redis Kurulumu için Gerekli Adımlar

a. Gereksinimleri Kontrol Etme:

Redis kurulumuna başlamadan önce, sunucunuzun gereksinimleri karşıladığından emin olun. Redis’in çalışması için gerekli olan iki şey vardır: bir Redis sunucusu ve bir Redis istemcisi. Sunucu, Redis verilerini saklar ve yönetirken, istemci Redis verilerine erişir ve onlarla işlem yapar. Bu nedenle, Redis sunucusunu kurmadan önce bir istemci de kurmanız gerekir.

b. Redis’i İndirme ve Kurulum Dosyalarını Hazırlama:

Redis’in en son sürümünü indirin. Resmi Redis web sitesinde mevcuttur. İndirme işlemi tamamlandıktan sonra, Redis kurulum dosyalarını çıkarın.

c. Redis’i Kurma ve Yapılandırma:

Redis’in sunucu sürümünü yükleyin ve ardından Redis yapılandırma dosyasını düzenleyin. Redis yapılandırma dosyası, Redis’in çalışması için gerekli ayarları içerir. Redis yapılandırma dosyasının varsayılan yolu /etc/redis/redis.conf’dir. Redis yapılandırma dosyasını açın ve aşağıdaki ayarları değiştirin:

  • bind 127.0.0.1: Redis sadece yerel ana bilgisayar üzerinde çalışacak şekilde ayarlanır. Diğer cihazlar üzerinden Redis’e erişmek istiyorsanız, IP adreslerini değiştirin.
  • port 6379: Redis’in varsayılan portu budur. Eğer başka bir port kullanmak istiyorsanız, numarasını değiştirin.
  • supervised systemd: Redis’in systemd üzerinde çalışmasını sağlar.

Redis’i yükledikten sonra, Redis sunucusunu başlatmak için aşağıdaki komutu kullanın:

sudo systemctl start redis

Redis’in otomatik olarak başlatılmasını sağlamak için aşağıdaki komutu kullanın:

sudo systemctl enable redis

Redis Kullanımı

a. Redis Komutları:

Redis, anahtar-değer veri modeli kullanır. Veriler, anahtarlarla ilişkilendirilir ve Redis komutları kullanarak bu anahtarların üzerinde işlem yapabilirsiniz.

Redis komutları, birkaç farklı kategoride gruplandırılabilir:

  • Veri Yapıları Komutları: Redis, farklı veri tiplerini destekler. Bu komutlar, Redis’in veri tipleriyle ilgili işlemleri yapmanızı sağlar. Örneğin, SET komutu, bir anahtara bir değer atar ve GET komutu, bir anahtarın değerini getirir.
  • Kontrol Yapısı Komutları: Redis, kontrol yapıları kullanarak verileri organize eder. Bu komutlar, kontrol yapılarının oluşturulması ve yönetilmesiyle ilgilidir. Örneğin, LPUSH komutu, bir liste kontrol yapısına bir değer ekler.
  • Set İşlemleri Komutları: Redis, set işlemleri yapmak için komutlar sunar. Bu komutlar, setlerle ilgili işlemler yapmanızı sağlar. Örneğin, SADD komutu, bir sete bir değer ekler ve SMEMBERS komutu, bir setin tüm üyelerini getirir.
  • Yedekleme Komutları: Redis, yedekleme işlemleri yapmak için komutlar sunar. Bu komutlar, verilerin yedeklenmesi ve geri yüklenmesiyle ilgilidir. Örneğin, SAVE komutu, Redis verilerini yedekler ve BGSAVE komutu, Redis verilerini arka planda yedekler.

b. Örnek Kullanım Senaryoları:

  • Anahtar-değer Çiftleri Oluşturma:

SET komutu, bir anahtara bir değer atamak için kullanılır:

SET anahtar değer

Örneğin, aşağıdaki komut kullanılarak “kullanici:adi” anahtarına “ali” değeri atanır:

SET kullanici:adi ali

  • Anahtar-değer Çiftlerini Alma:

GET komutu, bir anahtarın değerini getirmek için kullanılır:

GET anahtar

Örneğin, aşağıdaki komut kullanılarak “kullanici:adi” anahtarının değeri getirilir:

GET kullanici:adi

  • Liste Oluşturma ve Listeye Eleman Ekleme:

LPUSH komutu, bir liste kontrol yapısına bir veya daha fazla değer eklemek için kullanılır:

LPUSH liste_adi deger_1 deger_2 deger_n

Örneğin, aşağıdaki komut kullanılarak “kullanicilar” adlı bir liste oluşturulur ve “ali” ve “veli” değerleri eklenir:

LPUSH kullanicilar ali veli

  • Listeden Eleman Çıkarma:

LPOP komutu, bir listenin en solundaki elemanı çıkarmak için kullanılır:

LPOP liste_adi

Örneğin, aşağıdaki komut kullanılarak “kullanicilar” adlı listenin en solundaki elemanı çıkarılır:

LPOP kullanicilar

Redis Yedekleme ve Güvenlik İşlemleri

Redis verilerinin yedeklenmesi önemlidir, çünkü bu sayede veri kaybı yaşanmadan önce yedeklenmiş olan veriler geri yüklenebilir. Redis, iki farklı yedekleme yöntemi sunar:

  • SAVE: Bu yöntem, Redis verilerini bloklayarak tüm verileri diskte bir dosyaya yazarak yedekler. Bu yöntem, küçük boyutlu veriler için uygun olabilir, ancak büyük veri kümeleri için uygun değildir, çünkü verilerin bloke edilmesi, Redis sunucusunun performansını düşürebilir.
  • BGSAVE: Bu yöntem, verileri arka planda yedekler ve Redis sunucusunun performansını etkilemez. BGSAVE yöntemi, bir işlemi işaret eden bir id döndürür, bu sayede Redis sunucusunun yedekleme işlemi tamamlanana kadar diğer işlemlere devam etmesini sağlar.

Redis verilerinin yedeklenmesi için aşağıdaki adımlar izlenebilir:

  1. Redis konfigürasyon dosyasına aşağıdaki satırlar eklenerek yedekleme ayarları yapılabilir:

save 900 1 save 300 10 save 60 10000

Bu ayarlar, Redis sunucusunun 900 saniyede bir en az bir anahtarın değiştiğinde verileri yedeklemesini sağlar. Benzer şekilde, 300 saniyede bir en az 10 anahtarın değiştiğinde ve 60 saniyede bir en az 10000 anahtarın değiştiğinde verileri yedekler.

  1. BGSAVE komutu kullanılarak arka planda veriler yedeklenir:

BGSAVE

Bu komut, yedekleme işlemi başlatır ve yedekleme işlemi tamamlandığında bir cevap döndürür.

  1. Yedeklenen verilerin konumunu belirlemek için LASTSAVE komutu kullanılır:

LASTSAVE

Bu komut, son yedeklemenin zamanını ve yedekleme dosyasının konumunu döndürür.

Redis Güvenlik İşlemleri

Redis, verilerin güvenliğini sağlamak için birkaç farklı yöntem sunar:

  • Redis sunucusunu bir parola ile koruyabilirsiniz. Bu işlem için, Redis konfigürasyon dosyasındaki “requirepass” satırına bir parola eklemeniz gerekmektedir:

requirepass yourpassword

  • Redis sunucusunun yalnızca belirli IP adreslerinden erişilebilmesi sağlanabilir. Bu işlem için, Redis konfigürasyon dosyasındaki “bind” satırına IP adresi eklemeniz gerekmektedir:

bind youripaddress

  • Redis sunucusu üzerindeki kritik verilerin şifrelenmesi de önerilen bir yöntemdir. Bu işlem için, Redis verilerini şifrelemek için bir dizi üçüncü şahıs aracılığıyla hizmet sunan üçüncü parti bir araç kullanılabilir. Örneğin, RediSearch modülü, Redis verilerini şifrelemek için kullanılabilir.
  • Redis sunucusunun ağ trafiğinin şifrelenmesi, verilerin güvenliğini artıran bir diğer yöntemdir. Bu işlem için, SSL/TLS protokolü kullanılarak Redis sunucusuna bağlanılabilir.
  • Redis sunucusu üzerinde yapılan işlemlerin kaydedilmesi de güvenlik açısından önemlidir. Bu işlem için, Redis sunucusunda yerleşik olan AOF (Append-Only File) modülü kullanılabilir. AOF modülü, tüm işlemleri kaydederek sunucu çöktüğünde bile verilerin geri yüklenmesini sağlar.
  • Redis sunucusu, izinsiz erişim girişimlerini tespit etmek için bir dizi önlem sunar. Bu önlemler arasında, belli sayıda hatalı giriş denemesi sonrasında sunucunun otomatik olarak kapatılması veya belirli IP adreslerinden gelen giriş girişimlerinin engellenmesi yer alır.
  • Redis, yüksek performansı, basit tasarımı ve çok sayıda işleviyle birçok uygulama geliştiricisi tarafından tercih edilen bir veritabanıdır. Ancak, verilerin güvenliği ve yedeklenmesi, Redis sunucusunun düzgün çalışmasını sağlamak için önemlidir. Yukarıdaki adımları izleyerek Redis sunucusunun güvenliğini ve verilerin yedeklenmesini sağlayabilirsiniz.
0 Shares:
Ayrıca beğenebilirsiniz