Centos7安裝Redis4.0.8


今天安裝了CentOS7 1708 在安裝redis時報錯  make[1]: *** [adlist.o] 錯誤 127

 

因為Redis是C實現的,需要gcc來進行編譯,所以原因是系統未安裝gcc,按順序執行:
yum install cpp
yum install binutils
yum install glibc
yum install glibc-kernheaders
yum install glibc-common
yum install glibc-devel
yum install gcc
yum install make
因為gcc依賴很多,都執行一下,以防萬一
然后執行安裝redis OK:

一、軟件安裝

1、進入官網下載Redis4.0.8

https://redis.io/download

官網也附有安裝教程。

 

shell>wget http://download.redis.io/releases/redis-4.0.2.tar.gz

 

1.1 方式一

去 Redis 官網下載最新穩定版,上傳到 Linux:https://redis.io/download

1.2 方式二

使用 wget 命令獲取

wget http://download.redis.io/releases/redis-4.0.8.tar.gz

2、解壓壓縮文件

shell>tar -zxvf redis-4.0.8.tar.gz

 

3、進入redis-4.0.8目錄 使用make命令編譯redis

shell>cd   /edis-4.0.8

shell>make

等幾分鍾,過程可能比較慢,正常情況下是不會報錯的,如下圖:

4、在redis-4.0.8目錄中 使用makePREFIX=/usr/local/redis/redis-4.0.8 install命令安裝redis到/usr/local/redis/redis-4.0.8中

shell>make PREFIX=/usr/local/redis/redis-4.0.8 install

 

二、修改配置

前台啟動:./redis-server 

后台啟動:復制redis.conf (在/redis-4.0.8源碼下,就是解壓的那個文件夾)到redis的安裝目錄(就是你那個bin里),修改redis.conf中的 daemonize yes ,執行下邊的命令就啟動了,下一條是關閉命令

shell>cd /usr/local/webtools/redis-4.0.8

shell>cp redis.conf /usr/local/redis/redis-4.0.8/bin/

shell>cd /usr/local/redis/redis-4.0.8/bin/

 

shell>用vi工具打開redis-4.0.8目錄下的redis.conf配置文件:

vi redis.config

1、.設置redis可以一直在后台運行,以守護進程方式運行,即關閉SSH工具程序也在運行。 
daemonize no 改成 daemonize yes

2、默認的話redis-server啟動時會在當前目錄生成或讀取dump.rdb,可以指定生成的路徑 
dir ./ 改成 dir /usr/local/redis/

3、指定是否在每次更新操作后進行日志記錄,Redis在默認情況下是異步的把數據寫入磁盤,如果不開啟,可能會在斷電時導致一段時間內的數據丟失。 因為 redis本身同步數據文件是按上面save條件來同步的,所以有的數據會在一段時間內只存在於內存中。默認為no 
appendonly no 改成 appendonly yes

4、.默認redis是只能內網127.0.0.0訪問,如果想外網訪問需要修改綁定的地址 
bind 127.0.0.1 改成 bind 0.0.0.0 (別忘了在阿里雲后台給6379增加安全組配置)
改成任何IP都能訪問的,當然這里也可以綁定單獨的IP

5、修改保護模式,不修改保護模式也是只能內網訪問的 
protected-mode yes 改成 protected-mode no

6.設置密碼 
將”#requirepass foobared“ 取掉注釋改成 requirepass 123

保存文件

第四、啟動測試

啟動redis服務

shell>./redis-server  ./redis.conf

驗證服務是否啟動:

shell>ps aux|grep redis

結果如下: 

說明啟動成功了。 
關閉啟動的窗口,重新打開個命令終端,然后測試是否在后台運行,結果和上面一樣,說明不論SSH是否關閉,redis服務都會在后台以守護進程方式運行。

用redis-cli測試內網

運行命令,連接客戶端:

shell>./redis-cli -a xxx

備注:redis-cli -h 實例連接地址 -a 密碼

用java測試外網(阿里雲防火牆規則添加端口6379)

創建一個java項目,導入jedis包,新new一個RedisConnectTest.java類,代碼如下:

package test.service;

import redis.clients.jedis.Jedis; 

public class RedisConnectTest { 

             /**

              * @author liu

              * @version 創建時間:2018年3月17日22:13:50

              * @ClassName 類名稱

              * @Description 類描述

              */

             public static void main(String[]args) {

        try {

            String host = "www.iotworld.vip";//控制台顯示訪問IP地址

            int port = xxx;

            Jedis jedis = new Jedis(host,port);

            // 鑒權信息

            jedis.auth("xxxxx.");//password

            String key = "redis_test";

            String value = "Hello-aliyun-redis";

            // select db 默認為0,共有16個

            jedis.select(1);

            // set一個key

            jedis.set(key, value);

            System.out.println("SetKey " + key + " Value: " + value);

            // get 設置進去的key

            String getvalue = jedis.get(key);

            System.out.println("GetKey " + key + " ReturnValue: " + getvalue);

            jedis.quit();

            jedis.close();

        } catch (Exception e) {

            e.printStackTrace();

       }

 

 

    }
}

運行結果如下:

Set Key redis_test Value: Hello-aliyun-redis

Get Key redis_test ReturnValue: Hello-aliyun-redis

說明連接並存儲成功了,並且取數據也成功了。 


免責聲明!

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



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