文档章节

Linux下Redis安装、配置及客户端开发

小林攻城狮
 小林攻城狮
发布于 2017/09/07 23:17
字数 916
阅读 40
收藏 0
点赞 0
评论 0

1.安装

可选步骤:安装gcc:yum install gcc-c++

  1. 下载地址:http://redis.cn/download.html
  2. 解压:tar -xzvf redis-4.0.1.tar.gz -C /opt/software
  3. 编译:进入到安装目录(/opt/software/redis-4.0.1),执行make
  4. 安装:进入到src目录(/opt/software/redis-4.0.1/src),执行make install
  5. 安装完成

2.配置

  1. 复制配置文redis.conf件到 /opt/module/redis.conf
  2. 设置后台启动:daemonize yes

3.常用命令

  • 启动:redis-server /opt/module/redis.conf
  • 关闭:redis-cli shutdown(设置密码后关机:./redis-cli -a root shutdown)
  • 连接:redis-cli
  • 设置密码:config set requirepass root(设置连接密码为root)
  • 输入连接密码:auth root
  • 增加记录:set [key] [value]
  • 获取值:get [key]
  • 删除记录:del [key]
  • 所有记录:keys *
  • 所有key总数:dbsize

4.jedis开发

  1. 依赖
<dependency>
	<groupId>redis.clients</groupId>
	<artifactId>jedis</artifactId>
	<version>2.9.0</version>
</dependency>
  1. Java代码
Jedis jedis=new Jedis("192.168.180.129",6379); // 创建客户端 设置IP和端口
jedis.auth("root");
jedis.set("hello", "Hello, redis!");
Set<String> keys = jedis.keys("*");
for(String key : keys) {
	System.out.println("key:"+key+", value:"+jedis.get(key));
}
jedis.close(); // 释放连接资源
  1. 异常处理(连接超时)
  • 更改防火墙设置
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --reload
  • 注释本机绑定设置 在redis配置文件中,注释 bind 127.0.0.1
  • 关闭自我保护
protected-mode yes 更改为 no
  1. redis连接池
JedisPoolConfig config=new JedisPoolConfig(); // 连接池的配置对象
config.setMaxTotal(100); // 设置最大连接数
config.setMaxIdle(10); // 设置最大空闲连接数  
JedisPool jedisPool=new JedisPool(config,"192.168.180.129",6379);
Jedis jedis=null;
try{
           jedis=jedisPool.getResource(); // 获取连接
           jedis.auth("root"); // 设置密码
           jedis.set("hello", "Hello, redis!");
           Set<String> keys = jedis.keys("*");
           for(String key : keys) {
	         System.out.println("key:"+key+", value:"+jedis.get(key));
           }           
}catch(Exception e){
            e.printStackTrace();
}finally{
            if(jedis!=null){
                jedis.close();
            }
            if(jedisPool!=null){
                jedisPool.close();
            }
}

5.数据结构

  1. 键(key)
  • keys *
  • exists key的名字:判断某个key是否存在
  • move key db :当前库就没有了,被移除,相当于剪切操作
  • expire key 秒钟:为给定key设置过期时间
  • ttl key:查看还有多少秒过期,-1表示永不过期,-2表示已过期
  • type key:查看key是什么类型

2.字符串(String)

  • set/get/del/append/strlen
  • incr/decr/incrby/decrby:一定要是数字才能加减
  • getrange/setrange:类似于substring
  • setex(set with expire)键秒值/setnx(set if not exist)
  • mset/mget/msetnx:批量操作
  • getset:先get再set

3.列表(List)

  • lpush/rpush/lrange(l:left:先进后出,r:right:先进先出,lrange list 0 -1)
  • lpop/rpop(l:left:栈顶移出,r:right:栈底移出)
  • lindex:按照索引下标获得元素(从上到下)
  • llen:list长度
  • lrem key 删除N个 value:(lrem list 2 3,删除list中2个3)
  • ltrim key 开始index 结束index:截取指定范围的值后再复制给key
  • rpoplpush 源列表 目的列表:
  • lset key index value
  • linsert key before/after 值1 值2

4.集合(Set)

  • sadd/smembers/sismember
  • scard:获取集合中的元素个数
  • srem key value:删除集合中的元素
  • srandmember key 某个整数:随机出几个数
  • spop key:随机出栈
  • smove key1 key2 key1中某个值:将key1中的某个值赋给key2
  • 数学集合列,sdiff(差集),sinter(交集),sunion(并集)

5.哈希(Hash)

  • hset/ hget/hmset/hmget/hgetall/hdel
  • hlen
  • hexists key 在key中的某个值得key
  • hkeys/hvals
  • hincrby/hincrbyfloat
  • hsetnx

6.有序集合(Sorted set)

  • zadd/zrange(zset key score value,zrange key 0 -1 【withscores】)
  • zrangebyscore key 开始score 结束score(withscores,【(】不包含,limit start len)
  • zrem key 某score下对应的value值,作用是删除元素
  • zcard/zcount key score区间/zrank key values值:作用是获得下标值/zscore key对应值,获得分数
  • zrevrank key values值:作用是逆序获得下标值
  • zrevrange
  • zrevrangebyscore key 结束score 开始score

6.主从复制

  • info replication:查看主从配置信息
  • slaveof [ip_addr] [port]:配置从机的主机
  • slaveof no one:从机变主机

7.哨兵模式

  • sentinel monitor <master-name> <ip> <redis-port> <quorum>
  • redis-sentinel [sentinel配置文件]

© 著作权归作者所有

共有 人打赏支持
小林攻城狮
粉丝 14
博文 13
码字总数 3868
作品 0
程序员
Redis 安装及配置 (转整理)

Redis 安装及配置 (转整理) Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集 合和有序集合。支持在服务器端计算集合...

rootliu ⋅ 05/28 ⋅ 0

centOS6安装redis3.2.9

到官网下载好redis3.2.9的压缩包,并上传到linux服务器中 使用yum命令安装所需依赖 解压redis压缩包 并移动到/usr/local/redis3 进入redis3.2.9 使用make命令编译 安装完成,打开redis.conf配置...

zped ⋅ 06/17 ⋅ 0

非关系型数据库Redis Linux 下安装

下载地址:http://redis.io/download $ wget http://download.redis.io/releases/redis-3.2.9.tar.gz $ tar zxvf redis-3.2.9.tar.gz $ cd redis-3.2.9 $ make make完后 redis-3.2.9目录下会......

方花 ⋅ 04/24 ⋅ 0

Nginx+Tomcat关于Session的管理

前言 Nginx+Tomcat对Session的管理一直有了解,但是一直没有实际操作一遍,本文从最简单的安装启动开始,通过实例的方式循序渐进的介绍了几种管理session的方式。 nginx安装配置 1.安装nginx...

ksfzhaohui ⋅ 05/31 ⋅ 0

redis系列(一)- 安装与启动

redis系列文章: redis系列(一)- 安装与启动 redis系列(二)- 语法与命令 一、Redis介绍 Redis是NoSql的一种,在弄清楚Redis是个什么玩意之前,先了解下NoSql是什么。 1、什么是NoSql NoS...

CSDN_LQR ⋅ 2017/09/27 ⋅ 0

redis系列(一)- 安装与启动

redis系列文章: redis系列(一)- 安装与启动 redis系列(二)- 语法与命令 一、Redis介绍 Redis是NoSql的一种,在弄清楚Redis是个什么玩意之前,先了解下NoSql是什么。 1、什么是NoSql NoS...

CSDN_LQR ⋅ 2017/09/27 ⋅ 0

linux服务器上 oracle instantclient 客户端的安装和配置

linux服务器上 oracle instantclient 客户端的安装和配置 2013年03月07日 18:03:16 阅读数:3437 Oracle Instant client 是oracle提供的简便客户端, 支持多种平台. 从oracle网站下载。 下载地...

rootliu ⋅ 05/16 ⋅ 0

linux上安装redis4.0.9

redis安装从3.0的版本到现在4.0的版本,现在装一个4.0的版本供大家学习使用。 先yum安装gcc yum -y install gcc已加载插件:fastestmirror, langpacksLoading mirror speeds from cached hos...

水墨如丹青 ⋅ 04/28 ⋅ 0

Asp.net mvc + Redis

数据库学习番外篇 神奇的Redis 由于最近呢小猿我找到了自己的女神,所以整个学习计划都被打乱了,本来想着一天看一张《SQLServer宝典》的。没成想,我竟然脱离了单身狗的队伍。 最近准备重新...

有情怀的小猿 ⋅ 04/24 ⋅ 0

Linux系统之Redis扩散病毒继续分析

  *本文原创作者:cgf99,本文属FreeBuf原创奖励计划,未经许可禁止转载      我们安全团队前两次分析了redis病毒和etn挖矿病毒行为,请见“利用Redis未授权访问漏洞的挖矿病毒阴魂不散...

FreeBuf ⋅ 05/22 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

R计算IV

参考文章 #读取文件 rawdata = read.csv("/path/to/csv/file",header=T) colnames(rawdata)[18] <- "y" //重命名因变量y #数据分区 训练集测试集 trainIdx <- sample(nrow(rawdata), round(......

火力全開 ⋅ 4分钟前 ⋅ 0

SQL老司机,在SQL中计算 array & map & json数据

摘要: 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primitive类型的数据。 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primi...

阿里云云栖社区 ⋅ 4分钟前 ⋅ 0

SQL老司机,在SQL中计算 array & map & json数据

摘要: 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primitive类型的数据。 场景 通常,我们处理数据,一列数据类型要么是字符串,要么是数字,这些都是primi...

猫耳m ⋅ 15分钟前 ⋅ 0

关于ireport自定义变量类型为list的时候

自己摸石头过河,我真的应该去趟市中心图书馆,借本真正靠谱的教材 网上的东西,只有0.01%是有用的,还有0.99%是垃圾,剩下的99%是垃圾的复制品。。 哎!~ 问题是这样的,报表带sql,从db中获...

炑炑milina ⋅ 15分钟前 ⋅ 0

Spring mvc ContextLoaderListener 原理解析

对于熟悉Spring MVC功能,首先应从web.xml 开始,在web.xml 文件中我们需要配置一个监听器 ContextLoaderListener,如下。 <!-- 加载spring上下文信息,最主要的功能是解析applicationContex...

轨迹_ ⋅ 16分钟前 ⋅ 0

阿里云发布企业数字化及上云外包平台服务:阿里云众包平台

摘要: 阿里云正式发布旗下众包平台业务(网址:https://zhongbao.aliyun.com/),支持包括:网站定制开发,APP、电商系统等软件开发,商标、商品LOGO、VI、产品包装设计、营销推广、大数据人...

阿里云官方博客 ⋅ 18分钟前 ⋅ 0

Redis安装异常解决办法

官网地址:http://redis.io/ 官网下载地址:http://redis.io/download 1. 下载Redis源码(tar.gz),并上传到Linux 2. 解压缩包:tar zxvf redis-2.8.17.tar.gz 3. 进入解压缩后的文件夹:c...

slagga ⋅ 22分钟前 ⋅ 0

006. 深入JVM学习—年轻代

1. 年轻代图片 年轻代(Young)属于JVM堆内存空间的一个组成部分 所有使用关键字new新实例化的对象一定会在伊甸园区进行保存,而对于存活区保存的一定是已经在伊甸园区存在一段时间并且经过了...

影狼 ⋅ 23分钟前 ⋅ 0

如何成为一个合格的程序员

偶尔的,我会被人问道:如何成为一名优秀的程序员,更或者,如何成为一名程序员。每次人们问起,我都力图给出不同的答案。因此,我的答案是各种各样的。下面就是我认为的成为一名优秀的程序员...

柳猫 ⋅ 24分钟前 ⋅ 0

cups error_log日志暴增

日志内容 File \"/usr/lib/cups/notifier/dbus\" has insecure permissions 解决(未验证适用范围) sudo service cups stopsudo rm /etc/cups/subscriptions.conf*sudo rm -r /var/cac......

一介码夫_Hum ⋅ 28分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部