redis在linux中安裝配置
環境:ubuntu 16.04.05 + redis-3.2.9
基本安裝
1.下載redis-3.3.9包,解壓
2.進入redis-3.2.9目錄內,執行terminal,執行sudo make,編譯後執行sudo make install
3.安裝完成後,在terminal中執行redis-server啟動redis服務
4.客戶端中的terminal中執行redis-cli連線redis伺服器,輸入ping測試連線,返回pong成功
自定義安裝
下載redis並解壓 ,進入redis-3.2.9目錄內sudo make進行編譯
編譯時如果系統什麼都沒裝就需要安裝依賴。可能缺少的有jemalloc,lua, hiredis, linenoise。只要進入redis-3.2.9目錄,找到並進入deps目錄, 檢視是否存在,如果沒有就在redis-3.2.9目錄下使用命令
sudo make jemalloc
sudo make lua
sudo make hiredis
sudo make linenoise
把這些依賴安裝就可以了。
make編譯成功之後就可以看到提示
LINK redis-server
INSTALL redis-sentinel
CC redis-cli.o
LINK redis-cli
CC redis-benchmark.o
LINK redis-benchmark
INSTALL redis-check-rdb
INSTALL redis-check-aof
Hint: It's a good idea to run 'make test' ;)
make[1]: Leaving directory '/home/ubuntu/program/redis/redis-3.2.9/src'
從最後一行可以看出它提示可以去/home/ubuntu/Documents/program/redis-3.2.9/src目錄查看了,進去後會有很多東西。
這樣就編譯好了
預設的安裝方式是直接在 redis-3.2.9目錄內sudo make install
這樣安裝會安裝到/usr/local/bin目錄下,這樣的好處是就不需要寫path路徑,不過不好跟其他如 hadoop, spark等安裝軟體集中管理,可以選擇用自定義安裝的方式
自定義安裝如下
進入/home/ubuntu/Documents/program/redis-3.2.9/src目錄,輸入命令 sudo make PREFIX=/home/ubuntu/program/redis/redis-3.2.9 install 就會安裝到指定的安裝目錄了
會有提示
Hint: It’s a good idea to run ‘make test’ ;)
INSTALL install
INSTALL install
INSTALL install
INSTALL install
INSTALL install
進入/home/ubuntu/program/redis-3.2.9目錄,有個bin資料夾,再進,裡面有這幾個檔案就行了。
redis-benchmark redis-check-rdb redis-sentinel
redis-check-aof redis-cli redis-server
還要再配置環境變數
sudo nano /etc/environment
使之生效
source /etc/environment
這時候可以在任意目錄下啟動 redis-server了
不過這是預設啟動,使用的是預設的配置檔案,並不是想要的。
在編譯的資料夾內除了src目錄有一個utils目錄,進入裡面
執行 sudo ./install_server.sh
會有提示, 最後顯示如下
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /home/ubuntu/Documents/program/redis-3.2.9/bin/redis-server
Cli Executable : /home/ubuntu/Documents/program/redis-3.2.9/bin/redis-cli
前四個點回車確定就可以了,如果第五個的時候是空選項,沒發現有東西選,只有一個[],只好自己輸入安裝地址
/home/ubuntu/program/redis/redis-3.2.9/bin/redis-server
最後確定會提示如下
Copied /tmp/6379.conf => /etc/init.d/redis_6379
Installing service…
Success!
Starting Redis server…
Installation successful!
Selected config:
Port : 6379
Config file : /etc/redis/6379.conf
Log file : /var/log/redis_6379.log
Data dir : /var/lib/redis/6379
Executable : /usr/local/bin/redis-server
Cli Executable : /usr/local/bin/redis-cli
Is this ok? Then press ENTER to go on or Ctrl-C to abort.
Copied /tmp/6379.conf => /etc/init.d/redis_6379
從Copied /tmp/6379.conf => /etc/init.d/redis_6379這句話我們知道它把生成的檔案拷貝到了這裡。
進去/etc/init.d
檢視發現有個redis_6379
把名字改成redisd (d是後臺服務的意思。)
這服務的配置檔案在/etc/redis下有個6379.conf,可以檢視裡面有埠,資料庫數量等等。
裡面有一行
daemonize yes
說明是後臺服務了
程序獲得的ID號,這ID號要儲存
pidfile /var/run/redis_6379.pid
預設資料庫數量
databases 16
這是上面預設的目錄
dir /var/lib/redis/6379
然後啟動服務
service redisd start
發現啟動失敗
提示
Failed to start redisd.service: Unit redisd.service not found.
說沒有這個服務,要用systemctl daemon-reload命令
輸入sudo systemctl daemon-reload,再輸入service redisd start就可以了。
檢視端口占用情況
ss -tanl
顯示127.0.0.1:6379,說明啟動成功了。
再啟動
redis-cli
在任意位置這命令沒啟動成功,用source發現不行,後面重啟居然成功了。
之後就可以使用redis-server啟動服務了
測試連線
本地連線測試
127.0.0.1:6379> ping
PONG表明連線成功
遠端連結 redis-cli -h host -p port -a password
關閉服務 redis-cli -p 埠號 shutdown