Redis環(huán)境搭建(MacOS)

Redis是一個(gè)開(kāi)源的key-value類型的存儲(chǔ)系統(tǒng),大部分?jǐn)?shù)據(jù)存在于內(nèi)存中探遵,所有讀寫速度十分快柳沙。其支持的存儲(chǔ)value數(shù)據(jù)類型有多種岩灭,如:stringshashes赂鲤、lists噪径、setssorted sets等等蛤袒,這些數(shù)據(jù)類型都支持push/pop熄云、add/remove等豐富的操作,并且是原子性的妙真。此外,redis還支持周期性的更新數(shù)據(jù)到磁盤或者追加到記錄文件荚守,來(lái)實(shí)現(xiàn)master-slave數(shù)據(jù)同步的功能珍德。

MacOS系統(tǒng)上安裝redis的方式有多種,可以用homebrew一鍵安裝:

$ brew install redis

如果提示權(quán)限問(wèn)題矗漾,請(qǐng)使用sudo brew install redis锈候,此種方法不再介紹。下面來(lái)介紹一下源碼安裝的方式:

一敞贡、編譯源碼

1. 下載源碼

源碼地址:https://redis.io/

首先需要到redis官網(wǎng)下載源碼泵琳,然后解壓,如果是在終端里解壓誊役,可以使用如下命令获列,解壓到當(dāng)前目錄:

$ tar -zxf redis-4.0.0
圖1

2. 編譯

redisC語(yǔ)言開(kāi)發(fā)的系統(tǒng),需要gcc的編譯器蛔垢,如果沒(méi)有C的編譯器击孩,可以用homebrew安裝一下:

$ brew install gcc

redis里包含了makefile,簡(jiǎn)化了編譯步驟鹏漆,直接使用make就可以編譯:

$ make
圖2

二巩梢、安裝redis

在編譯完成后,需要把redis的命令安裝到/usr/local/bin目錄中艺玲,可以直接使用make install命令括蝠,如果希望安裝到指定目錄,需要指定PREFIX的目錄饭聚。

1. 安裝

make PREFIX=/usr/local/redis-4.0.0 install

如果/usr/local目錄下沒(méi)有redis-4.0.0的目錄忌警,需要?jiǎng)?chuàng)建,如果在終端中直接使用mkdir redis-4.0.0出現(xiàn)提示權(quán)限問(wèn)題若治,則可以在圖形化界面中創(chuàng)建慨蓝,但是需要輸入密碼感混,這樣創(chuàng)建的目錄的owner用戶是當(dāng)前用戶,而不是root用戶礼烈,因?yàn)?code>root用戶在后面需要自動(dòng)創(chuàng)建日志文件時(shí)會(huì)遇到權(quán)限的問(wèn)題弧满。

PREFIX=/usr/local/redis-4.0.0表示指定redis的安裝目錄

2. redis配置

把源碼目錄下的redis.conf文件拷貝到/usr/local/redis-4.0.0/etc目錄下,然后按如下提示修改代碼:

#修改為守護(hù)模式
 
daemonize yes
 
#設(shè)置進(jìn)程鎖文件
 
pidfile /usr/local/redis/redis.pid
 
#端口
 
port 6379
 
#客戶端超時(shí)時(shí)間
 
timeout 300
 
#日志級(jí)別
 
loglevel debug
 
#日志文件位置
 
logfile /usr/local/redis/log-redis.log
 
#設(shè)置數(shù)據(jù)庫(kù)的數(shù)量此熬,默認(rèn)數(shù)據(jù)庫(kù)為0庭呜,可以使用SELECT <dbid>命令在連接上指定數(shù)據(jù)庫(kù)id
 
databases 8
 
##指定在多長(zhǎng)時(shí)間內(nèi),有多少次更新操作犀忱,就將數(shù)據(jù)同步到數(shù)據(jù)文件募谎,可以多個(gè)條件配合
 
#save <seconds> <changes>
 
#Redis默認(rèn)配置文件中提供了三個(gè)條件:
 
save 900 1
 
save 300 10
 
save 60 10000
 
#指定存儲(chǔ)至本地?cái)?shù)據(jù)庫(kù)時(shí)是否壓縮數(shù)據(jù),默認(rèn)為yes阴汇,Redis采用LZF壓縮数冬,如果為了節(jié)省CPU時(shí)間,
 
#可以關(guān)閉該#選項(xiàng)搀庶,但會(huì)導(dǎo)致數(shù)據(jù)庫(kù)文件變的巨大
 
rdbcompression yes
 
#指定本地?cái)?shù)據(jù)庫(kù)文件名
 
dbfilename dump.rdb
 
#指定本地?cái)?shù)據(jù)庫(kù)路徑
 
dir /usr/local/redis/db/
 
#指定是否在每次更新操作后進(jìn)行日志記錄拐纱,Redis在默認(rèn)情況下是異步的把數(shù)據(jù)寫入磁盤,如果不開(kāi)啟哥倔,可能
 
#會(huì)在斷電時(shí)導(dǎo)致一段時(shí)間內(nèi)的數(shù)據(jù)丟失秸架。因?yàn)?redis本身同步數(shù)據(jù)文件是按上面save條件來(lái)同步的,所以有
 
#的數(shù)據(jù)會(huì)在一段時(shí)間內(nèi)只存在于內(nèi)存中
 
appendonly no
 
#指定更新日志條件咆蒿,共有3個(gè)可選值:
 
#no:表示等操作系統(tǒng)進(jìn)行數(shù)據(jù)緩存同步到磁盤(快)
 
#always:表示每次更新操作后手動(dòng)調(diào)用fsync()將數(shù)據(jù)寫到磁盤(慢东抹,安全)
 
#everysec:表示每秒同步一次(折衷,默認(rèn)值)
 
appendfsync everysec

三沃测、使用redis

redis的官網(wǎng)上面有教程缭黔,可以參考學(xué)習(xí)。

啟動(dòng)redis服務(wù)(在redis-4.0.0目錄下):

$ ./bin/redis-server etc/redis.conf

啟動(dòng)redis客戶端:

$ ./bin/redis-cli
圖3

另外芽突,我們也可以查看redis的日志文件log-redis.log试浙,可以看到redis的操作變化。

$ tail -f log-redis.log
圖4

redis的環(huán)境搭建如上所示寞蚌,在如今的服務(wù)器應(yīng)用開(kāi)發(fā)過(guò)程中田巴,用redis做緩存的應(yīng)用還是十分廣泛的,文中不足之處挟秤,還望互相交流學(xué)習(xí)壹哺。

參考資料

redis官網(wǎng)

redis github

初識(shí)redis——mac下搭建redis環(huán)境

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市艘刚,隨后出現(xiàn)的幾起案子管宵,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,627評(píng)論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件箩朴,死亡現(xiàn)場(chǎng)離奇詭異岗喉,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)炸庞,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,180評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門钱床,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人埠居,你說(shuō)我怎么就攤上這事查牌。” “怎么了滥壕?”我有些...
    開(kāi)封第一講書(shū)人閱讀 169,346評(píng)論 0 362
  • 文/不壞的土叔 我叫張陵纸颜,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我绎橘,道長(zhǎng)胁孙,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 60,097評(píng)論 1 300
  • 正文 為了忘掉前任称鳞,我火速辦了婚禮浊洞,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘胡岔。我一直安慰自己,他們只是感情好枷餐,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,100評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布靶瘸。 她就那樣靜靜地躺著,像睡著了一般毛肋。 火紅的嫁衣襯著肌膚如雪怨咪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 52,696評(píng)論 1 312
  • 那天润匙,我揣著相機(jī)與錄音诗眨,去河邊找鬼。 笑死孕讳,一個(gè)胖子當(dāng)著我的面吹牛匠楚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播厂财,決...
    沈念sama閱讀 41,165評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼芋簿,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了璃饱?” 一聲冷哼從身側(cè)響起与斤,我...
    開(kāi)封第一講書(shū)人閱讀 40,108評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后撩穿,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體磷支,經(jīng)...
    沈念sama閱讀 46,646評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,709評(píng)論 3 342
  • 正文 我和宋清朗相戀三年食寡,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了雾狈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,861評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡冻河,死狀恐怖箍邮,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情叨叙,我是刑警寧澤锭弊,帶...
    沈念sama閱讀 36,527評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站擂错,受9級(jí)特大地震影響味滞,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜钮呀,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,196評(píng)論 3 336
  • 文/蒙蒙 一剑鞍、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧爽醋,春花似錦蚁署、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,698評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至遂赠,卻和暖如春久妆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背跷睦。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,804評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工筷弦, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人抑诸。 一個(gè)月前我還...
    沈念sama閱讀 49,287評(píng)論 3 379
  • 正文 我出身青樓烂琴,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親哼鬓。 傳聞我的和親對(duì)象是個(gè)殘疾皇子监右,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,860評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容

  • 1 Redis介紹1.1 什么是NoSql為了解決高并發(fā)健盒、高可擴(kuò)展绒瘦、高可用、大數(shù)據(jù)存儲(chǔ)問(wèn)題而產(chǎn)生的數(shù)據(jù)庫(kù)解決方...
    克魯?shù)吕?/span>閱讀 5,309評(píng)論 0 36
  • 說(shuō)明本次redis集群安裝在rhel6.8 64位機(jī)器上扣癣,redis版本為3.2.8惰帽,redis的gem文件版本為...
    讀或?qū)?/span>閱讀 14,829評(píng)論 3 9
  • 短文~ 誰(shuí)傷害過(guò)你 誰(shuí)擊垮過(guò)你 都不重要 重要的是 誰(shuí)讓你重現(xiàn)笑容 短文~ 不是抱一抱 親一親 改個(gè)情侶網(wǎng)名 換個(gè)...
    優(yōu)客雅集商學(xué)院閱讀 278評(píng)論 0 0
  • 開(kāi)始還要從一部叫《西游記》的小說(shuō)說(shuō)起,明朝的故事寫作者吳承恩父虑,他完成了古典神話故事的高峰该酗。整個(gè)故事中收集了當(dāng)時(shí)民...
    拾封人閱讀 284評(píng)論 0 0
  • 我的高中語(yǔ)文老師樓霖,若是生活在古代士嚎,必是魏晉名士一枚呜魄。不過(guò),他可不在乎自己是不是名士呢莱衩。他嬉笑怒罵爵嗅,率性任真,不...
    掬水聞香閱讀 1,291評(píng)論 2 3