redis 入门:常用配置介绍 和常用命令
1.what?
redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。
- 应用场景:
2.How
- linux安装 :
https://www.cnblogs.com/renzhicai/p/7773080.html
- windows安装:
https://blog.csdn.net/u012343297/article/details/78839063
3.常用命令
- linux启动的命令:
[root@itheima bin]# ./redis-server
前端启动的关闭:
强制关闭:Ctrl+c
正常关闭:[root@itheima bin]# ./redis-cli shutdown
连接远程redis:
显示当前redis服务器的角色信息 : info replication
daemonize yes
(redis采用的是单进程多线程的模式。当redis.conf中选项daemonize设置成yes时,代表开启守护进程模式。在该模式下,redis会在后台运行,并将进程pid号写入至redis.conf选项pidfile设置的文件中,此时redis将一直运行,除非手动kill该进程。但当daemonize选项设置成no时,当前界面将进入redis的命令行界面,exit强制退出或者关闭连接工具(putty,xshell等)都会导致redis进程退出。服务端开发的大部分应用都是采用后台运行的模式)
- 常用客户端cli交互命令:
info 查看当前redis服务器信息
select db-index 通过索引选择数据库,默认连接的数据库所有是0,默认数据库数是16个。返回1表示成功,0失败
keys * 查看当前db所有key
keys a* 搜索a开头的key
move key db-index 将key从当前数据库移动到指定数据库。返回1成功。0 如果key不存在,或者已经在指定数据库中
flushdb 删除当前数据库中所有key,此方法不会失败。慎用
flushall 删除所有数据库中的所有key,此方法不会失败。更加慎用
incr k1 : 主键k1 中数值自加1 DEL key 该命令用于在 key 存在时删除 key。
EXPIRE key seconds 为给定 key 设置过期时间,以秒计。
TTL key 以秒为单位,返回给定 key 的剩余生存时间(TTL, time to live)。 若永久返回-1,不存在此可以返回-2
client list 查看当前连接的客户端
关于开启事务:
1.multi 开启队列操作,
2.敲入事务业务操作,
3.exec 正常执行事务,/discard 放弃事务
(注意:全体exec 执行时,运行错误不会,其他命令不会取消,所以是部分支持事物.)
watch 监控:
悲观锁, (比如mysql于行锁和表锁,读锁,写锁).
乐观锁: 用版本号控制,提交前对比version. 提交版本号必须大于等于数据版本号才能更新
(一般用乐观锁)
并发和一致性的对立
watch k1
相当于给k1加了乐观锁.执行事务前加watch,
unwatch 取消所有监控
CAS (Check And Set)
关于rdb
改rdb文件名称
dbfilename dump.rdb (dump179.rdb 一般用ip名)
立刻备份: save
异步备份: bgsave(备份同时继续工作,适合大规模数据库,)
禁用: save ""
SNAPSHOTTING快照用系统默认配置
一分钟 1w次,五分钟 10次,十分钟1次
关于主从复制
复制主机数据:(在从机中输入)
slaveof 127.0.0.1 6379 (主机ip)
(注:开启主从复制模式,从头数据到之后数据都进入从机)redis的发布和订阅:进程见得一种消息通信模式:发布者(pub)和订阅者(sub)接受消息
slaveof no one 使当前数据库停止与其他数据库同步,转成主数据库(反客为主)
关于主从复制的哨兵模式
是什么?反客为主的自动版,能够后台监控主机是否故障,如果故障了根据投票数自动将从库转换为主库.
sentinel.conf
redis-sentinel /myredis/sentinel.conf 启动哨兵redis
在springboot中使用
参考:

浙公网安备 33010602011771号