工做中一直在用 Redis,可是一直沒有進行系統的總結,這個系列的博客將總體的介紹 Redis 的用法。html
Redis:REmote DIctionary Server(遠程字典服務)。c++
是由意大利人Salvatore Sanfilippo(網名:antirez)開發的一款內存高速緩存數據庫。是徹底開源免費的,用C語言編寫的,遵照BSD協議,高性能的(key/value)分佈式內存數據庫,基於內存運行並支持持久化的NoSQL數據庫。redis
具體詳細的概念能夠參考百度百科。數據庫
PS:關於 Redis 的具體概念以及具體應用場景,其實如今說都有些空洞,後面咱們在介紹 Redis 的相關特性的時候會進行詳細介紹。下面咱們來直接進行安裝(因爲主流的都是在Linux服務器上使用Redis,不多有在Windows系統上使用的,因此下面我是以Linux版本的Redis爲例進行安裝)。vim
Redis 的官網是:https://redis.io 這是全英文的,英語不太好的,咱們也能夠查看中文網站:http://www.redis.cn/ 。緩存
在官網中點擊 Check the downloads page 安全
進入下載頁面,下載最新穩定版的 Redis:服務器
咱們採用虛擬機來模擬Linux服務器。虛擬機的安裝教程能夠參考個人這篇博客。分佈式
虛擬機安裝完成以後,咱們啓動Linux系統,將第二步下載的 redis-4.0.9.tar.gz 文件經過工具複製到 /opt 目錄下,而後在經過以下命令進行解壓:工具
1 tar -zxf redis-4.0.9.tar.gz
解壓以後以下圖所示:
因爲在安裝過程當中須要對源碼進行編譯,而編譯依賴 gcc 環境。以下圖所示,則是沒有進行 gcc 的安裝:
下面,咱們經過以下命令進行 gcc 的安裝(yum 方式須要聯網):
1 yum install gcc-c++
安裝完成以後,在輸入 gcc -v 命令,則不會出現上面的提示信息了。
進入到第二步解壓的Redis文件目錄,而後輸入 make 命令進行編譯:
1 cd /opt/redis-4.0.9 2 make
編譯完成以後,仍是在該目錄下輸入 make install 進行構建:
該命令會生成 Redis的5個二進制文件,默認是在 /usr/local/bin 路徑下,可是咱們能夠手動指定生成的文件位置,將 make install 變成:
1 make PREFIX=/usr/local/redis install
完成以後,就會在 /usr/local/redis/bin 目錄下生成以下幾個二進制文件:
①、redis-server:Redis服務器
②、redis-cli:Redis命令行客戶端
③、redis-benchmark:Redis性能測試工具
④、redis-check-aof:AOF文件修復工具
⑤、redis-check-rdb:RDB文件檢查工具
首先,咱們進入 Redis 文件的安裝目錄:
能夠看到該目下有 redis.conf 配置文件,這個文件特別重要,後期的不少配置都是在這裏面進行,爲了防止該文件被破壞,咱們能夠將該文件複製到 /etc/redis 目錄下:
而後經過以下命令便可啓動:
1 /usr/local/redis/bin/redis-server /etc/redis/redis.conf
啓動後出現以下界面:
注意:此種方式啓動 Redis,當咱們關閉命令窗口時,則 redis-server 程序也結束了,這顯然是不友好的,咱們須要將Redis設置爲以守護進程的方式進行啓動。
在 redis.conf 文件中,找到daemonize,將其設置爲yes便可:
仍是以上面的命令啓動 redis-server 服務。
啓動以後能夠經過以下命令查看 Redis 服務是否啓動:
1 ps -ef | grep redis
啓動完成以後,咱們執行第 4 步編譯安裝的 redis-cli 文件,輸入以下命令進入 Redis 客戶端:
1 /usr/local/redis/bin/redis-cli
①、redis-cli shutdown:安全關閉,可是隻適用於沒有配置密碼的場景(通常狀況下不會給Redis設置密碼)。
②、kill -9 pid:強制關閉,可能會形成Redis內存數據丟失。
①、咱們在第 4 步編譯安裝生成了五個二進制文件,每次要執行該文件都要輸入全路徑,很不方便,爲了能在任何路徑下執行該二進制文件,咱們能夠對其進行環境變量的配置。
輸入 vim /etc/profile 命令,將以下內容添加到文件末尾:
接着輸入:wq保存並退出,而後輸入 source /etc/profile 使得配置文件生效便可。
接着咱們即可在任意路徑下啓動Redis服務了:(下面是根目錄下啓動)
②、可能有部分同窗沒有安裝 gcc,直接在Redis解壓目錄下執行make 命令,會發現缺乏編譯器gcc,這時候經過 yum install gcc-c++ 命令安裝gcc,而後接着執行 make 命令,可是發現仍是報錯:
jemalloc/jemalloc.h:沒有那個文件或目錄
緣由:此次報錯是由於第一次執行 make 命令有一些殘存的文件沒有清除乾淨,這時候須要執行 make distclean 命令後,再執行 make 命令便可。