mac安裝redis全過程
mac安裝redis
官網(wǎng)下載指定版本的redis https://redis.io/ 目前3.2.0 是最新最穩(wěn)定的 版本
這里是歷史版本下載
下載指定版本
安裝
1.放到自定義目錄下并解壓
2.打開終端,執(zhí)行命令
- cd redis的安裝目錄下
- make test -- 此命令的作用是將redis源代碼編譯成可執(zhí)行文件,使我們能在服務(wù)器上運(yùn)行redis服務(wù)
當(dāng)出現(xiàn)這個提示表示 編譯成功
啟動
下載解壓后redis文件夾內(nèi)如此
在終端進(jìn)入src文件夾下 執(zhí)行如下命令
./redis-server --不指定配置文件默認(rèn)走 redis.conf文件
也可指定配置文件
./redis-server ../redis.conf --指定配置文件啟動redis服務(wù)
啟動客戶端
./redis-cli
執(zhí)行簡單命令 可查看是否成功
set 1 1 --存放key為1 value為1的 數(shù)據(jù) get 1 --獲取key為1 的數(shù)據(jù)
redis默認(rèn)是沒有密碼的 端口號為6379
修改 redis的密碼 可在redis.conf 文件中 添加
requirepass yourpassword
- 啟動redis服務(wù)時指定 配置文件
- 啟動redis客戶端時 指定密碼
redis-cli -a yourpassword
官網(wǎng)下載可視化界面 Redis Insight
redis-cli 終端界面 添加 對應(yīng)的值
打開剛剛下載的redis insight
里邊就可以看到剛剛設(shè)置的值 并且還可以更改 更改完 在終端redis-cli也可以看到
redis 配置
daemonize
: 是否以守護(hù)進(jìn)程方式運(yùn)行,默認(rèn)為no。設(shè)置為yes時,Redis會在后臺運(yùn)行。pidfile
: 當(dāng)Redis以守護(hù)進(jìn)程方式運(yùn)行時,可以通過此配置項(xiàng)指定其進(jìn)程ID文件的位置。port
: Redis監(jiān)聽的端口,默認(rèn)為6379。bind
: 綁定的主機(jī)地址,可以指定Redis只響應(yīng)特定IP地址的請求。timeout
: 指定客戶端閑置多長時間后關(guān)閉連接,如果設(shè)置為0,則關(guān)閉該功能。loglevel
: 指定日志記錄級別,Redis支持四個級別:debug、verbose、notice、warning,默認(rèn)為notice。logfile
: 指定日志文件的路徑,如果設(shè)置為stdout,則日志會輸出到標(biāo)準(zhǔn)輸出。databases
: 設(shè)置數(shù)據(jù)庫的數(shù)量,默認(rèn)為16。save
: 指定在多長時間內(nèi),有多少次更新操作后,將數(shù)據(jù)同步到磁盤。例如,save 900 1表示900秒內(nèi)至少有1個更改時進(jìn)行保存。rdbcompression
: 是否在存儲至本地?cái)?shù)據(jù)庫時壓縮數(shù)據(jù),默認(rèn)為yes。dbfilename
: 指定本地?cái)?shù)據(jù)庫文件名,默認(rèn)為dump.rdb。dir
: 指定本地?cái)?shù)據(jù)庫文件存放的目錄。slaveof
: 設(shè)置當(dāng)本機(jī)為slave服務(wù)時,指向的master服務(wù)的IP地址及端口。masterauth
: 當(dāng)master設(shè)置了密碼保護(hù)時,slave服務(wù)連接master的密碼。requirepass
: 設(shè)置Redis連接密碼,客戶端連接Redis時需要通過AUTH <password>命令提供密碼。maxclients
: 設(shè)置同一時間最大客戶端連接數(shù),默認(rèn)無限制。maxmemory
: 指定Redis最大內(nèi)存限制,達(dá)到最大內(nèi)存后,Redis會根據(jù)配置的策略處理內(nèi)存。maxmemory-policy
: 內(nèi)存達(dá)到上限時的清理策略,如volatile-lru、allkeys-lru等。appendonly
: 是否開啟AOF持久化,如果不開啟,可能會在斷電時導(dǎo)致數(shù)據(jù)丟失。appendfilename
: 指定AOF文件的名稱,默認(rèn)為appendonly.aof。appendfsync
: 指定AOF文件的同步策略,可以設(shè)置為no、always或everysec。vm-enabled
: 是否啟用虛擬內(nèi)存機(jī)制,該機(jī)制將數(shù)據(jù)分頁存放,將訪問量較少的數(shù)據(jù)swap到磁盤上。vm-swap-file
: 虛擬內(nèi)存文件的路徑。vm-max-memory
: 設(shè)置使用虛擬內(nèi)存的閾值。vm-page-size
: 設(shè)置swap文件中的頁面大小。activerehashing
: 是否激活重置哈希,默認(rèn)為yes。hash-max-zipmap-entries
: 指定當(dāng)哈希表中的元素?cái)?shù)量或單個元素大小超過一定值時,采用特殊的哈希算法。include
: 指定包含其他配置文件的路徑。
redis 常用命令
#GET key: 獲取鍵的值。 redis-cli GET mykey #SET key value: 設(shè)置鍵的值。 redis-cli SET mykey "Hello" #DEL key: 刪除鍵。 redis-cli DEL mykey #EXISTS key: 檢查鍵是否存在。 redis-cli EXISTS mykey #EXPIRE key seconds: 設(shè)置鍵的過期時間(秒)。 redis-cli EXPIRE mykey 3600 #TTL key: 獲取鍵的剩余生存時間(秒)。 redis-cli TTL mykey #KEYS pattern: 查找所有符合模式的鍵。 redis-cli KEYS "user:*" #RANDOMKEY: 隨機(jī)返回一個鍵。 redis-cli RANDOMKEY #TYPE key: 獲取鍵的類型。 redis-cli TYPE mykey #FLUSHDB: 清空數(shù)據(jù)庫中的所有鍵。 redis-cli FLUSHDB #FLUSHALL: 清空所有數(shù)據(jù)庫中的所有鍵。 redis-cli FLUSHALL #APPEND key value: 如果鍵存在,向鍵的值追加內(nèi)容。 redis-cli APPEND mykey " World" #STRLEN key: 獲取鍵值的長度。 redis-cli STRLEN mykey #SETRANGE key offset value: 從指定偏移量開始設(shè)置鍵的值。 redis-cli SETRANGE mykey 0 "New Value" #GETRANGE key start end: 獲取鍵值的一部分。 redis-cli GETRANGE mykey 0 5 #MSET key value [key value ...]: 同時設(shè)置多個鍵值對。 redis-cli MSET key1 "value1" key2 "value2" #MGET key [key ...]: 同時獲取多個鍵的值。 redis-cli MGET key1 key2 #INCR key: 將鍵的值增加1,如果鍵不存在則開始于1。 redis-cli INCR counter #DECR key: 將鍵的值減少1。 redis-cli DECR counter #LPUSH key value: 將值插入到列表頭部。 redis-cli LPUSH mylist "item" #RPUSH key value: 將值插入到列表尾部。 redis-cli RPUSH mylist "item" #LRANGE key start stop: 獲取列表中的元素范圍。 redis-cli LRANGE mylist 0 -1 #LREM key count value: 從列表中移除元素。 redis-cli LREM mylist 1 "item" #SADD key member [member ...]: 向集合添加元素。 redis-cli SADD myset "value1" "value2" #SREM key member [member ...]: 從集合中移除元素。 redis-cli SREM myset "value1" #SISMEMBER key member: 檢查元素是否是集合的成員。 redis-cli SISMEMBER myset "value1" #SUNION key [key ...]: 獲取多個集合的并集。 redis-cli SUNION myset myotherset #SINTER key [key ...]: 獲取多個集合的交集。 redis-cli SINTER myset myotherset #ZADD key score member [score member ...]: 向有序集合添加元素。 redis-cli ZADD myzset 1 "one" 2 "two" #ZRANGE key start stop [WITHSCORES]: 獲取有序集合中的元素范圍。 redis-cli ZRANGE myzset 0 -1 WITHSCORES #ZREM key member [member ...]: 從有序集合中移除元素。 redis-cli ZREM myzset "one" #HSET key field value: 在哈希表中設(shè)置字段的值。 redis-cli HSET myhash field1 "value1" #HGET key field: 獲取哈希表中字段的值。 redis-cli HGET myhash field1 #HGETALL key: 獲取哈希表中的所有字段和值。 redis-cli HGETALL myhash #HDEL key field [field ...]: 從哈希表中刪除字段。 redis-cli HDEL myhash field1 #PUBLISH channel message: 向頻道發(fā)布消息。 redis-cli PUBLISH mychannel "Hello World" #SUBSCRIBE channel [channel ...]: 訂閱頻道。 redis-cli SUBSCRIBE mychannel #UNSUBSCRIBE channel [channel ...]: 取消訂閱頻道。 redis-cli UNSUBSCRIBE mychannel #CONFIG GET parameter: 獲取當(dāng)前的配置參數(shù)值。 redis-cli CONFIG GET maxmemory #CONFIG SET parameter value: 設(shè)置配置參數(shù)的值。 redis-cli CONFIG SET maxmemory 100mb
總結(jié)
以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
解讀redis?slaveof命令執(zhí)行后為什么需要清庫重新同步
這篇文章主要介紹了redis?slaveof命令執(zhí)行后為什么需要清庫重新同步,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2025-04-04Redis腦裂導(dǎo)致數(shù)據(jù)丟失的解決
本文主要介紹了Redis腦裂導(dǎo)致數(shù)據(jù)丟失的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01Redis數(shù)據(jù)持久化方式技術(shù)解析
Redis(Remote Dictionary Server ),即遠(yuǎn)程字典服務(wù),是一個開源的使用ANSI C語言編寫、支持網(wǎng)絡(luò)、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫,并提供多種語言的API2021-09-09Redis源碼解析sds字符串實(shí)現(xiàn)示例
這篇文章主要為大家介紹了Redis源碼解析sds字符串實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-08-08