目錄
2、 進入解壓後的文件夾使用make命令編譯時報錯gcc:未找到命令錯誤,或者顯示CC adlist.o /bin/sh: cc: 未找到命令
一、問題總結
1、通過wget下載的rpm文件解壓時顯示不是壓縮類型文件(gzip:stdin:not in gzip format),試了多種方法沒有解決,最後直接從redis官網上下載,可能是通過wget下載的源文件就有問題
2、 進入解壓後的文件夾使用make命令編譯時報錯gcc:未找到命令錯誤,或者顯示CC adlist.o /bin/sh: cc: 未找到命令
[root@bogon redis-3.2.0]# make
cd src && make all
make[1]: 進入目錄“/usr/local/redis-3.2.0/src”
CC adlist.o
/bin/sh: cc: 未找到命令
make[1]: *** [adlist.o] 錯誤 127
make[1]: 離開目錄“/usr/local/redis-3.2.0/src”
make: *** [all] 錯誤 2
因爲redis使用c語言編寫所以需要gcc工具,運行以下命令(可能會比較慢,匹配了好多次鏡像才成功):
yum -y install gcc
yum -y install gcc-c++
再次執行make命令又出現錯誤:
make[1]: 進入目錄“/usr/local/redis-3.2.0/src”
CC adlist.o
In file included from adlist.c:34:0:
zmalloc.h:50:31: 致命錯誤:jemalloc/jemalloc.h:沒有那個文件或目錄
#include <jemalloc/jemalloc.h> ^
編譯中斷。
make[1]: *** [adlist.o] 錯誤 1
make[1]: 離開目錄“/usr/local/redis-3.2.0/src”
make: *** [all] 錯誤 2
原因:解決“jemalloc/jemalloc.h:沒有那個文件或目錄“問題,在進行編譯(因爲上次編譯失敗,有殘留的文件)
解決方案:運行make distclean
[root@bogon redis-3.2.0]# make distclean
make命令執行完之後,執行make install PREFIX=/usr/local/redis-3.0.7
後面的PREFIX=/usr/local/redis-3.0.7是指定安裝目錄,可以自行更改,但一般是放在/usr/local下面
二、安裝步驟
1、下載
wget http://download.redis.io/releases/redis-3.0.7.tar.gz
2、解壓
tar -zxvf redis-3.0.7.tar.gz
3、編譯與安裝
cd redis-3.0.7
make
make install PREFIX=/usr/local/redis-3.0.7
4、啓動服務器
cd /usr/local/redis-3.0.7
bin/redis-server
# 直接啓動爲前臺啓動,控制檯會被佔用
# 可以使用Ctrl+C強制關閉服務
5、配置後臺啓動
此文件是從解壓後的redis複製到安裝好的redis中來的
將源碼中redis.conf拷貝到/usr/local/redis目錄
cp /root/redis-3.0.7/redis.conf ./
vim redis.conf
vi命令中“/daemonize” 查找 daemonize,小寫n查找下一個,大寫N查找上一個
並將"daemonize no"行改爲"daemonize yes"
允許遠程連接,註釋#bind 127.0.0.1(protected-mode no)
修改連接密碼,requirepass
重啓redis
#先查詢到redis的pid後kill掉,然後重新啓動
[root@localhost bin]# ps -ef|grep redis
root 18844 1 0 12:12 ? 00:00:18 ./redis-server *:6379
[root@localhost bin]# kill 18844
[root@localhost bin]# ./redis-server redis.conf
6、後臺啓動命令
bin/redis-server redis.conf
7、查看狀態
[root@localhost redis-3.0.7]ps -ef | grep redis
root 10452 0.0 0.1 137444 7460 ? Ssl 11:27 0:00 bin/redis-server *:6379
root 10456 0.0 0.0 103244 836 pts/0 S+ 11:28 0:00 grep redis
8、測試環境
bin/redis-cli
redis> set foo bar
OK
redis> get foo
"bar"
9、關閉服務器
# 推薦使用
bin/redis-cli shutdown
# 不推薦使用
kill -9 10452