Redis安装及配置主从复制

本文介绍了Redis的安装配置过程,并详细展示了如何设置主从同步,包括配置文件的调整、服务启动与验证步骤。

http://blog.sina.com.cn/s/blog_6577a3b00101bb84.html

Redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、 list(链表)、set(集合)和zset(有序集合)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操 作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的 是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。Redis 是一个高性能的key-value数据库。
redis的出现,很大程度补偿了memcached这类key/value存储的不足,在部分场合可以对关系数据库起到很好的补充作用。它提供了Python,Ruby,Erlang,PHP客户端,使用很方便。(以上内容摘自百度百科)

一:下载redis并安装

  1. [root@server11 ~]# wget http://redis.googlecode.com/files/redis-2.6.4.tar.gz  
  2. [root@server11 ~]# tar -zxvpf redis-2.6.4.tar.gz   
  3. [root@server11 ~]# cd redis-2.6.4  
  4. [root@server11 redis-2.6.4]# make install 

32位操作系统上可能会出现如下报错:
zmalloc.o: In function `zmalloc_used_memory':
/root/redis-2.6.4/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4'
collect2: ld returned 1 exit status
make[1]: *** [redis-server] Error 1
make[1]: Leaving directory `/root/redis-2.6.4/src'
make: *** [all] Error 2

解决方案参考:
https://groups.google.com/forum/?fromgroups#!topic/redis-db/NI_d00he39o


二:编辑redis配置文件,启动redis

  1. [root@server11 ~]# mkdir -p /usr/local/redis2/{bin,etc,var}  
  2. [root@server11 redis-2.6.4]# cp redis.conf /usr/local/redis2/etc/  
  3. [root@server11 redis-2.6.4]# cp /usr/local/bin/redis-* /usr/local/redis2/bin/  
  4.  
  5. [root@server11 ~]# grep -v '^#' /usr/local/redis2/etc/redis.conf |grep -v '^$' //各参数含义在配置文件中有具体的解释和介绍  
  6. daemonize yes   
  7. pidfile /usr/local/redis2/var/redis.pid  
  8. port 6379  
  9. bind 192.168.1.112   
  10. timeout 300   
  11. loglevel notice  
  12. logfile stdout  
  13. databases 16  
  14. save 900 1  
  15. save 300 10  
  16. save 60 10000  
  17. stop-writes-on-bgsave-error yes  
  18. rdbcompression yes  
  19. rdbchecksum yes  
  20. dbfilename dump.rdb  
  21. dir ./  
  22. slave-serve-stale-data yes  
  23. slave-read-only yes  
  24. slave-priority 100  
  25. appendonly no  
  26. appendfsync everysec  
  27. no-appendfsync-on-rewrite no  
  28. auto-aof-rewrite-percentage 100  
  29. auto-aof-rewrite-min-size 64mb  
  30. lua-time-limit 5000  
  31. slowlog-log-slower-than 10000  
  32. slowlog-max-len 128  
  33. hash-max-ziplist-entries 512  
  34. hash-max-ziplist-value 64  
  35. list-max-ziplist-entries 512  
  36. list-max-ziplist-value 64  
  37. set-max-intset-entries 512  
  38. zset-max-ziplist-entries 128  
  39. zset-max-ziplist-value 64  
  40. activerehashing yes  
  41. client-output-buffer-limit normal 0  
  42. client-output-buffer-limit slave 256mb 64mb 60  
  43. client-output-buffer-limit pubsub 32mb 8mb 60  
  44.  
  45. [root@server11 ~]# /usr/local/redis2/bin/redis-server  /usr/local/redis2/etc/redis.conf   
  46. [root@server11 ~]# netstat -ntpl |grep 6379  
  47. tcp             192.168.1.112:6379          0.0.0.0:*                   LISTEN      6044/redis-server    
  48.  
  49. [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112  
  50. redis 192.168.1.112:6379> set number 100  
  51. OK  
  52. redis 192.168.1.112:6379> get number  
  53. "100"  
  54. redis 192.168.1.112:6379> del number  
  55. (integer) 1  
  56. redis 192.168.1.112:6379> get number  
  57. (nil)  
  58. redis 192.168.1.112:6379> quit 

三: redis主从配置,关闭主节点的redis实例,复制/usr/local/redis2/目录至从节点

  1. [root@server11 ~]# ps -ef |grep redis  
  2. root      6044      09:37        00:00:00 /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf  
  3. root      6072 27475  09:44 pts/1    00:00:00 grep redis  
  4. [root@server11 ~]# kill 6044  
  5. [root@server11 ~]# scp -rvp /usr/local/redis2/ root@192.168.1.113:/usr/local/  
  6.  
  7. [root@server12 ~]# grep -v '^#'  /usr/local/redis2/etc/redis.conf  |grep -v '^$' //注意红色字体部分  
  8. daemonize yes   
  9. pidfile /usr/local/redis2/var/redis.pid  
  10. port 6379  
  11. bind 192.168.1.113  
  12. timeout 300   
  13. loglevel notice  
  14. logfile stdout  
  15. databases 16  
  16. save 900 1  
  17. save 300 10  
  18. save 60 10000  
  19. stop-writes-on-bgsave-error yes  
  20. rdbcompression yes  
  21. rdbchecksum yes  
  22. dbfilename salve.rdb  
  23. dir ./  
  24. slaveof 192.168.1.112 6379  
  25. slave-serve-stale-data yes  
  26. slave-read-only yes  
  27. slave-priority 100  
  28. appendonly no  
  29. appendfsync everysec  
  30. no-appendfsync-on-rewrite no  
  31. auto-aof-rewrite-percentage 100  
  32. auto-aof-rewrite-min-size 64mb  
  33. lua-time-limit 5000  
  34. slowlog-log-slower-than 10000  
  35. slowlog-max-len 128  
  36. hash-max-ziplist-entries 512  
  37. hash-max-ziplist-value 64  
  38. list-max-ziplist-entries 512  
  39. list-max-ziplist-value 64  
  40. set-max-intset-entries 512  
  41. zset-max-ziplist-entries 128  
  42. zset-max-ziplist-value 64  
  43. activerehashing yes  
  44. client-output-buffer-limit normal 0  
  45. client-output-buffer-limit slave 256mb 64mb 60  
  46. client-output-buffer-limit pubsub 32mb 8mb 60 

四:分别启动主从节点redis实例并测试

  1. [root@server11 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf   
  2. [root@server12 ~]# /usr/local/redis2/bin/redis-server /usr/local/redis2/etc/redis.conf   
  3.  
  4. [root@server12 ~]# netstat -ntpl |grep 6379  
  5. tcp             192.168.1.113:6379          0.0.0.0:*                   LISTEN      16653/redis-server    
  6.  
  7. [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.112  
  8. redis 192.168.1.112:6379> set number 1  
  9. OK  
  10. redis 192.168.1.112:6379> get number   
  11. "1"  
  12. redis 192.168.1.112:6379> quit  
  13.  
  14. [root@server11 ~]# /usr/local/redis2/bin/redis-cli -h 192.168.1.113  
  15. redis 192.168.1.113:6379> get number  
  16. "1"  
  17. redis 192.168.1.113:6379> del number  
  18. (error) READONLY You can't write against read only slave.  
  19. redis 192.168.1.113:6379> quit 

本课题设计了一种利用Matlab平台开发的植物叶片健康状态识别方案,重点融合了色彩与纹理双重特征以实现对叶片病害的自动化判别。该系统构建了直观的图形操作界面,便于用户提交叶片影像并快速获得分析结论。Matlab作为具备高效数值计算与数据处理能力的工具,在图像分析与模式分类领域应用广泛,本项目正是借助其功能解决农业病害监测的实际问题。 在色彩特征分析方面,叶片影像的颜色分布常与其生理状态密切相关。通常,健康的叶片呈现绿色,而出现黄化、褐变等异常色彩往往指示病害或虫害的发生。Matlab提供了一系列图像处理函数,例如可通过色彩空间转换与直方图统计来量化颜色属性。通过计算各颜色通道的统计参数(如均值、标准差及主成分等),能够提取具有判别力的色彩特征,从而为不同病害类别的区分提供依据。 纹理特征则用于描述叶片表面的微观结构与形态变化,如病斑、皱缩或裂纹等。Matlab中的灰度共生矩阵计算函数可用于提取对比度、均匀性、相关性等纹理指标。此外,局部二值模式与Gabor滤波等方法也能从多尺度刻画纹理细节,进一步增强病害识别的鲁棒性。 系统的人机交互界面基于Matlab的图形用户界面开发环境实现。用户可通过该界面上传待检图像,系统将自动执行图像预处理、特征抽取与分类判断。采用的分类模型包括支持向量机、决策树等机器学习方法,通过对已标注样本的训练,模型能够依据新图像的特征向量预测其所属的病害类别。 此类课题设计有助于深化对Matlab编程、图像处理技术与模式识别原理的理解。通过完整实现从特征提取到分类决策的流程,学生能够将理论知识与实际应用相结合,提升解决复杂工程问题的能力。总体而言,该叶片病害检测系统涵盖了图像分析、特征融合、分类算法及界面开发等多个技术环节,为学习与掌握基于Matlab的智能检测技术提供了综合性实践案例。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值