Obsługiwane komendy (oficjalne i nieoficjalne) są udokumentowane w dokumencie doc/protocol.txt.
Niestety opis składni nie jest zbyt czytelny, a prosta komenda pomocy wymieniająca istniejące komendy byłaby o wiele lepsza. Oto przegląd komend, które można znaleźć w źródle (stan na 19.08.2016):
Statystyki ruchu
Możesz zapytać o bieżące statystyki ruchu, używając polecenia
stats
Otrzymasz listę, która zawiera liczbę połączeń, bajty wejścia/wyjścia i wiele innych.
Przykładowy wynik:
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
Statystyki pamięci
Możesz zapytać o bieżące statystyki pamięci używając
stats slabs
Przykładowy wynik:
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
Jeśli nie jesteś pewien, czy masz wystarczająco pamięci dla swojego egzemplarza memcached, zawsze zwracaj uwagę na liczniki "evictions" podane przez polecenie "stats". Jeśli masz wystarczająco pamięci dla egzemplarza, licznik "evictions" powinien wynosić 0 lub przynajmniej nie wzrastać.
Które klucze są używane?
Nie ma wbudowanej funkcji do bezpośredniego określenia bieżącego zestawu kluczy. Jednak można użyć
stats items
English:
**stats items**
Polish:
**statystyki elementów**
stats items
STAT items:1:number 220
STAT items:1:age 83095
STAT items:2:number 7
STAT items:2:age 1405
[...]
END
To przynajmniej pomaga zobaczyć, czy jakiekolwiek klucze są używane. Aby wypisać nazwy kluczy z skryptu PHP, który już ma dostęp do memcache, można użyć kodu PHP z 100days.de.
set mykey <flags> <ttl> <size>
<p>Upewnij się, że używasz \r\n jako znaków nowej linii przy użyciu narzędzi wiersza poleceń Unix. Na przykład</p> printf "set mykey 0 60 4\r\ndata\r\n"
add
Dodaje nowy klucz
add newkey 0 60 5
replace
Nadpisuje istniejący klucz
replace key 0 60 5
append
Dołącza dane do istniejącego klucza
append key 0 60 15
prepend
Dodaje dane na początku istniejącego klucza
prepend key 0 60 15
incr
Zwiększa wartość numerycznego klucza o podaną liczbę
incr mykey 2
decr
Zmniejsza wartość numerycznego klucza o podaną liczbę
decr mykey 5
delete
Usuwa istniejący klucz
delete mykey
flush_all
Natychmiast unieważnia wszystkie elementy
flush_all
flush_all
Unieważnia wszystkie elementy za n sekund
flush_all 900
stats
Wyświetla ogólne statystyki
stats
Wyświetla statystyki pamięci
stats slabs
Wyświetla statystyki alokacji na wyższym poziomie
stats malloc
Wyświetla informacje o elementach
stats items
stats detail
stats sizes
Resetuje liczniki statystyk
stats reset
lru_crawler metadump
Zrzutuje (większość) metadane (wszystkich) elementów w pamięci