Redis 环境的安装与测试

jopen 11年前

     Redis 是 key-value 的NOSQL、独爱那些小而热的数据、典型"萝莉控"
     至于啥叫 key-value 呢?用RDBMS的观点、一言以辟之:
     所谓 key:主键列
     所谓 value:其他列
     Redis 近几年很火、火到抬头不见、低头见
     抬头望国外:著名成人网站 youporn 采用 100% Redis 每天 1亿 PV、解决了无数屌丝 YY 问题
     低头思国内:新浪微博走的 Redis 之路、那叫一把眼泪一把辛酸呀
     

     千里之行、始于安装、Let's 谈谈一次简单的安装步骤

 

     ㈠ 安装 Redis

 

# wget https://redis.googlecode.com/files/redis-2.6.13.tar.gz  # tar -zxv -f redis-2.6.13.tar.gz  # cd redis-2.6.13  # cd src  # make   # mkdir /etc/redis/  # cp redis.conf /etc/redis/redis.conf  # echo "1" > /proc/sys/vm/overcommit_memory  # make install 


     ㈡ 设置 Redis 为后台守护进程

 

# cat /etc/redis/redis.conf | grep -in --color=auto 'daemonize'    16:# Note that Redis will write a pid file in /var/run/redis.pid when daemonized.  17:daemonize yes


     ㈢ 启动 Redis

 

# redis-server /etc/redis/redis.conf  # ps aux | grep redis    root     32111  0.0  0.0  31496  1500 ?        Ssl  16:38   0:00 redis-server /etc/redis/redis.conf  root     32122  0.0  0.0   5128   676 pts/2    R+   16:39   0:00 grep redis


     ㈣ 测试 Redis

 

# redis-cli    redis 127.0.0.1:6379> set name "David Lin"  OK  redis 127.0.0.1:6379> get name  "David Lin"  redis 127.0.0.1:6379> hset 192.168.1 David David@redis  (integer) 1  redis 127.0.0.1:6379> hget 192.168.1 David  "David@redis"  redis 127.0.0.1:6379> hset 192.168.1 root root@redis  (integer) 1  redis 127.0.0.1:6379> hget 192.168.1 root  "root@redis"  redis 127.0.0.1:6379> hkeys 192.168.1  1) "David"  2) "root"  redis 127.0.0.1:6379> hvals 192.168.1  1) "David@redis"  2) "root@redis"  redis 127.0.0.1:6379> hgetall 192.168.1  1) "David"  2) "David@redis"  3) "root"  4) "root@redis"  redis 127.0.0.1:6379> type name  string  redis 127.0.0.1:6379> type 192.168.1  hash  redis 127.0.0.1:6379> quit


     ㈤ 关闭 Redis 

 

# redis-cli shutdown


     ㈥ 可能的错误


        
        安装过程、或许您可能会有幸遇见:

 

zmalloc.o: In function `zmalloc_used_memory':  /root/redis/redis-2.6.13/src/zmalloc.c:223: undefined reference to `__sync_add_and_fetch_4'  collect2: ld 返回 1  make[1]: *** [redis-server] 错误 1  make[1]: Leaving directory `/root/redis/redis-2.6.13/src'  make: *** [all] 错误 2


     大概是内核有点老了、跟不上最新的Redis

 

[root@odd ~]# uname -r  2.6.18-308.el5xen


     解决方案:
     安装最新版的Tcl

# wget http://nchc.dl.sourceforge.net/project/tcl/Tcl/8.6.0/tcl8.6.0-src.tar.gz      # tar -zxv -f tcl8.6.0-src.tar.gz   # cd tcl8.6.0  # cd unix  # ./configure   # make  # make test  # make install 


     之后再做 2 件事:

     ① 在src/Makefile开头加 CFLAGS= -march=i686
     ② 编辑src/.make-settings里的OPT,改为OPT=-O2 -march=i686


     行文至此、接近尾声、安装过程并不复杂、至于测试的命令嘛、下回更精彩 +_+


     

来自:http://blog.csdn.net/linwaterbin/article/details/8996029