redis一直都是调用别人部署好的,近日想要自己从灵开始搭建一次。其中也生出不少枝节,与各位猿友共同分享,望少走些弯路!

1.提前准备的资源

redis安装包(本人上传到csdn不需积分即可下载):

http://download.csdn.net/detail/u012580998/9818185

2.将安装包解压到 /opt/redis下(目录自定义,但是请容易记一些),然后进入到该目录

3.编译redis

执行命令如下:

(编译)

make

(进入src)

  cd src

(安装,以及安装路径)

  make install PREFIX=/usr/local/redis

4.将配置文件移动到/usr/local/redis目录

5.启动redis服务

执行

/usr/local/redis/bin/redis-server /usr/local/redis/redis-conf

6.修改配置文件

编辑redis.conf

将daemonize的值改为yes  (这是后台运行)

    bind 127.0.0.1    (只能本机访问)

    改为

    bind 0.0.0.0    (非本机亦可访问(或者可以绑定指定IP))

7.注意事项,个人安装测试过程中遇到问题以及解决方案

    7.1编译过程中make 报错

解决办法:yum install tcl  (也就是yum安装tcl)

7.2  远程访问失败

解决方案便是第六步,将bind 127.0.0.1   改成了 bind 0.0.0.0

否则redis只能本地访问

7.3 redis安全模式访问

测试程序报错为:

DENIED Redis is running protected mode because protected mode is enabled,
     no bind address was specified, no authentication password is requested to clients.
     In this mode connections are only accepted from the loopback interface.

需要给redis配置密码

启动redis客户端

执行  redis-cli指令

然后执行

config set requirepass 123456(密码)

8.附上测试代码(请新建Java项目,并引入jedis的jar包(百度一下就可以找到了))

import redis.clients.jedis.Jedis;import redis.clients.jedis.exceptions.JedisConnectionException;

public class RedisTest {  

    private Jedis jedis = null;
private String key1 = "key1";
private String key2 = "key2"; public RedisTest() {
jedis = new Jedis("127.0.0.1"); // redis的IP地址
jedis.auth("redis"); // redis密码
} public static void main(String[] args) {
RedisTest redisTest = new RedisTest();
redisTest.isReachable(); // redis是否访问成功 返回结果true/false
redisTest.testData(); // 数据测试
redisTest.delData(); // 删除数据
redisTest.testExpire();
} public boolean isReachable() {
boolean isReached = true;
try {
jedis.connect();
jedis.ping();
// jedis.quit();
} catch (JedisConnectionException e) {
e.printStackTrace();
isReached = false;
} System.out
.println("The current Redis Server is Reachable:" + isReached);
return isReached;
} public void testData() {
jedis.set("key1", "data1");
jedis.set("maxm", "MMM");
System.out.println(jedis.get("maxm"));
System.out.println("Check status of data existing:"
+ jedis.exists(key1));
System.out.println("Get Data key1:" + jedis.get("key1")); long s = jedis.sadd(key2, "data2");
System.out.println("Add key2 Data:" + jedis.scard(key2)
+ " with status " + s);
} public void delData() {
long count = jedis.del(key1); System.out.println("Get Data Key1 after it is deleted:"
+ jedis.get(key1));
} public void testExpire() {
long count = jedis.expire(key2, 5); try {
Thread.currentThread().sleep(6000);
} catch (InterruptedException e) {
e.printStackTrace();
} if (jedis.exists(key2)) {
System.out
.println("Get Key2 in Expire Action:" + jedis.scard(key2));
} else {
System.out.println("Key2 is expired with value:"
+ jedis.scard(key2));
}
} }

 

redis的安装和测试的更多相关文章

  1. redis cluster安装部署(测试环境)

    redis 应用于web前端,做缓存和数据存取的速度是挺可观的,最近看了一些资料,手痒了,就弄了一个测试环境,两台方案,试用一下. ##Redis 集群部署## 一,方案调研: 参考博客: http: ...

  2. win10 64位redis的安装和测试

    步骤记录: 1.官网没有redis64位的版本,在git开源项目上找到64位的可用版本 https://www.cnblogs.com/tommy-huang/p/6093813.html 这里有下载 ...

  3. Redis、Redis+sentinel安装(Ubuntu 14.04下Redis安装及简单测试)

    Ubuntu下Redis安装两种安装方式: 1.apt-get方式 步骤: 以root权限登录,切换到/usr目录下. 接下来输入命令,apt-get install redis-server,如图: ...

  4. redis安装、测试&集群的搭建&踩过的坑

    1 redis的安装 1.1   安装redis 版本说明 本教程使用redis3.0版本.3.0版本主要增加了redis集群功能. 安装的前提条件: 需要安装gcc:yum install gcc- ...

  5. Redis学习之路(003)- hiredis安装及测试

    一. hiredis下载地址及C API  github下载:https://github.com/redis/hiredis 安装脚本: #!/bin/zsh git clone https://g ...

  6. windows x64安装与测试redis

    说明:安装与测试的系统为windows X64: 1.下载redis:https://github.com/microsoftarchive/redis/releases 2.解压Redis-x64- ...

  7. 【Redis】Redis基础 - Redis安装启动测试

    Redis基本 - 安装 文章目录 Redis基本 - 安装 Linux下安装Redis Docker 方式 Github 源码编译方式 直接安装方式 Windows下Redis安装 记录 - Red ...

  8. Redis(一)简介及安装、测试

    一.Redis简介: 关于关系型数据库和nosql数据库 关系型数据库是基于关系表的数据库,最终会将数据持久化到磁盘上,而nosql数据 库是基于特殊的结构,并将数据存储到内存的数据库.从性能上而言, ...

  9. redis的安装配置

    主要讲下redis的安装配置,以及以服务的方式启动redis 1.下载最新版本的redis-3.0.7  到http://redis.io/download中下载最新版的redis-3.0.7 下载后 ...

随机推荐

  1. 自学html5要花多长时间

    自学html5培训课程对于没有基础的那么就需要从头开始学,主要包括以下几方面 1. PC端网页制作基础,包括css,html 2. Javascript.jquery 主要是写一些动效 3. 学习UI ...

  2. 算法模板——sap网络最大流 2(非递归+邻接表)

    实现功能:同最大流 1 这里面主要是把前面的邻接矩阵改成了邻接表,相比之下速度大大提高——本人实测,当M=1000000 N=10000 时,暂且不考虑邻接矩阵会不会MLE,新的程序速度快了很多倍(我 ...

  3. 1029: [JSOI2007]建筑抢修

    1029: [JSOI2007]建筑抢修 Time Limit: 4 Sec  Memory Limit: 162 MBSubmit: 2382  Solved: 1033[Submit][Statu ...

  4. ubuntu Error mounting /dev/sda6 at /media/xxx...

    问题原因:可能是windows没有完全关机,详细请看我的另一博文: http://www.cnblogs.com/ediszhao/p/3794459.html 为了学习linux我装了双系统,因为我 ...

  5. How to set up Tensorflow inception-v3 model on Windows

    There is Inception-v3 model python implementation on GitHub at: https://github.com/tensorflow/models ...

  6. MVC支付宝PC网站接口对接

    PC网站支付接口,请参考支付宝官方文档:https://b.alipay.com/signing/productSet.htm?navKey=all 1.需要提供签约账号.商户密钥 2.代码实现: 支 ...

  7. 嵌入式ARM开发环境搭建

    1. 安装,配置,启动FTP服务 安装FTP: sudo apt-get install vsftpd 修改vsftpd的配置文件/etc/vsftpd.conf,将下面两行的'#'去掉#local_ ...

  8. PHP生成随机水印图片

    基于PHP的GD图形库,自己生成一张图片.仅限初识GD库,实例学习. 一.需求 网站的布局用到了类似慕课网课程列表的风格,每一个课程是一个banner图,图下面是标题加简介.因为课程的数量较大没有为所 ...

  9. SLF4J 的几种实际应用模式--之三:JCL-Over-SLF4J+SLF4J

    我们前面已经讲过了 SLF4J 的两种用法:SLF4J+Log4J  和 SLF4J+Logback,那是在比较理想的情况下,所用组件只使用了 SLF4J 这一种统一日志框架的时候.可是 JCL 一直 ...

  10. Swift应用案例 2.闭包入门到精通

      本文主要介绍Swift的闭包的使用并与OC的Block做比较.学习Swift是绕不过闭包的,因为无论是全局函数还是嵌套函数都是闭包的一种,本文主要介绍闭包表达式. 1.闭包表达式的使用 // 1. ...