Linux安裝Redis步驟和make遇到的坑


Linux安裝Redis服務步驟

1.獲取redis資源

​​​​​​​cd /usr/local

wget https://mirrors.huaweicloud.com/redis/redis-6.0.10.tar.gz

2.解壓

tar xzvf redis-6.0.10.tar.gz

3.安裝

cd redis-6.0.10
 
make
 
cd src
 
make install PREFIX=/usr/local/redis

4.移動配置文件到安裝目錄下

 cd ../
 
 mkdir /usr/local/redis/etc
 
 mv redis.conf /usr/local/redis/etc

5.redis配置調整:vim redis.conf

配置redis為后台啟動:將daemonize no 改成daemonize yes
配置遠程訪問:將protected-mode yes 改為 no

1、關閉protected-mode模式,此時外部網絡可以直接訪問

2、開啟protected-mode保護模式,需配置bind ip或者設置訪問密碼

設置密碼:# requirepass foobared 修改成 : requirepass 123456

6.將redis加入開機啟動:vim /etc/rc.local

添加命令:/usr/local/redis/bin/redis-server /usr/local/redis-6.0.10/etc/redis.conf

7.啟動redis服務

/usr/local/redis/bin/redis-server /usr/local/redis-6.0.1/etc/redis.conf

停止redis服務:pkill redis

卸載redis

rm -rf /usr/local/redis-6.0.1 //刪除安裝目錄
 
rm -rf /usr/bin/redis-* //刪除所有redis相關命令腳本
 
rm -rf /root/download/redis-6.0.1 //刪除redis解壓文件夾

8.redis安裝過程中make遇到的問題

安裝gcc:yum install gcc

再次執行:make install PREFIX=/usr/local/redis

如果仍然報錯:

make[1]: *** [server.o] 錯誤 1
make[1]: 離開目錄“/usr/redis-6.0.1/src”
make: *** [all] 錯誤 2
server.c:2402:11: 錯誤:‘struct redisServer’沒有名為‘assert_file’的成員
     server.assert_file = "<no file>";
           ^
server.c:2403:11: 錯誤:‘struct redisServer’沒有名為‘assert_line’的成員
     server.assert_line = 0;
           ^
server.c:2404:11: 錯誤:‘struct redisServer’沒有名為‘bug_report_start’的成員
     server.bug_report_start = 0;
           ^
server.c:2405:11: 錯誤:‘struct redisServer’沒有名為‘watchdog_period’的成員
     server.watchdog_period = 0;
           ^
server.c:2411:11: 錯誤:‘struct redisServer’沒有名為‘lua_always_replicate_commands’的成員
     server.lua_always_replicate_commands = 1;

解決辦法:

[root@localhost redis-6.0.1]# gcc -v                             # 查看gcc版本
[root@localhost redis-6.0.1]# yum -y install centos-release-scl  # 升級到9.1版本
[root@localhost redis-6.0.1]# yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
[root@localhost redis-6.0.1]# scl enable devtoolset-9 bash
以上為臨時啟用,如果要長期使用gcc 9.1的話:
[root@localhost redis-6.0.1]# echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile

再次執行:

make install PREFIX=/usr/local/redis

安裝成功會出現:Hint: It's a good idea to run 'make test'

執行make test 進行測試,如果出現如下錯誤:

[root@localhost redis-6.0.1]# make test
cd src && make test
make[1]: 進入目錄“/usr/redis-6.0.1/src”
    CC Makefile.dep
make[1]: 離開目錄“/usr/redis-6.0.1/src”
make[1]: 進入目錄“/usr/redis-6.0.1/src”
You need tcl 8.5 or newer in order to run the Redis test
make[1]: *** [test] 錯誤 1
make[1]: 離開目錄“/usr/redis-6.0.1/src”

解決方法:

[root@localhost redis-6.0.1]# yum install tcl
[root@localhost redis-6.0.1]# make test

執行make test成功,安裝成功!!!

轉自 冰顏


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM