阿里云Centos7安装Redis4.0.8

一、软件安装

1、进入官网下载Redis4.0.8

https://redis.io/download

官网也附有安装教程。

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

2、解压压缩文件

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

3、在“/usr/local”目录下创建redis目录:

shell>cd ../

shell>mkdir redis

4、进入redis-4.0.8目录 使用make命令编译redis

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

shell>make

等几分钟,过程可能比较慢,正常情况下是不会报错的,如下图:

5、在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

说明连接并存储成功了,并且取数据也成功了。

备注:这里只是简单说明Redis在阿里云Centos7上的安装流程,后期将会独立一个Redis标签单独对Redis的功能及源码深入剖析。

 

猜你喜欢

转载自blog.csdn.net/qq_21508727/article/details/79596423