# Memcache Komutları {{#include ../../banners/hacktricks-training.md}} ## Komutlar Hızlı Referansı **Kaynak** [**https://lzone.de/cheat-sheet/memcached**](https://lzone.de/cheat-sheet/memcached) Desteklenen komutlar (resmi olanlar ve bazı resmi olmayanlar) [doc/protocol.txt](https://github.com/memcached/memcached/blob/master/doc/protocol.txt) belgesinde belgelenmiştir. Üzgünüm, sözdizimi açıklaması gerçekten net değil ve mevcut komutları listeleyen basit bir yardım komutu çok daha iyi olurdu. İşte [source](https://github.com/memcached/memcached) içinde bulabileceğiniz komutların bir özeti (19.08.2016 itibarıyla): | Komut | Açıklama | Örnek | | -------------------- | ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- | | get | Bir değeri okur | `get mykey` | | set | Bir anahtarı koşulsuz olarak ayarlar |

set mykey

Unix CLI araçlarını kullanırken \r\n'yi satır sonları olarak kullanmayı unutmayın. Örneğin

printf "set mykey 0 60 4\r\ndata\r\n" | nc localhost 11211

| | add | Yeni bir anahtar ekler | `add newkey 0 60 5` | | replace | Mevcut anahtarı üzerine yazar | `replace key 0 60 5` | | append | Mevcut anahtara veri ekler | `append key 0 60 15` | | prepend | Mevcut anahtara veri ekler | `prepend key 0 60 15` | | incr | Sayısal anahtar değerini verilen sayı kadar artırır | `incr mykey 2` | | decr | Sayısal anahtar değerini verilen sayı kadar azaltır | `decr mykey 5` | | delete | Mevcut bir anahtarı siler | `delete mykey` | | flush_all | Tüm öğeleri hemen geçersiz kılar | `flush_all` | | flush_all | Tüm öğeleri n saniye içinde geçersiz kılar | `flush_all 900` | | stats | Genel istatistikleri yazdırır | `stats` | | | Bellek istatistiklerini yazdırır | `stats slabs` | | | Daha yüksek seviyede tahsis istatistiklerini yazdırır | `stats malloc` | | | Öğeler hakkında bilgi yazdırır | `stats items` | | | | `stats detail` | | | | `stats sizes` | | | İstatistik sayaçlarını sıfırlar | `stats reset` | | lru_crawler metadump | Önbellekteki (tüm) öğelerin (çoğu) meta verisini döker | `lru_crawler metadump all` | | version | Sunucu sürümünü yazdırır. | `version` | | verbosity | Günlük seviyesini artırır | `verbosity` | | quit | Oturumu sonlandırır | `quit` | #### Trafik İstatistikleri Mevcut trafik istatistiklerini sorgulamak için komutu kullanabilirsiniz. ``` stats ``` Bağlantı sayısını, giren/çıkan baytları ve daha fazlasını sunan bir liste alacaksınız. Örnek Çıktı: ``` STAT pid 14868 STAT uptime 175931 STAT time 1220540125 STAT version 1.2.2 STAT pointer_size 32 STAT rusage_user 620.299700 STAT rusage_system 1545.703017 STAT curr_items 228 STAT total_items 779 STAT bytes 15525 STAT curr_connections 92 STAT total_connections 1740 STAT connection_structures 165 STAT cmd_get 7411 STAT cmd_set 28445156 STAT get_hits 5183 STAT get_misses 2228 STAT evictions 0 STAT bytes_read 2112768087 STAT bytes_written 1000038245 STAT limit_maxbytes 52428800 STAT threads 1 END ``` #### Bellek İstatistikleri Mevcut bellek istatistiklerini sorgulamak için ``` stats slabs ``` Understood! Please provide the text you would like me to translate. ``` STAT 1:chunk_size 80 STAT 1:chunks_per_page 13107 STAT 1:total_pages 1 STAT 1:total_chunks 13107 STAT 1:used_chunks 13106 STAT 1:free_chunks 1 STAT 1:free_chunks_end 12886 STAT 2:chunk_size 100 STAT 2:chunks_per_page 10485 STAT 2:total_pages 1 STAT 2:total_chunks 10485 STAT 2:used_chunks 10484 STAT 2:free_chunks 1 STAT 2:free_chunks_end 10477 [...] STAT active_slabs 3 STAT total_malloced 3145436 END ``` Eğer memcached örneğiniz için yeterli belleğe sahip olup olmadığınızdan emin değilseniz, her zaman “stats” komutuyla verilen “evictions” sayaçlarına dikkat edin. Eğer örnek için yeterli belleğiniz varsa, “evictions” sayacı 0 olmalı veya en azından artmamalıdır. #### Hangi Anahtarlar Kullanılıyor? Mevcut anahtar setini doğrudan belirlemek için yerleşik bir fonksiyon yoktur. Ancak bunu kullanabilirsiniz. ``` stats items ``` anahtarların kaç tane olduğunu belirlemek için komut. ``` stats items STAT items:1:number 220 STAT items:1:age 83095 STAT items:2:number 7 STAT items:2:age 1405 [...] END ``` Bu en azından hangi anahtarların kullanıldığını görmeye yardımcı olur. Memcache erişimini zaten yapan bir PHP betiğinden anahtar adlarını dökmek için [100days.de](http://100days.de/serendipity/archives/55-Dumping-MemcacheD-Content-Keys-with-PHP.html) adresindeki PHP kodunu kullanabilirsiniz. {{#include ../../banners/hacktricks-training.md}}