redis 是一個開源的使用ANSI C語言編寫、支持網絡、可基于內存亦可持久化的日志型、Key-Value數據庫,并提供多種語言的API。由于其是一個基于內存的數據庫,所以,其讀寫速度比普通的磁盤存儲數據庫要快的多,所以,通常我們用它作為緩存數據庫。
誠然,redis 是一個口碑不錯的軟件,但其安裝配置也是比較繁瑣的,作為初學者,搭建 redis 環境絕對是會抓狂的!本文是筆者的一次安裝手記。
一、安裝 redis
快速安裝步驟大綱:
- 下載 redis 安裝包
- 拷貝壓縮包到 【/usr/local 】目錄;
- 解壓縮
sudo tar -zxf redis-X.X.X.tar.gz
; - 進入解壓縮后的目錄
cd redis-X.X.X
; - 編譯測試
sudo make test
- 編譯安裝
sudo make install
- 配置一,建立工作目錄 【/usr/local/redis】(接下來的幾步操作均以該目錄為根目錄)
- 配置二,進入工作目錄,建立子目錄:bin、etc、db,命令
sudo mkdir /usr/local/redis/目錄名
- 配置三,把上面解壓的 【redis-X.X.X/src】目錄下的mkreleasehdr.sh、redis-benchmark、 redis-check-dump、 redis-cli、 redis-server 共 5 個文件 拷貝到【/usr/local/redis/bin】目錄下
- 配置四,在 【etc】目錄下建立 redis.conf 文件;
- 啟動服務
bin/redis-server
1.1 下載 redis 安裝包
前往 redis 官網,點擊下圖中的鏈接,或者前往其 Download 頁面下載對應的版本。瀏覽器會下載一個壓縮包到本地。
1.2 解壓安裝包
進入 【/usr/local】 目錄,然后,拷貝上面的壓縮包到該目錄。
/usr 目錄操作需要 root 權限,本文全程會不斷的要求輸入登錄密碼!
使用終端進入該目錄,執行下面的命令解壓文件:
$ cd /usr/local
$ sudo tar -zxf redis-3.2.9.tar.gz
1.3 編譯測試
進入上面解壓的目錄,執行下面的命令開始進行編譯測試,注意,該命令執行后,終端會輸出一大堆測試結果,整個過程大概會持續幾十秒,耐心等待。
$ sudo make test
1.4 編譯安裝
編譯測試完成后,繼續執行命令進行安裝:
$ sudo make install
1.5 建立工作目錄
終端進入【/usr/local/】命目錄,并建立一個 redis 目錄。繼續進入該工作目錄,繼續新建三個子目錄,分別為:bin、etc 和 db。
$ cd /usr/local
$ sudo mkdir redis
$ cd redis
$ sudo mkdir bin
$ sudo mkdir etc
$ sudo mkdir db
1.6 拷貝命令文件
在上面 1.2 步驟解壓的目錄下,找到 src 目錄,拷貝 mkreleasehdr.sh、redis-benchmark、 redis-check-dump、 redis-cli、 redis-server 共 5 個文件 拷貝到【/usr/local/redis/bin】目錄下。
即 【/usr/local/redis-X.X.X/src/】-> 【/usr/local/redis/bin】
我下載的 3.2.9 沒有 redis-check-dump 文件,所以,我直接把類似的命令文件都拷貝過去了!
1.7 建立配置文件
在 【/usr/local/redis/etc】 目錄下,參考原 redis-X.X.X 目錄下的 redis.conf,新建一個 redis.conf,并編輯其內容。
至于配置文件的內容解釋,可參考:redis.conf配置詳細解析 作者:沉沒的Atlantis
1.8 啟動服務 和 進入命令模式
啟動服務:
$ /usr/local/redis/bin/redis-server
進入命令模式:
$ /usr/local/redis/bin/redis-cli
# 執行后即可進入命令模式
127.0.0.1:6379> |
# 測試:
127.0.0.1:6379> SET foo bar
二、安裝 Redis Desktop Manager
redis 本身是一個進程軟件,是不具有可視化界面的,調試學習期間,每次都使用 redis-cli 操作命令行還是很麻煩的。 Redis Desktop Manager是一個快速、簡單、支持跨平臺的 redis 桌面管理工具,基于 Qt5 開發,支持通過 SSH Tunnel 鏈接。
但 Mac 版的客戶端又要訂閱、又要注冊、還要支付 $1.99/月 的款項,對于想快速嘗鮮的開發者來說,太麻煩了!所以我找了篇文章,參考著安裝了一下:mac安裝Redis可視化工具-Redis Desktop Manager 作者:SiriusTK
好吧,按照文章介紹的安裝一下吧:
2.1 安裝 brew cask
Mac 系統是自帶 ruby 環境的,所以,使用 ruby 安裝 brew cask,終端輸入:
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null ; brew install caskroom/cask/brew-cask 2> /dev/null
如果需要輸入密碼,根據提示操作即可!
2.2 安裝 Redis Desktop Manager
安裝完 brew cask 之后,繼續執行下面的命令:
$ brew cask install rdm
2.3 安裝完成
如果你還沒有安裝并啟動 redis 環境,打開 rdm 是無法連接到數據庫的!
三、常見問題
3.1 MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.
翻譯:Redis被配置為保存數據庫快照,但它目前不能持久化到硬盤。用來修改集合數據的命令不能用。請查看Redis日志的詳細錯誤信息。
原因:強制關閉Redis快照導致不能持久化。
解決方案:運行 config set stop-writes-on-bgsave-error no
命令,關閉配置項 stop-writes-on-bgsave-error 解決該問題。
$ /usr/local/redis/bin/redis-cli
127.0.0.1:6379> config set stop-writes-on-bgsave-error no
OK
127.0.0.1:6379> lpush myColour "red"
(integer) 1
127.0.0.1:6379>
參考:(error) MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. 作者:FreeBird