1、启动Redis服务
./redis-server& ./redis.conf
2、查看Redis状态
ps -ef |grep redis
3、进入客户端查看并修改主机地址
查看主机地址
config get bind
修改主机地址(一定要和虚拟机的ip地址一样才可以,用ifconfig可以查看虚拟机的ip)
config set bind "192.168.x.xxx"
4、关闭防火墙,或者给6379端口开放防火墙权限
firewall-cmd --query-port=6379/tcp
查看防火墙某个端口是否开放(我这里已经开放过了,打开命令在下方)
firewall-cmd --zone=public --add-port=6379/tcp --permanent
开放6379端口
注意:开放端口后要重启防火墙生效!!!
systemctl restart firewalld
重启防火墙
5、关闭保护模式,否则外部ip无法连接
config get protected-mode
查看保护模式状态
config set protected-mode no
关闭保护模式
6、重新连接Redis服务
./redis-cli -h 192.168.x.xxx -p 6379
这里的地址就是上面自己设定的ip地址
7、测试外部连接Redis服务
第一步:打开telnet服务
第二步:在windows下运行cmd命令打开命令框并输入telnet 192.168.x.xxx 6379
出现下图的命令框代表连接成功!
8、使用Jedis测试
第一步:在maven中引入依赖
<dependency>
<groupId>redis.clients</groupId>
<artifactId>jedis</artifactId>
<version>3.7.0</version>
</dependency>
第二步:在单元测试类中测试
package cn.seim;
import static org.junit.Assert.assertTrue;
import org.junit.Test;
import redis.clients.jedis.Jedis;
import java.util.Iterator;
import java.util.Set;
/**
* Unit test for simple App.
*/
public class AppTest
{
/**
* Rigorous Test :-)
*/
@Test
public void TestConn()
{
Jedis jedis=new Jedis("192.168.0.101", 6379);
jedis.flushDB();
System.out.println(jedis.ping());
jedis.set("hello", "world");
Set<String> set = jedis.keys("*");
Iterator<String> it=set.iterator();
while(it.hasNext()){
String k1= it.next();
System.out.println(k1+"的值为:"+jedis.get(k1));
}
jedis.close();
}
}
运行成功结果: