源码编译安装:
1.到src目录下:
2.make PREFIX=/data/APP/redis install
3.复制redis.cnf到安装bin目录同级
4.修改配置文件daemonize yes(后台启动)
5.启动时候依赖下配置文件 (./redis-server ../redis.conf)
6.设置redis开机启动 systemctl enable redis.service(centos7)
NoSQL:
1.not only sql2.泛指非关系型数据库
为什么NoSQL:
1.high performance:高并发读写
2.huge storage:海量数据的高效率存储和访问
3.high scalability && high availability:高可扩展性和高可用性
NoSQL数据库的四大分类:
1:键值(key-value)对存储
2.列存储
3.文档数据库
4.图形数据库
NoSQL的特点:
1.易扩展
2.灵活的数据模型
3.大量数据库,高性能
4.高可用
redis的应用场景:
1.缓存
2.任务队列
3.网站访问统计
4.数据过期处理
5.分布式集群架构中的session分离
拷贝redis.conf到安装的bin同级目录下
redis目录结构
1.bin:
1)benchmark:性能测试工具
2)check-aof:aof文件修复工具
3)check-dump:rdb文件检查工具
4)cli:命令行的客户端
5)server:启动命令
redis默认启动为前端启动,需要修改redis.conf改为后台启动方式:daemonize no改为yes
启动时候需要依赖配置文件
默认端口6379
正常停止:
./redis-cli shutdown
./redis-cli中set/get塞入/得到redis键值对数据,
添加:set name_test test
获取:get name_test
删除:del name_test
获取所有key;keys *
jedis是redis连接的基本操作
jedis是redis官方首选的java客户端开发包
key定义的注意点:
1)不要过长(1024),消耗内存,便于识别
2)不要过短,便于识别
3)统一的命名规范
redis支持的键值数据类型:
1.字符串类型(String)常用
1)二进制安全的,存入和获取的数据相同
2)value最多可以容纳数据长度是512M
3)常用命令:赋值(set),取值(get),删除(del),修改(getset),数值增减(incr/decr),扩展命令(incrby/decrby/append)
2.列表类型(list)
1)ArrList使用数组方式
2)LinkArrayList双向链表方式
3)常用命令:两端添加(lpush/rpush),查看(lrange),两端弹出(lpop/rpop),查看列表,获取列表元素个数(llen),扩展命令(lpushx/rpushx/lrem/lset/linsert/rpoplpush)
3.有序集合类型(sorted set)
4.散列类型(hash)常用
1)String key和String value的map容器
2)每个hash可以存储4294967295个键值对
3)常用命令:赋值(hset/hmset),取值(hget/hmget/hgetall),删除(hdel),增加数字(hincrby/hdecrby),自学命令(hexists/hgetall/hlen/hkeys/hvalues)
5.字符串集合类型(set)