mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
121 lines
9.9 KiB
Markdown
121 lines
9.9 KiB
Markdown
# Memcache Commands
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
|
|
## Commands Cheat-Sheet
|
|
|
|
**From** [**https://lzone.de/cheat-sheet/memcached**](https://lzone.de/cheat-sheet/memcached)
|
|
|
|
Podržane komande (službene i neke neslužbene) su dokumentovane u [doc/protocol.txt](https://github.com/memcached/memcached/blob/master/doc/protocol.txt) dokumentu.
|
|
|
|
Nažalost, opis sintakse nije baš jasan i jednostavna pomoćna komanda koja bi navela postojeće komande bi bila mnogo bolja. Evo pregleda komandi koje možete pronaći u [source](https://github.com/memcached/memcached) (od 19.08.2016):
|
|
|
|
| Command | Description | Example |
|
|
| -------------------- | --------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------- |
|
|
| get | Čita vrednost | `get mykey` |
|
|
| set | Postavlja ključ bezuslovno | <p><code>set mykey <flags> <ttl> <size></code><br><br><p>Obavezno koristite \r\n kao prelome linija kada koristite Unix CLI alate. Na primer</p> <code>printf "set mykey 0 60 4\r\ndata\r\n" | nc localhost 11211</code></p> |
|
|
| add | Dodaje novi ključ | `add newkey 0 60 5` |
|
|
| replace | Prepisuje postojeći ključ | `replace key 0 60 5` |
|
|
| append | Dodaje podatke postojećem ključu | `append key 0 60 15` |
|
|
| prepend | Dodaje podatke ispred postojećeg ključa | `prepend key 0 60 15` |
|
|
| incr | Povećava numeričku vrednost ključa za dati broj | `incr mykey 2` |
|
|
| decr | Smanjuje numeričku vrednost ključa za dati broj | `decr mykey 5` |
|
|
| delete | Briše postojeći ključ | `delete mykey` |
|
|
| flush_all | Nevaži sve stavke odmah | `flush_all` |
|
|
| flush_all | Nevaži sve stavke u n sekundi | `flush_all 900` |
|
|
| stats | Štampa opšte statistike | `stats` |
|
|
| | Štampa statistiku memorije | `stats slabs` |
|
|
| | Štampa statistiku alokacije višeg nivoa | `stats malloc` |
|
|
| | Štampa informacije o stavkama | `stats items` |
|
|
| | | `stats detail` |
|
|
| | | `stats sizes` |
|
|
| | Resetuje brojače statistike | `stats reset` |
|
|
| lru_crawler metadump | Izbacuje (većinu) metapodataka za (sve) stavke u kešu | `lru_crawler metadump all` |
|
|
| version | Štampa verziju servera. | `version` |
|
|
| verbosity | Povećava nivo logovanja | `verbosity` |
|
|
| quit | Prekida sesiju | `quit` |
|
|
|
|
#### Traffic Statistics <a href="#traffic-statistics" id="traffic-statistics"></a>
|
|
|
|
Možete upitati trenutne statistike saobraćaja koristeći komandu
|
|
```
|
|
stats
|
|
```
|
|
Dobijaćete izveštaj koji prikazuje broj konekcija, bajtova u/iz i još mnogo toga.
|
|
|
|
Primer izlaza:
|
|
```
|
|
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
|
|
```
|
|
#### Statistika memorije <a href="#memory-statistics" id="memory-statistics"></a>
|
|
|
|
Možete upititi trenutnu statistiku memorije koristeći
|
|
```
|
|
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
|
|
```
|
|
Ako niste sigurni da li imate dovoljno memorije za vaš memcached instancu, uvek obratite pažnju na brojače “evictions” koje daje komanda “stats”. Ako imate dovoljno memorije za instancu, brojač “evictions” bi trebao biti 0 ili bar ne bi trebao rasti.
|
|
|
|
#### Koji Ključevi Se Koriste? <a href="#which-keys-are-used" id="which-keys-are-used"></a>
|
|
|
|
Ne postoji ugrađena funkcija koja direktno određuje trenutni skup ključeva. Međutim, možete koristiti
|
|
```
|
|
stats items
|
|
```
|
|
komanda za određivanje koliko ključeva postoji.
|
|
```
|
|
stats items
|
|
STAT items:1:number 220
|
|
STAT items:1:age 83095
|
|
STAT items:2:number 7
|
|
STAT items:2:age 1405
|
|
[...]
|
|
END
|
|
```
|
|
Ovo barem pomaže da se vidi da li se koriste neki ključevi. Da biste iskopirali imena ključeva iz PHP skripte koja već vrši pristup memcache-u, možete koristiti PHP kod sa [100days.de](http://100days.de/serendipity/archives/55-Dumping-MemcacheD-Content-Keys-with-PHP.html).
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|