Redis Database Nedir ? Konfigürasyon & İşlemler

Emperor Federico

Katılımcı Üye
5 Ocak 2013
876
0
Route 66
Redis Nedir?

Key-Value yapılı, open source bir databasedir.
Hız konusunda iyi güvenlik konusunda iyi değildir, bunun sebebi veri şifrelemeyi desteklememektedir. Yapısı şu şekildedir; Not Only Structured Query Language'dir. Client'imiz ve Server'ımız vardır. Client'imize veri göndeririz bunu önbelleğine alır ve biz bunu dilersek bunu diske kaydeder. Bu da hız konusundaki performansıdır. Ufak çaplı değişkenler için kullanılması daha etiktir.

Desteklediği Veri Tipleri Nelerdir?

Strings - Lists - Hashes - Sets - Sorted Sets

Ubuntu Redis Kurulumu

Linux'u yeni kurmuş veya kuracak olanlar için TCL olarak kısalttığımız Transaction Control Language ihtiyacımız vardır. Bunu terminalimizden indirelim.
Kod:
sudo apt-get install build-essential tcl
Belirlediğimiz yerde 'mkdir' komutu ile klasör oluşturduktan sonra bu klasörün içerisine sıkıştırılmış Redis dosyasını indiriyoruz, klasöre çıkartıyoruz bunu yapılandırıyoruz.
Kod:
wget http://download.redis.io./releases/redis-4.0.11.tar.gz
tar xzf redis-4.0.11.tar.gz
cd redis-4.0.11
make


Serverımıza giriş yapıp kontrol ediyoruz.
Kod:
src/redis-server
Clientimize girip bir veri gönderip test edelim.
Kod:
src/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"


Redis Nedir? & Ubuntu Redis Kurulumu;
[ame]https://www.youtube.com/watch?v=P5BJ9UNVPLk[/ame]



Redis Konfigürasyon Ayaları & İşlemler


Clientimize bağlanacağız buradan gerekli konfigürasyonları yapacağız. Terminalimizi açıyoruz.

Kod:
redis-cli


Bilmemiz Gereken KeyWordler

SET: Veri atamamız ve(ya) güncellememiz için kullanılır.
GET: Bu bir print fonksiyonu gibidir. Databaseden veriyi yazdırır.
EXIST: Böyle bir veri var mı yok mu diye kontrol eder.
EXPIRE: Verimize ömür biçer, bu ömürden sonra veri kendini imha eder.
DEL: Verimizi siler.
MOVE: Datamızı yönlendirmek istediğimiz databasee göderir.
KEYS: Kesişen verileri listeler.
RENAME: Yeniden adlandırır.



Kod:
CONFIG GET * \\Clientte konfigürasyon ayarlarını listeler.
CONFIG SET dbname "EmperorFederico" \\Database adını Emperor Federico olarak değiştirdik.
SET Emperor "Federico" \\ Emperor anahtarına Federico değerini atadık.
EXPIRE  Emperor 2 \\ Emperor anahtarının ömrünü 2 dakika olarak ayarlardık. 2  dakika sonra Emperor anahtarı kendini imha ederek silinecektir. GET ile  yazdırmak istediğiniz takdirde 0 çıktısını alırsınız.
MOVE Emperor database2





Stringler

SET Key-Value: Anahtarımıza yeni değer atarız.
GET Key: Belirtilen anahtarın değerini gösterir.
GETSET Key-NewValue: Daha önce oluşturduğumuz anahtara yeni bir değer ataması gerçekleştirir.
STRLEN: Uzunluğu belirtir.
APPEND Key-AddedValue: Ekleme metodudur, önceki değerin sonuna yeni değeri ekler.
MSET Key1 Key2 Key3: Multi işlemdir, toplu değer atamaları gerçekleştirir.
MGET: MSET'in çıktısını alan formattır.



Kod:
SET Emperor "Federico"
GETSET Emperor "Cesar"
STRLEN Emperor
APPEND Emperor "Julio"


Hashler


HMSET Key AltKey1 AltKey2: Ana anahtarın altında oluşturulmuş altanahtarlardır.
HGET AltKey: Belirtilen hash alt anahtar değerini getirir.
HGETALL Key: Tüm hash değerlerini yansıtır.
HDEL AltKey:Belirtilen alt anahtarı siler.


Kod:
HMSET Federico programminglanguage1 "Python" programminglanguage2 "Csharp" programminglanguage3 "Ruby"
HMGET Federico programminglanguage3
HDEL Federico programminglanguage3




Listeler


LINDEX Key-Order: Listedeki belirlenen indexi sergiler.
LRANGE Key-Interspace: Belirlediğimiz aralığı sergiler.
LINSER KEY- BEFORE/AFTER: Belirlediğimiz yere (önüne veya arkasına) yeni eleman ekler.

LPUSH Key-Value: Yeni değeri elemana pushlar.

Kod:
LPUSH Emperor Federico
LPUSH Emperor Cesar
LRANGE Emperor 0 1
LINSERT Emperor Cesar


Setler

SADD Key-Value: Bir set oluştururuz ve bu set altındaki anahtara değer atarız.
SMEMBERS Set: Setimizi yazdırır, GET mantığı gibi.
SDIFF: Kıyaslama metodudur, ilk yazılan kümenin diğerinde olmayanını yazdır.
SMOVE Set1-Set2-Key: İlk setten diğer sete belirlediğimiz anahtarı transfer eder.


Kod:
SADD webserver darkcomet
SADD webserver spynet
SMEMBERS webserver
SADD trojan wormwin32 darkcomet
SDIFF webserver trojan
SMOVE webserver trojan spynet


Sıralı Setler

ZADD Key-Score-Value: Keyin içinde sıralı bir set oluştuur. Kümeyeelemanı ekler ve skoru yükler.

ZRANGE Key-First-LastWITHSCORE: Key içerisindeki seti ilk ve son diye ayırarak anahtarları sergiler. WITHSCORE ile anahtarlar skoru alır.
ZSCORE Key-AltKey: Elemanın skorunu yazdırır.


Konfigürasyon ve Database İşlemleri;
[ame="https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be"]https://www.youtube.com/watch?v=Cc5n1bV320g&feature=youtu.be[/ame]



 
Moderatör tarafında düzenlendi:
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.