Redis基本知識(shí)、安裝、部署、配置筆記
基本知識(shí)
1、Redis的數(shù)據(jù)類型:
字符串、列表(lists)、集合(sets)、有序集合(sorts sets)、哈希表(hashs)
2、Redis和memcache相比的獨(dú)特之處:
(1)redis可以用來做存儲(chǔ)(storge)、而memcache是來做緩存(cache)。這個(gè)特點(diǎn)主要是因?yàn)槠溆小俺志没惫δ?br />
(2)存儲(chǔ)的數(shù)據(jù)有“結(jié)構(gòu)”,對(duì)于memcache來說,存儲(chǔ)的數(shù)據(jù),只有一種類型——“字符串”,而redis則可以存儲(chǔ)字符串、鏈表、集合、有序集合、哈序結(jié)構(gòu)
3、持久化的兩種方式:
Redis將數(shù)據(jù)存儲(chǔ)于內(nèi)存中,或被配置為使用虛擬內(nèi)存。
實(shí)現(xiàn)數(shù)據(jù)持久化的兩種方式:
(1)使用截圖的方式,將內(nèi)存中的數(shù)據(jù)不斷寫入磁盤(性能高,但可能會(huì)引起一定程度的數(shù)據(jù)丟失)
(2)使用類似mysql的方式,記錄每次更新的日志
4、Redis的主從同步:對(duì)提高讀取性能非常有益
5、Redis服務(wù)端的默認(rèn)端口是6379
接下來我們來安裝Redis
1、先到Redis官網(wǎng)(redis.io)下載redis安裝包

2、將其下載到我的/lamp目錄下
3、解壓并進(jìn)入其目錄

4、編譯源程序
make
cd src
make install PREFIX=/usr/local/redis
5、將配置文件移動(dòng)到redis目錄

6、啟動(dòng)redis服務(wù)

7、默認(rèn)情況,Redis不是在后臺(tái)運(yùn)行,我們需要把redis放在后臺(tái)運(yùn)行
vim /usr/local/redis/etc/redis.conf
將daemonize的值改為yes

8、客戶端連接
/usr/local/redis/bin/redis-cli

9、停止redis實(shí)例
/usr/local/redis/bin/redis-cli shutdown
或者
pkill redis-server
10、讓redis開機(jī)自啟
vim /etc/rc.local
加入
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis-conf
11、接下來我們看看/usr/local/redis/bin目錄下的幾個(gè)文件時(shí)什么
redis-benchmark:redis性能測(cè)試工具
redis-check-aof:檢查aof日志的工具
redis-check-dump:檢查rdb日志的工具
redis-cli:連接用的客戶端
redis-server:redis服務(wù)進(jìn)程
Redis的配置
daemonize:如需要在后臺(tái)運(yùn)行,把該項(xiàng)的值改為yes
pdifile:把pid文件放在/var/run/redis.pid,可以配置到其他地址
bind:指定redis只接收來自該IP的請(qǐng)求,如果不設(shè)置,那么將處理所有請(qǐng)求,在生產(chǎn)環(huán)節(jié)中最好設(shè)置該項(xiàng)
port:監(jiān)聽端口,默認(rèn)為6379
timeout:設(shè)置客戶端連接時(shí)的超時(shí)時(shí)間,單位為秒
loglevel:等級(jí)分為4級(jí),debug,revbose,notice和warning。生產(chǎn)環(huán)境下一般開啟notice
logfile:配置log文件地址,默認(rèn)使用標(biāo)準(zhǔn)輸出,即打印在命令行終端的端口上
database:設(shè)置數(shù)據(jù)庫的個(gè)數(shù),默認(rèn)使用的數(shù)據(jù)庫是0
save:設(shè)置redis進(jìn)行數(shù)據(jù)庫鏡像的頻率
rdbcompression:在進(jìn)行鏡像備份時(shí),是否進(jìn)行壓縮
dbfilename:鏡像備份文件的文件名
dir:數(shù)據(jù)庫鏡像備份的文件放置的路徑
slaveof:設(shè)置該數(shù)據(jù)庫為其他數(shù)據(jù)庫的從數(shù)據(jù)庫
masterauth:當(dāng)主數(shù)據(jù)庫連接需要密碼驗(yàn)證時(shí),在這里設(shè)定
requirepass:設(shè)置客戶端連接后進(jìn)行任何其他指定前需要使用的密碼
maxclients:限制同時(shí)連接的客戶端數(shù)量
maxmemory:設(shè)置redis能夠使用的最大內(nèi)存
appendonly:開啟appendonly模式后,redis會(huì)把每一次所接收到的寫操作都追加到appendonly.aof文件中,當(dāng)redis重新啟動(dòng)時(shí),會(huì)從該文件恢復(fù)出之前的狀態(tài)
appendfsync:設(shè)置appendonly.aof文件進(jìn)行同步的頻率
vm_enabled:是否開啟虛擬內(nèi)存支持
vm_swap_file:設(shè)置虛擬內(nèi)存的交換文件的路徑
vm_max_momery:設(shè)置開啟虛擬內(nèi)存后,redis將使用的最大物理內(nèi)存的大小,默認(rèn)為0
vm_page_size:設(shè)置虛擬內(nèi)存頁的大小
vm_pages:設(shè)置交換文件的總的page數(shù)量
vm_max_thrrads:設(shè)置vm IO同時(shí)使用的線程數(shù)量
相關(guān)文章
簡(jiǎn)介JavaScript中Math.LOG10E屬性的使用
這篇文章主要介紹了JavaScript中Math.LOG10E屬性的使用,是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-06-06
JavaScript中日期的相關(guān)操作方法總結(jié)
這篇文章主要介紹了JavaScript中日期的相關(guān)操作方法總結(jié),是JS入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-10-10
JavaScript Math.ceil() 函數(shù)使用介紹
Math.ceil(x) -- 返回大于等于數(shù)字參數(shù)的最小整數(shù)(取整函數(shù)),對(duì)數(shù)字進(jìn)行上舍入,下面有個(gè)不錯(cuò)的示例,感興趣的朋友可以參考下2013-12-12
javascript Window及document對(duì)象詳細(xì)整理
注:頁面上元素name屬性以及JavaScript引用的名稱必須一致包括大小寫否則會(huì)提示你1個(gè)錯(cuò)誤信息 引用的元素為空或者不是對(duì)象2011-01-01
JavaScript實(shí)現(xiàn)表單驗(yàn)證
這篇文章介紹了JavaScript實(shí)現(xiàn)表單驗(yàn)證的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-05-05
JavaScript DOM學(xué)習(xí)第八章 表單錯(cuò)誤提示
這一章詳細(xì)介紹的表單錯(cuò)誤提示的方法比那種大多數(shù)使用警告框的方法要好的多。2010-02-02
javascript中FOREACH數(shù)組方法使用示例
本文給大家介紹的是Array.prototype.forEach()的使用方法示例,希望對(duì)大家學(xué)習(xí)javascript能夠有所幫助。2016-03-03

