redis入門

redis是什么?

redis(remote dictionary server),是一個典型以KV鍵值對 nosql數(shù)據(jù)庫,是使用C語言編寫的。

redis安裝

下載地址http://redis.io/download
安裝步驟:

1 首先需要安裝gcc,把下載好的redis-3.0.0-rc2.tar.gz 放到linux /usr/local文件夾下

2 進(jìn)行解壓

tar -zxvf redis-3.0.0-rc2.tar.gz

3 進(jìn)入到redis-3.0.0目錄下,進(jìn)行編譯

make

4 進(jìn)入到src下進(jìn)行安裝 make install 驗證(ll查看src下的目錄,有redis-server 、redis-cil即可)

make install

5 建立倆個文件夾存放redis命令和配置文件

mkdir -p /usr/local/redis/etc

mkdir -p /usr/local/redis/bin

6 把redis-3.0.0下的redis.conf 移動到/usr/local/redis/etc下,

cp redis.conf /usr/local/redis/etc/

7 把redis-3.0.0/src里的mkreleasehdr.sh、redis-benchmark、redis-check-aof、redis-check-dump、redis-cli、redis-server
文件移動到bin下,命令:

mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check- 
dump redis-cli redis-server /usr/local/redis/bin

8 啟動時并指定配置文件:./redis-server /usr/local/redis/etc/redis.conf(注意要使用后臺啟動,所以修改redis.conf里的 daemonize 改為yes)

./redis-server /usr/local/redis/etc/redis.conf

9 驗證啟動是否成功:
ps -ef | grep redis 查看是否有redis服務(wù) 或者 查看端口:netstat -tunpl | grep 6379

ps -ef | grep redis
netstat -tunpl | grep 6379

進(jìn)入redis客戶端 ./redis-cli 退出客戶端quit
退出redis服務(wù):

(1)pkill redis-server 、
(2)kill 進(jìn)程號、             
(3)/usr/local/redis/bin/redis-cli shutdown 

redis配置文件

1、bind ip
2、requirepass 密碼
3、port
4、兩種持久化技術(shù)--快照 、aof
5、slaveof slaveof 192.168.13.4 6379
masterauth 密碼

redis有五種基本數(shù)據(jù)類型

string     字符串
hash       對象
list       列表
set        集合
zset       有序集合

字符串的命令:

set key value       # 保存一個鍵值對
get key         # 通過key來去對應(yīng)的值
image.png
mset key1 v1 k2 v2...   # 一次保存多個鍵值對
mget k1 k2 k3       # 通過key來去對應(yīng)的值
image.png
setex key second value  # 保存一個鍵值對,同時規(guī)定它的失效時間(second)
image.png
incr key        # 對key對應(yīng)值 加一,注意,只對數(shù)據(jù)字符串有效
incrby key value    # 對key對應(yīng)值 加value

decr key        # 對key對應(yīng)值 減一,注意,只對數(shù)據(jù)字符串有效
decrby key value    # 對key對應(yīng)值 減value
image.png
strlen key      # 求key對應(yīng)值的長度
append key value    # 對key對應(yīng)的值進(jìn)行新的拼接
image.png
setnx key vaule     # 如果存在key,則無效,如果不存在,則保存該鍵值對
image.png

hash命令:主要用來存儲對象的

u1 = User(1, "beibei", 18, "zhengzhou")
u2 = User(2, "xzh", 20, "zhengzhou")

hset key field value    # 存儲key對應(yīng)屬性field的值
hget key field      # 獲取key對應(yīng)屬性field的值
hmset key f1 v1 f2 v2...# 存儲key對應(yīng)多個屬性field的值
hmget key f1 f2...  # 獲取key對應(yīng)多個屬性field的值
image.png

image.png
hgetall key     # 獲取key對象所有屬性和對應(yīng)的值
hkeys key       # 獲取key對象的所有屬性的名稱
hvals key       # 獲取key對象的所有屬性的值
hlen key        # 獲取key的所有屬性個數(shù)
hstrlen key field   # 獲取key對應(yīng)的屬性的值的長度
image.png
hexists key field   # 判斷某個對象是否存在該屬性
hsetnx key field value  # 判斷對象的屬性是否存在,存在則不操作,不存在,則保存
image.png

image.png
hincrby key field value # 對對象的屬性(必須是數(shù)字字符串)進(jìn)行加法運(yùn)算
image.png

key操作

keys *          # 查詢當(dāng)前數(shù)據(jù)庫中所有key的個數(shù)
image.png
exists key      # 判斷某個key是否存在在當(dāng)前數(shù)據(jù)庫
del key         # 刪除對應(yīng)的key
type key        # 判斷key的類型
image.png
expire key second value # 為一個存在的key設(shè)置一個失效時間
ttl key         # 查看key的失效時間 -2表示不存在 -1 永久存在 正數(shù)表示存活的秒數(shù)
image.png
move key db     # 移動key到db數(shù)據(jù)庫中
select index        # 切換數(shù)據(jù)庫
image.png
info [xxxx]     # 查看當(dāng)前數(shù)據(jù)庫的狀態(tài)
image.png
dbsize          # 返回當(dāng)前數(shù)據(jù)庫的key的個數(shù)
image.png
flushdb         # 刪除當(dāng)前數(shù)據(jù)庫的所有數(shù)據(jù)
flushall        # 刪除所有數(shù)據(jù)庫的所有數(shù)據(jù)

persist key     # 讓key永久保存
image.png

list命令

lpush key v1 v2...  # 從左側(cè)將值放入list中
rpush key v1 v2...  # 從右側(cè)將值放入list中
lrange key start end    # 循環(huán)顯示list
linsert key b|a piovt v # 將值插入到對應(yīng)的位置
image.png

image.png
lpop key        # 從左側(cè)刪除第一個元素
rpop key        # 從右側(cè)刪除最后一個元素
image.png
llen key        # 獲取list的長度
ltrim key start stop    # 切割列表
lindex key index    # 獲取索引位對應(yīng)的元素
image.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容