Redis配置與優化

2021-10-12 06:51:40 字數 3970 閱讀 1737

1.乙個結構化的資料庫,建立在關係迷行基礎上

2.一般面向於記錄

3.包括

oracle mysql sql server microsoft access db2等

1.除了主流的關係型資料庫外的資料庫都認為是非關係型

2.包括

redis mongbd hbase couhdb

1.具有極高的資料讀寫速度

2.支援豐富的資料型別

支援資料的持久化

原子性支援資料備份

string型別是二進位制安裝的,意思是redis的string可以包含任何資料。比如jpg或者序列化的物件

redis hash 是乙個string型別的field 和value 的對映表,hash 特別適合用於儲存物件

redis列表是簡單的字串列表,按照插入順序排序,你可以新增乙個元素到列表的頭部(左邊)或者尾部(右邊)。

redis zset 和set 一樣也是string型別元素的集合,且不允許重複的成員不同的是元素都會關聯乙個double型別的分數。redis正是通過的分數來為集合中的成員進行從小到大的排序

型別

簡介特性

場景string(字串)

二進位制安全

可以包含任何資料,比如jpg或者序列化的物件,乙個鍵最大能儲存512m

—hash(字典)

鍵值對集合,及程式語言中的map型別

適合儲存物件,並且可以像資料庫中update乙個屬性一樣只修改某一項屬性值(memcached中需要取出整個字串反序列化物件修改完在序列化存回去)

儲存、讀取、修改使用者屬性

list(列表)

鍊錶(雙向鍊錶)

增刪塊,提供啊哦做某一段元素的api

罪行訊息排行等功能(比如朋友圈的時間線)訊息列隊

set(集合)

雜湊表實現,元素不重複

新增刪除,查詢的複雜度都是o(1)2 ,為集合提供了求交集,並集差集等操作

sorted

鍵set中的元素增加

資料插入集合時已經進行天然排序

排行榜、帶權重的訊息列表

[root@glt4 ~]# redis-cli -h 20.0.0.13 -p 6379

20.0.0.13:6379> set a 5

ok20.0.0.13:6379> get a

「5」20.0.0.13:6379> type a

string20.0.0.13:6379> incr a

(integer) 6

20.0.0.13:6379> decr a

(integer) 5

20.0.0.13:6379> incrby a 10

(integer) 15

20.0.0.13:6379> decrdy a 7

(error) err unknown commanddecrdy, with args beginning with:a,7, 20.0.0.13:6379> decrby a 7

(integer) 8

20.0.0.13:6379> hset hash1 ggg1 a

(integer) 1

20.0.0.13:6379> hset hash1 ggg2 b

(integer) 1

20.0.0.13:6379> hset hash1 ggg3 c

(integer) 1

20.0.0.13:6379> hget hash ggg1

(nil)

20.0.0.13:6379> hget hash1 ggg1

「a」20.0.0.13:6379> hget hash1 ggg2

「b」20.0.0.13:6379> hget hash1 ggg3

「c」20.0.0.13:6379> hget hash1 ggg4

(nil)

20.0.0.13:6379> hset hash1 lll1 1 lll2 2

(integer) 2

20.0.0.13:6379> hset hash1 lll1 1 lll2 2

(integer) 0

20.0.0.13:6379> hmget hash1 ggg1 ggg2

「a」「b」

20.0.0.13:6379> hmget hash1 ggg1 ggg2 lll1 lll2

「a」「b」

「1」「2」

20.0.0.13:6379>

20.0.0.13:6379> rpush list1 20

(integer) 5

20.0.0.13:6379> lrange list1 0 10

「6」「7」

「8」「9」

「20」

20.0.0.13:6379>

20.0.0.13:6379> rpush list1 20

(integer) 5

20.0.0.13:6379> lrange list1 0 10

「6」「7」

「8」「9」

「20」

20.0.0.13:6379>

20.0.0.13:6379> sadd set1 13

(integer) 1

20.0.0.13:6379> sadd set1 23

(integer) 1

20.0.0.13:6379> sadd set1 33

(integer) 1

20.0.0.13:6379> sadd set1 43

(integer) 1

20.0.0.13:6379> sadd set1 53

(integer) 1

20.0.0.13:6379> scard set1

(integer) 5

20.0.0.13:6379> sismember set1 13

(integer) 1

20.0.0.13:6379> sismember set1 10

(integer) 0

20.0.0.13:6379> srem set1 13

(integer) 1

20.0.0.13:6379> smembers set1

「23」

「33」

「43」

「53」

20.0.0.13:6379>

20.0.0.13:6379> zadd zset1 5.5 ttt1

(integer) 1

20.0.0.13:6379> zadd zset1 6.6 ttt2

(integer) 1

20.0.0.13:6379> zadd zset1 7.7 ttt3

(integer) 1

20.0.0.13:6379> zcard zset1

(integer) 3

20.0.0.13:6379> zrangebyscore zset 0 8

(empty list or set)

20.0.0.13:6379> zrangebyscore zset1 0 8

「ttt1」

「ttt2」

「ttt3」

20.0.0.13:6379> zrangebyscore zset1 0 8 withscores

「ttt1」

「5.5」

「ttt2」

"6.5999999999999996"5) 「ttt3」

「7.7000000000000002」

20.0.0.13:6379>

Redis安裝與配置

一 windows下安裝redis 由上圖可見redis服務的預設埠為6379 3 保持開啟redis服務剛剛開啟的視窗請不要關閉 另起乙個cmd視窗執行客戶端進驗證是否正常執行,使用cd命令切換到redis目錄執行redis cli.exe h 127.0.0.1 p 6379命令。設定鍵值對 s...

Redis安裝與配置

1.1 編譯 redis 資料庫 1 將 redis 源 檔案上傳到 linux 系統之中,隨後將其解壓縮到 usr local src 目錄之中 tar xzvf srv ftp redis 3.2.5.tar.gz c usr local src 2 為了進行 redis 資料庫的編譯,那麼需要...

Redis安裝與配置

wget tar xf usr local redis 2.8.12.tar.gz cd redis 2.8.12 make 如果出現一下報錯 zmalloc.h 50 31 fatal error jemalloc jemalloc.h no such file or directory 解決辦法...