在macOS環境下安裝Redis
-安裝
下載安裝包 Redis-3.0.7.tar.gz
解壓:tar -zvxf redis-3.0.7.tar.gz 將解壓後的資料夾放到 /usr/local目錄下
編譯測試:接下來在終端中切換到/usr/local/redis目錄下,輸入:sudo make test
編譯安裝:在終端中輸入命令:sudo make install
啟動Redis,輸入命令redis-server
看到這個介面表示我們已經成功的安裝Redis。
二配置
1、在 /usr/local/redis目錄下建立bin,etc,db三個目錄
2、把/usr/local/redis/src目錄下的mkreleasehdr.sh,redis-benchmark, redis-check-dump, redis-cli, redis-server拷貝到bin目錄
3、在etc下,參考原/usr/local/redis目錄下的redis.conf,新建一個redis.conf
修改redis.conf,具體如下:
#修改為守護模式
daemonize yes
#設定程序鎖檔案
pidfile /usr/local/redis/redis.pid
#埠
port 6379
#客戶端超時時間
timeout 300
#日誌級別
loglevel debug
#日誌檔案位置
logfile /usr/local/redis/log-redis.log
#設定資料庫的數量,預設資料庫為16,可以使用SELECT 命令在連線上指定資料庫id
databases 16
##指定在多長時間內,有多少次更新操作,就將資料同步到資料檔案,可以多個條件配合
#save
#Redis預設配置檔案中提供了三個條件:
save 900 1
save 300 10
save 60 10000
#指定儲存至本地資料庫時是否壓縮資料,預設為yes,Redis採用LZF壓縮,如果為了節省CPU時間,
#可以關閉該#選項,但會導致資料庫檔案變的巨大
rdbcompression yes
#指定本地資料庫檔名
dbfilename dump.rdb
#指定本地資料庫路徑
dir /usr/local/redis/db/
#指定是否在每次更新操作後進行日誌記錄,Redis在預設情況下是非同步的把資料寫入磁碟,如果不開啟,可能
#會在斷電時導致一段時間內的資料丟失。因為 redis本身同步資料檔案是按上面save條件來同步的,所以有
#的資料會在一段時間內只存在於記憶體中
appendonly no
#指定更新日誌條件,共有3個可選值:
#no:表示等作業系統進行資料快取同步到磁碟(快)
#always:表示每次更新操作後手動呼叫fsync()將資料寫到磁碟(慢,安全)
#everysec:表示每秒同步一次(折衷,預設值)
appendfsync everysec
4、儲存後,啟動redis:./bin/redis-server etc/redis.conf
5、檢視日誌檔案:tail -f log-redis.log
到這裡,我們已經完成redis安裝和配置。
三其他
1、檢查是否啟動:redis-cli ping
2、redis-cli 跟上命令會將引數傳送到本地redis 6379 的埠,下面來看看基本操作:
3、關閉命令:redis-cli shutdown
四.伺服器配置
上面只是基本的安裝,如果要用到生產環境,得配置一些檔案
1.首先把redis-cli 移動到/usr/local/bin 目錄,方便執行,和JAVA_HOME 類似
預設install 的時候已經有了
2.建立你存放配置檔案和資料檔案的目錄
sudomkdir /etc/redissudo mkdir /var/redis
3.複製初始化指令碼到/etc/init.d 目錄,建議預設只有這個埠,作開機啟動
$ sudocp utils/redis_init_script /etc/init.d/redis_6379
4.進入指令碼,確保你的REDISPORT 是你正在使用的
sudovi /etc/init.d/redis_6379
5.複製redis.conf ,和指令碼保持一致
sudocp redis.conf /etc/redis/6379.conf
6.建立一個存放工作資料的目錄
sudomkdir /var/redis/6379
同時可以對redis.conf配置其他屬性
# 來源:http://www.cnblogs.com/shanyou/archive/2012/01/28/2330451.htmldaemonize:是否以後臺daemon方式執行pidfile:pid檔案位置port:監聽的埠號timeout:請求超時時間loglevel:log資訊級別logfile:log檔案位置databases:開啟資料庫的數量save **:儲存快照的頻率,第一個*表示多長時間,第三個*表示執行多少次寫操作。在一定時間內執行一定數量的寫操作時,自動儲存快照。可設定多個條件。rdbcompression:是否使用壓縮dbfilename:資料快照檔名(只是檔名,不包括目錄)dir:資料快照的儲存目錄(這個是目錄)appendonly:是否開啟appendonlylog,開啟的話每次寫操作會記一條log,這會提高資料抗風險能力,但影響效率。appendfsync:appendonlylog如何同步到磁碟(三個選項,分別是每次寫都強制呼叫fsync、每秒啟用一次fsync、不呼叫fsync等待系統自己同步)
7.最後將指令碼設定預設啟動
sudoupdate-rc.d redis_6379 defaults
8.現在可以執行指令碼了
/etc/init.d/redis_6379start
五.MAC 版本差異
一個不幸的事實是:mac 上是沒有init.d 目錄的,mac啟動指令碼是 以.plist 結尾了,
好吧,我在 ~/Library/LaunchAgents 目錄下自己建立一個 redis.plist
參考:http://www.js2node.com/redis-io/install-redis-io-2-4-17-on-mac-osx-as-service
$ sudovi redis.plist
然後輸入以下內容
Labelio.redis.redis-serverProgramArguments/usr/local/bin/redis-server/usr/local/etc/redis.confRunAtLoad
執行命令
$ sudo launchctlload/Library/LaunchDaemons/io.redis.redis-server.plist
開啟關閉:
$ sudo launchctlstartio.redis.redis-server$ sudo launchctl stop io.redis.redis-server
六.brew 進行安裝
下面我用brew來操作,關於brew 的安裝我看的:http://my.oschina.NET/liygheart/blog/284668
安裝好了,然後 參考:https://gist.github.com/tonypujals/9631143
$brew info redis
會有提示,然後輸入
$ln -nfs /usr/local/opt/redis/*.plist ~/Library/LaunchAgents
和
$load ~/Library/LaunchAgents/homebrew.mxcl.redis.plist
小結
1.基本都是是文件上來的基礎,主要因為系統問題,導致安裝遇到點小麻煩記錄一下,也分享一下
2.如果有錯,請指點 非常感謝。
關於redis 選型的文章推薦:
優化的推薦:
更多命令操作參考:
基本學習
順便給個安裝其他東西的地址
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。網際網路+時代,時刻要保持學習,攜手千鋒PHP,Dream It Possible。