在linux上安装redis,在window上使用redisManager远程连接

1. 安装准备:

安装包:redis-4.0.14.tar.gz

下载地址:https://redis.io/download

reids命令参考:http://doc.redisfans.com

2. 安装:

上传,解压,提取和编译redis

[[email protected] software]# tar -zxvf redis-4.0.14.tar.gz -C /opt/module/

[[email protected] redis-4.0.14]# make        //编译

[[email protected] redis-4.0.14]# make install PREFIX=/opt/module/redis      //安装到指定的路径下

 在linux上安装redis,在window上使用redisManager远程连接

 可能出现的问题:

1.make之前出现该错误

make[1]: *** [adlist.o] 错误 127

原因:因为Redis是C实现的,需要gcc来进行编译,所以原因是系统未安装gcc

解决办法:yun install gcc-c++ -y

2. make时出现该错误:

zmalloc.h:50:31: 错误:jemalloc/jemalloc.h:没有那个文件或目录

原因:关于分配器allocator, 如果有MALLOC  这个 环境变量, 会有用这个环境变量的 去建立Redis。而且libc 并不是默认的 分配器, 默认的是 jemalloc, 因为 jemalloc 被证明 有更少的 fragmentation problems 比libc。但是如果你又没有jemalloc 而只有 libc 当然 make 出错。 所以加这么一个参数。

解决办法:make MALLOC=libc

 3. make install时出现该错误:

make: *** 没有规则可以创建目标“install”。 停止。

原因:没有在正确的路径下执行

解决:在解压后的文件路径下,make之后在执行该命令

3. 测试:

在安装成功之后进入/opt/module/redis目录下,只有一个bin目录进入(redis.conf开始并没有)

在linux上安装redis,在window上使用redisManager远程连接

开启redis服务端(默认前台启动)

./redis-server

在linux上安装redis,在window上使用redisManager远程连接

这样一直处于监听状态,ctrl+c就退出了,下面我们改为启动守护进程。

后台启动

将解压后的redis中的redis.conf复制一份到安装目录

[[email protected] redis-4.0.14]# cp redis.conf  /opt/module/redis/bin/

完成之后,回到/opt/module/redis/bin目录下(也就是之前说的redis.conf)

在linux上安装redis,在window上使用redisManager远程连接

进入redis.conf,修改下面的配置

在linux上安装redis,在window上使用redisManager远程连接

然后再次启动redis服务端,就会启动了守护进程,在后台运行。

./redis-server  redis.conf      //需要手动指定加载的配置文件,并查看是否成功

在linux上安装redis,在window上使用redisManager远程连接

在linux上安装redis,在window上使用redisManager远程连接

启动客户端测试:

./redis.cli

127.0.0.1:6379> ping
PONG
127.0.0.1:6379> set name hello
OK
127.0.0.1:6379> get name
"hello"

4. redisDesktopManager连接问题

软件下载地址:https://redisdesktop.com/download

安装完成之后,在window上使用redisDesktopManager连接在Linux上安装好的redis,但是就是连接不上,问题可能有下列几种:

  1. 不允许公网连接
  2. 防火墙禁止了redis端口
  3. Redis.conf 下 bind127.0.0.1要注释掉
  4. Redis.conf 下 requirepass foobared配置密码

问题1解决方案:

设置redis允许远程登录

为了redis的安全性,redis默认是不允许公网连接的。

在linux上安装redis,在window上使用redisManager远程连接

问题2解决方案:

  1. 1vim /etc/sysconfig/iptables
  2. 在这个文件中仿照22端口,将redis需要的6379端口填写进去:-A INPUT -p tcp-m state --state NEW -m tcp --dport 6379 -j ACCEPT(注意:这段代码需要放置在22端口的下面,否则无法成功)在linux上安装redis,在window上使用redisManager远程连接
  3. 重启防火墙: serviceiptables restart

问题3解决方案:

在linux上安装redis,在window上使用redisManager远程连接

问题4解决方案:

在linux上安装redis,在window上使用redisManager远程连接

连接成功:

在linux上安装redis,在window上使用redisManager远程连接

5  JedisAPI

导入下面的依赖

<dependency>
    <groupId>redis.clients</groupId>
    <artifactId>jedis</artifactId>
    <version>2.8.2</version>
</dependency>
Jedis jedis = new Jedis("192.168.1.104",6379); //创建jedis对象,传入连接的主机名以及端口便可直接调用api操作
//set增、改
//String result = jedis.set("address", "朝阳");
String result = jedis.set("address", "海淀");
//get查
String result1 = jedis.get("address");
//del删
String result2 = jedis.del("address");
System.out.println(result);
System.out.println(result1);
System.out.println(result2);