redis
代码界的小姑娘
这个作者很懒,什么都没留下…
展开
-
redis安装
redis一个开源的,C语言编写的,支持网络交互的,可基于内存也可持久化的k-v数据库1:centos安装redis下载:wget http://labfile.oss.aliyuncs.com/files0422/redis-2.8.9.tar.gz解压:tar -xzvf redis-2.8.9.tar.gz进入:cd redis-2.8.9编译:make安装:make install2原创 2017-10-28 13:27:54 · 127 阅读 · 0 评论 -
redis持久化配置
redis持久化1:RDB(redis database)--快照2: AOF(append only file)--日志RDB介绍1:RDB是在指定的时间间隔内将内存中的数据集快照写入磁盘, 也就是行话将的Snapshot快照, 它恢复时是将快照文件直接读到内存里。2:Redis会单独创(fork)一个子进程进行持久化, 会先将数据写入到一个临时文件中, 待持久化过程...原创 2018-08-11 16:29:25 · 657 阅读 · 0 评论 -
golang操作redis出现的错误解决
1:failed redigo: unexpected type for String, got type int64 解决:操作incr,incrby,decr,decyby时,不需要加上redis.String,因为操作类型是int64类型,加上redis.String,类型不相符合2:cannot range over unino (type interface {}) 解决:获取的值类型原创 2017-11-25 21:30:21 · 10635 阅读 · 0 评论 -
golang-redis之sorted set类型简单操作
1:安装redigogo get github.com/garyburd/redigo/redis2:引用redigoimport ( "github.com/garyburd/redigo/redis")3:连接Redisc, err := redis.Dial("tcp", "192.168.2.225:6379")if err != nil { fmt.Println("c原创 2017-11-25 21:22:40 · 10240 阅读 · 1 评论 -
golang-redis之hash类型简单操作
1:安装redigogo get github.com/garyburd/redigo/redis2:import redigoimport ( "github.com/garyburd/redigo/redis")3:连接redisc, err := redis.Dial("tcp", "192.168.2.225:6379")if err != nil { fmt.Print原创 2017-11-25 20:53:24 · 20770 阅读 · 0 评论 -
golang-redis之set类型简单操作
1:安装redigogo get github.com/garyburd/redigo/redis2:连接redisimport ( "github.com/garyburd/redigo/redis")c, err := redis.Dial("tcp", "192.168.2.225:6379")if err != nil { fmt.Println("connect to原创 2017-11-25 20:39:17 · 8066 阅读 · 0 评论 -
golang-redis之list类型简单操作
1:安装redigogo get github.com/garyburd/redigo/redis2:连接redis(通过ip端口)import ( "github.com/garyburd/redigo/redis")c, err := redis.Dial("tcp", "192.168.2.225:6379")if err != nil { fmt.Println("co原创 2017-11-25 18:40:41 · 12331 阅读 · 0 评论 -
redis-zset类型简单操作
1:zadd 1.1:语法zadd key score1 member1 .....scoreN memberN1.2:说明向有序结合添加(更新)一个或多个成员,返回添加的成员的数量1)key存在,member不存在,添加member成员,member存在,更新member的score2)key不存在,生成新的名称为key的sorted set1.3:示例 2:zcard 2.1:语法zc原创 2017-11-25 18:08:23 · 2186 阅读 · 0 评论 -
redis-list类型简单操作
1:lpush/rpush/llen 1.1:语法lpush key value1 value2 ...valueNrpush key value value2 ... valueNllen key1.2:说明lpush:向名称为key的list的左侧添加元素value1 .... valueNrpush:向名称为key的list的右侧添加元素为value1 ... valueNllen原创 2017-11-25 16:42:27 · 462 阅读 · 0 评论 -
redis-hash类型简单操作
1:hset/hget 1.1:语法hset key field valuehget key field1.2:说明hset:像名称为key的hash中添加元素field1)key存在,field不存在,生成field-value,添加成功,field存在,修改field的value为新的value2)key不存在,生成新的key-value(filed-value)hget:获取名称为k原创 2017-11-25 14:55:52 · 2929 阅读 · 0 评论 -
redis-set类型操作
1:sadd\smember 1.1:语法sadd key member1 member2...smember key1.2:说明sadd向名称为key的set中添加元素member,smember:返回集合中的所有元素1)key存在,添加成功,smember返回key集合中所有元素2)key不存在,生成key-value,添加成功1.3:示例 2:srem 2.1:语法srem key原创 2017-11-23 23:12:50 · 2607 阅读 · 1 评论 -
redis-string类型操作
1:set命令 1.1:语法set key value1.2:说明给数据库中名称为key的string赋予值value(1):key值存在的话,则替换key对应的value(2):如果key只不存在,则生成新的key-value1.3:示例 2:get命令 2.1:语法get key (获取key的值)2.2:说明获取key对应的value1)key存在,返回value2)key不存原创 2017-11-21 23:35:12 · 425 阅读 · 0 评论 -
golang-redis之string类型简单操作
1:安装redigogo get github.com/garyburd/redigo/redis2:连接redis(通过ip端口)c, err := redis.Dial("tcp", "192.168.2.225:6379")if err != nil { fmt.Println("connect to redis err", err.Error()) return}def原创 2017-11-20 22:50:36 · 3460 阅读 · 0 评论 -
redis事务
由于redis是单线程来处理所有client的请求,所以redis只能保证一个redis-client发起的事务中的命令可以连续的执行,而中间不会插入其他redis-client的命令。 一般情况下redis在接受到一个client发来的命令后会立即处理并 返回处理结果,但是当一个client在一个连接中发出multi命令有,这个连接会进入一个事务上下文,该连接后续的命令并不是立即执行,而是先放原创 2017-10-28 16:33:42 · 165 阅读 · 0 评论 -
redis持久化
redis持久化的两种方法(RDB、AOF) 1:RDB(Redis DataBase) 简而言之,就是在不同的时间点,将redis存储的数据生成快照并存储到磁盘等介质上 redis在进行数据持久化的过程中,会先将数据写入到一个临时文件中,待持久化过程都结束了,才会用这个临时文件替换上次持久化好的文件2:AOF(Append Only File) 就是将redis执行过原创 2017-10-28 15:46:53 · 192 阅读 · 0 评论 -
redis入门基础
1:redis数据结构 value支持5种数据结构1.strings(字符串)2.lists(列表)3.sets(集合)4.sorted sets(有序集合)5.hashes(哈希)key:1.长度尽量不能超过1024字节,降低查找效率也浪费内存2.也不要太短,可读性差2:数据结构详细说明strings(字符串) redis的INCR、INCRBY、DECR、DECRBY具有原子特性原创 2017-10-28 14:26:11 · 142 阅读 · 0 评论 -
redis主从复制
Redis是通过slave of ip port来配置主从复制读写分离的,每次slave与master断开之后,都需要重新连接,从新执行上述配置命令,或者直接将配置写入配置文件case1:一仆二主如图所示,6380,6381都是slave,master是6379 1):一旦转成slave,master所有的数据都将被复制 2):slave写失败,只能读 ...原创 2018-08-11 17:49:10 · 173 阅读 · 0 评论