设为首页 收藏本站
查看: 836|回复: 0

[经验分享] Nosql 之 Redis数据库

[复制链接]

尚未签到

发表于 2018-11-2 12:57:01 | 显示全部楼层 |阅读模式
  1、redis基础入门
  2、redis应用进阶
  一、概念
  redis是一个开源的键-值,即是缓存又是存储,支持持久化,借助sentinel实现一定意义的高可用,数据结构服务器:string,list,hash,set ,sorted set,bitmap,hyperloglog
  nosql 四种流派:
  key-value 键值型 :Memcached  redis
  documemtation文档型 :Mongodb
  columu family列式型 : Hbase
  graph图像型:Neo4j

二、安装redis
  下载地址  www.redis.io  redis-3.0.2-1.el6.remi.x86_64.rpm
  rpm -ivh redis-3.0.2-1.el6.remi.x86_64.rpm
  rpm -ql   查看安装文件
  cp /etc/redis.conf{,.bak}
  vim /etc/redis.conf      配置文件介绍
  daemonize no       守护进程
  port 6379
  tcp-backlog 511     #tcp 请求的等待队列
  bind 127.0.0.1  默认监听的地址,需要指定自己的ip地址
  如 bind 127.0.0.1 192.168.100.6
  timeout 0   客户端链接超时时间,0表示禁用此功能,不会超时
  loglevel notice  日志级别
  logfile /var/log/redis/redis.log  日志文件
  databases 16   redis支持(0-15个库),select 0 选择0库,分布式不支持多库形式
  -----------------快照-------------------------------------------
  save  seconds  changes
  save 900 1             900秒内有1次记录发送变化,记录快照
  save 300 10
  save 60 10000
  save “ ”   表示禁止持久化功能,只做缓存,需注释以上三行
  ----------------主从--------------------------------
  slaveof   masterip  masterport
  salveof   主ip         主端口,如果启动这项就是从服务器,否则主
  只有这项启用了,下面有关主从的参数才生效。
  -----------------SECYRUTTY安全-----------------------------------------
  requirepass  foobared
  -------------------LIMITS 限制--------------------------------------------------
  maxclients 10000   最大并发客户端数量
  maxmemory   最大使用内存空间容量
  -------------------APPEND ONLY MODE-------------------------------
  appendonly no   默认是禁用的,相当于二进制日志

  三、常用命令
  #redis-cli -h  查看帮助
  #redis-cli -h 192.168.100.6   远程链接
  redis>help @STRING    查看有哪些命令,来自哪个版本
  redis>help  set
  redis>set key value     如set  name   lisan
  redis>get key
  "lisan"
  四、应用进阶
  redis如何实现认证功能,在配置文件中vi etc/redis.conf
  requirepass    123456        #123456为密码,重启生效
  #redis-cli -h 192.168.100.6

  select 0 ,  提示认证信息
  AUTH 123456
  OK ,认证通过

  

清空数据库:  FLUSHDB:清空当前数据库   FLUSHALL:清空所有库
  

  
redis持久化:RDB和AOF,用那种取决于我们的目的
  RDB: snapshot,二进制格式,按事先定制的策略,周期性的将数据保存至磁盘,数据文件默认为dump.rdb , save命令就是定制保存周期的。客户端也可以显示使用save或bgsave命令启动快照保存机制。
  save,同步,在主线程中保存快照,此时会阻塞所有客户端请求,
  bgsave,异步,主进程复制出来一个子进程,由子进程来保存数据,不影响业务使用
  AOF: Append Only File ,记录每一次写操作至指定的文件尾部实现持久化,当redis重启时,可通过重新执行文件中的命令在内存中重建数据库,这样这个文件会越来越大,BGREWRITEAOF:AOF文件重写,不会读取正在使用的AOF文件,而通过将内存中的数据以命令的方式保存到临时文件中,完成之后替换原来的AOF文件。
  

  AOF重写过程:
  1、redis主进程通过fork创建子进程
  2、子进程根据redis内存中的数据创建数据库重建命令序列于临时文件中
  3、父进程继承client的请求,并会吧这些请求的写操作继续追加至原来的AOF文件,额外地,这些新的写请求还会被放置于一个缓冲队列中
  4、子进程重新完成,会通知父进程;父进程把缓冲中的命令写到临时文件中
  5、父进程用用临时文件替换老的aof
  

  参数:
  appendonly no
  appendfilename  appendonly.aof
  

  appendfsync  always        每次收到写命令就写入磁盘的aof文件,影响性能
  appendfsync  everysec    每秒执行一次写入磁盘aof,推荐的操作
  appendfsync  no
  

  注意,持久本身不能取代备份,还应该制定备份策略,对redis数据库定期进行备份。
  RDB与AOF同时启用:
  1、BGSAVE和BGREWRITEAOF不会同时执行
  2、在Redis服务器启动用于恢复数据时,会优先使用AOF
  

  复制特点:
  1、一个master可以有多个slave
  2、支持链式复制
  3、master以非阻塞方式同步数据至salve
  复制过程:
  1、启动salve后,从库发送同步请求同步主库的数据,主库启动后台子进程将数据快照保存在本地数据文件中,并把数据文件发送给salve
  2、salve收到数据文件后保存到本地,并加载到内存中,完成数据同步



运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-629867-1-1.html 上篇帖子: PHP多进程开发与Redis结合实践 下篇帖子: redis-cluster集群搭建
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表